- Meta Conversions API sender events som Purchase fra serveren din, så de når Meta selv når nettleserpixelen er blokkert.
- Kjør den ved siden av pixelen og gi begge kopiene samme eventnavn og event_id; da teller Meta eventen én gang hvis begge kommer fram innen 48 timer.
- Events fra nettsted trenger action_source, event_source_url og kundens user agent; hashet e-post og telefon, IP-adresse, fbp og fbc avgjør hvor godt Meta kan matche dem.
- Test med fanen Test events i Events Manager, og fjern deretter testkoden, fordi testevents ikke blir forkastet.
- De fleste problemer kommer fra event-ID-er som ikke stemmer overens, serverens egen IP-adresse, en fbclid som er gått tapt eller kontaktdata som ble hashet uten normalisering.
Meta Conversions API (CAPI) lar serveren din sende events som Purchase rett til Meta. Meta-pixelen sender de samme eventene fra kundens nettleser. CAPI sender dem fra serveren din, så de likevel kommer fram når en annonseblokkerer stopper pixelen, en cookie er borte eller takkesiden aldri lastes.
Denne guiden tar for seg hva en event i Conversions API inneholder, hvordan du kjører den ved siden av pixelen med én event_id, hvilke parametere Meta krever og anbefaler, hvordan du tester med Test events, og feilene som oppstår oftest.
Hva er Meta Conversions API?
Conversions API er en del av Metas Graph API. Serveren din sender en HTTPS POST-forespørsel til graph.facebook.com/VERSION/PIXEL_ID/events med et access token og en data-liste med opptil 1,000 events. Hver event beskriver én handling, for eksempel et kjøp, i tre deler: hva som skjedde, hvem som gjorde det, og detaljene.
| Felt | Hva det inneholder |
|---|---|
event_name | Handlingen, for eksempel Purchase, AddToCart eller InitiateCheckout |
event_time | Når det skjedde, som et Unix-tidsstempel i sekunder |
event_id | En unik ID for denne eventen, brukt til å deduplisere den mot pixelen |
action_source | Hvor det skjedde: website for butikkjøp |
event_source_url | Side-URL-en der eventen skjedde |
user_data | Kundeinformasjon for matching: hashet e-post og telefon, IP-adresse, user agent, fbp og fbc |
custom_data | Detaljer som value, currency og content_ids |
En forkortet Purchase-event ser slik ut:
{
"data": [{
"event_name": "Purchase",
"event_time": 1792929600,
"event_id": "order-1042",
"action_source": "website",
"event_source_url": "https://yourstore.com/checkouts/thank-you",
"user_data": {
"em": ["<SHA-256 of the normalized email>"],
"ph": ["<SHA-256 of the normalized phone>"],
"client_ip_address": "203.0.113.24",
"client_user_agent": "Mozilla/5.0 (iPhone; ...)",
"fbp": "fb.1.1792928400000.1234567890",
"fbc": "fb.1.1792928400000.AbCdEf123"
},
"custom_data": { "value": 74.00, "currency": "USD" }
}]
}Kontaktfelt som e-post og telefon normaliseres og hashes med SHA-256 før de forlater serveren din. IP-adressen, user agent, fbp og fbc sendes som de er.
Hvorfor kjøre Conversions API ved siden av pixelen?
Meta anbefaler å kjøre Conversions API sammen med pixelen og sende de samme eventene gjennom begge. Hver side ser noe den andre ikke ser, og sammen gir de Meta mer komplette data.
- Setter _fbp-cookien og lagrer fbclid fra et annonseklikk i _fbc-cookien
- Ser siden og nettleseren mens besøket pågår
- Går tapt når nettleseren blokkerer den eller siden ikke lastes
- Sender den betalte bestillingen fra butikkdataene dine
- Kan legge til hashet e-post, telefon og adresse fra bestillingen
- Er ikke avhengig av nettleseren, så annonseblokkerere stopper den ikke
Prisen for å kjøre begge er at Meta nå mottar to kopier av hver event. Neste avsnitt viser hvordan Meta beholder bare én.
Hvordan fungerer deduplisering med én event_id?
Meta behandler en nettleser-event og en server-event som den samme eventen når to ting stemmer overens: eventnavnet og event-ID-en. I pixelen legges ID-en i alternativet eventID. I Conversions API legges den samme verdien i event_id.
fbq('track', 'Purchase', { value: 74.00, currency: 'USD' }, { eventID: 'order-1042' });Meta dedupliserer et samsvarende par bare når de to kopiene kommer fram innen 48 timer av hverandre. Noen regler får dette til å fungere i praksis:
- Lag ID-en én gang. Bygg den fra noe begge sider kjenner, for eksempel bestillingsnummeret, og send den videre til både nettleseren og serveren. To systemer som hver lager sin egen ID, vil ikke matche.
- Bruk ett format.
order-1042og1042er ulike ID-er. - Bruk nøyaktig samme eventnavn.
Purchaseogpurchaseer ulike events. - Send server-eventen raskt. En server-event som kommer mer enn 48 timer etter nettleser-eventen, telles en gang til.
Meta beskriver også en andre metode som parer events etter fbp eller external_id. Meta sier at den vanligvis bare fungerer når nettleser-eventen kommer før server-eventen, så en felles event_id er det mest pålitelige valget. Hvis Meta fortsatt rapporterer flere kjøp enn butikken din hadde, lister guiden vår om duplikate kjøpsevents opp de vanligste årsakene.
Hvilke parametere er påkrevd, og hvilke er anbefalt?
De påkrevde feltene gjør en event gyldig. De anbefalte feltene avgjør hvor mange av eventene dine Meta kan matche til en person, og bare matchede events kan brukes til attribusjon og annonseleveranse.
| Parameter | Events fra nettsted | Hva du sender |
|---|---|---|
event_name | Påkrevd | En standard event som Purchase, eller et eget eventnavn |
event_time | Påkrevd | Unix-tid i sekunder, høyst 7 dager tilbake i tid |
action_source | Påkrevd | website for events i butikken din |
event_source_url | Påkrevd | Side-URL-en der eventen skjedde |
client_user_agent | Påkrevd | Nettleserstrengen til kunden, ikke den til serveren din |
user_data | Påkrevd | Minst én parameter for kundeinformasjon |
event_id | Anbefalt | Den samme ID-en som pixelen bruker, for deduplisering |
em, ph | Anbefalt | E-post og telefon, normalisert og hashet med SHA-256 |
client_ip_address | Anbefalt | Kundens IP-adresse, ikke hashet |
fbp, fbc | Anbefalt | Cookiene med nettleser-ID og click id, ikke hashet |
external_id | Anbefalt | Din egen kunde-ID, lik i nettleser- og server-events |
value, currency | Send med Purchase | Bestillingsverdien og en valutakode på tre bokstaver |
Tre detaljer forårsaker de fleste problemene:
- Normaliser før du hasher. Meta forventer e-post trimmet og med små bokstaver, og telefonnumre som sifre med landskode.
Anna@Example.comoganna@example.comgir ulike hasher, og bare den andre kan matche. - Ikke hash nettleser-identifikatorer.
fbp,fbc, IP-adressen og user agent sendes inn som vanlige verdier. - Behold click id-en nøyaktig slik den er. Verdien
fbcerfb.1., opprettelsestidspunktet i millisekunder, et punktum ogfbclidfra URL-en til landingssiden.fbclidskiller mellom store og små bokstaver. Lagre den når den besøkende lander, fordi den ikke lenger er i URL-en i checkout.
Hvor godt disse feltene matcher, er det Metas Event Match Quality-score måler. Guiden vår om Event Match Quality tar for seg hver parameter, hashereglene og scoren du bør sikte mot.
Hvordan tester du events med Test events?
Events Manager har en fane Test events som viser events etter hvert som de kommer inn. Bruk den før du stoler på et nytt oppsett.
- Åpne Test events
Velg datasettet ditt (pixelen) i Events Manager og åpne fanen Test events. Kopier testkoden den viser.
- Legg koden til server-eventene dine
Send den som
test_event_codei forespørselen. I ROASaurus limer du den inn i feltet Test event code på Meta-pixelen. - Legg inn en testbestilling
Besøk butikken, legg et produkt i handlekurven og betal, slik at både pixelen og serveren sender en Purchase.
- Sammenlign de to kopiene
Begge kopiene skal vise samme eventnavn, event-ID, verdi og valuta.
- Sjekk kundeinformasjonen
Server-eventen skal ha med hashet e-post og telefon, IP-adressen, user agent og fbp, pluss fbc hvis besøket startet med et annonseklikk.
- Fjern testkoden
Meta sier at feltet bare er for testing, så fjern det før du stoler på eventene.
Purchase browser order-1042 74.00 USDFra pixelenPurchase server order-1042 74.00 USDFra Conversions APIevent_name + event_id matchTelles som ett kjøpem ph fbp fbc client_ip_address client_user_agentKundeinformasjon på server-eventenVanlige feil i Conversions API og hvordan du løser dem
| Det du ser | Sannsynlig årsak | Løsning |
|---|---|---|
| Hele forespørselen mislykkes, og ingen events behandles | En event i batchen har en event_time som er mer enn 7 dager gammel | Send events når de skjer. Rett opp eller dropp gamle events før du prøver på nytt. |
| Meta rapporterer flere kjøp enn butikken din hadde | Ulike event-ID-er, en pixel-event uten eventID, eller en annen app som sender den samme pixelen | Bruk én ID for begge kopiene og én server-avsender per pixel. |
| Lav matchkvalitet på server-events | Serveren din sender sin egen IP-adresse og user agent | Send videre IP-adressen og user agent som er registrert fra kundens nettleser eller bestilling. |
| Få events med fbc | fbclid ble ikke lagret på landingssiden, eller den ble endret | Lagre fbclid nøyaktig slik den kommer, og bygg fbc fra den. |
| E-post og telefon matcher ikke | Verdier hashet uten normalisering, eller sendt uten hashing | Trim e-posten og bruk små bokstaver, behold sifrene og landskoden i telefonnummeret, og hash deretter med SHA-256. |
| Forespørsler mislykkes med en feil om utløpt token | Access tokenet kom fra en Facebook-innlogging, og innloggingstokener utløper | Koble til på nytt, eller bruk et System User-token fra Business Manager, som du kan opprette uten utløpsdato. |
Etter noen dager med live trafikk åpner du fanen Diagnostics i Events Manager. Meta lister opp problemer der, med anbefalinger for hvordan du løser dem. Sammenlign deretter det daglige antallet Purchase i Events Manager med de betalte bestillingene i butikken din for de samme dagene. Hvis Meta er tydelig høyere, lister hjelpesiden vår om å unngå dobbelttelling opp innstillingene du bør sjekke.
Slik setter du opp Conversions API med ROASaurus
ROASaurus sender Conversions API-events fra bestillingsdataene i butikken din, så du slipper å bygge serversiden selv. Under Tracking & platforms klikker du på Connect with Facebook og velger annonsekontoen og pixelen din, eller limer inn pixel-ID-en (datasettet) og et Conversions API-token. Oppsettguiden for Meta går gjennom begge alternativene, og siden om Meta-integrasjonen lister alle feltene som sendes.
- Én ID på begge sider. Nettleser- og server-events deler én event-ID. For et kjøp er det
order-etterfulgt av bestillings-ID-en. - En kort pause før kjøpet. Server-eventen Purchase venter en kort stund etter at bestillingen kommer inn, slik at nettleserens kjøpsevent kan kobles på først. IP-adressen, user agent og side-URL-en fra den går da ut med server-eventen, sammen med
fbpogfbcsom er lagret for den besøkende. - Kundeinformasjon fra bestillingen. E-post, telefon, navn og adresse normaliseres og hashes med SHA-256. Nettbutikkens kunde-ID og besøks-ID-en fra ROASaurus sendes hashet som
external_id. - Events Meta ikke kan matche, hoppes over. En event uten
fbc,fbp, e-post, telefon eller IP-adresse sendes ikke.
Event log viser hver serverlevering med forespørselen og Metas svar. Hvis marginene dine varierer mye mellom produkter, kan du også sende en fortjenesteverdi ved siden av hvert kjøp: guiden vår om Meta value optimization for fortjeneste forklarer hvordan. For hele dataveien fra klikk til bestilling, se server-side tracking.
Kilder
- Meta for Developers: Handling Duplicate Pixel and Conversions API Events
- Meta for Developers: Server Event Parameters
- Meta for Developers: Customer Information Parameters
- Meta for Developers: Using the API - Conversions API
- Meta for Developers: ClickID and the fbp and fbc Parameters