Annonseplattformer og nettbutikker

Meta Conversions API (CAPI): en praktisk guide

En praktisk guide til Meta Conversions API: kjør det ved siden av pixelen med én event_id, send de riktige parameterne, test events og fiks vanlige feil.

·Oppdatert ·9 min lesetid·Av ROASaurus-teamet

Hovedpunkter
  • 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.

FeltHva det inneholder
event_nameHandlingen, for eksempel Purchase, AddToCart eller InitiateCheckout
event_timeNår det skjedde, som et Unix-tidsstempel i sekunder
event_idEn unik ID for denne eventen, brukt til å deduplisere den mot pixelen
action_sourceHvor det skjedde: website for butikkjøp
event_source_urlSide-URL-en der eventen skjedde
user_dataKundeinformasjon for matching: hashet e-post og telefon, IP-adresse, user agent, fbp og fbc
custom_dataDetaljer som value, currency og content_ids
Hver event i Conversions API har samme form: handlingen, kundeinformasjonen og detaljene.

En forkortet Purchase-event ser slik ut:

Conversions API: en Purchase-event (forkortet)
{
  "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.

Meta-pixel (nettleser)
  • 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
Conversions API (server)
  • 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
Pixelen bringer nettleser-identifikatorene, og serveren bringer bestillingen. Hver for seg mangler de en del av bildet.

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.

Meta-pixel: den samme Purchase med eventID
fbq('track', 'Purchase', { value: 74.00, currency: 'USD' }, { eventID: 'order-1042' });
Kunden betalerBestilling 1042, $74.00
Pixelen sender PurchaseeventID order-1042, fra nettleseren
Serveren sender Purchaseevent_id order-1042, fra bestillingen
Meta teller énSamme navn og ID innen 48 timer
Begge kopiene har samme eventnavn og ID, så Meta beholder ett kjøp i stedet for to.

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-1042 og 1042 er ulike ID-er.
  • Bruk nøyaktig samme eventnavn. Purchase og purchase er 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.

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.

ParameterEvents fra nettstedHva du sender
event_namePåkrevdEn standard event som Purchase, eller et eget eventnavn
event_timePåkrevdUnix-tid i sekunder, høyst 7 dager tilbake i tid
action_sourcePåkrevdwebsite for events i butikken din
event_source_urlPåkrevdSide-URL-en der eventen skjedde
client_user_agentPåkrevdNettleserstrengen til kunden, ikke den til serveren din
user_dataPåkrevdMinst én parameter for kundeinformasjon
event_idAnbefaltDen samme ID-en som pixelen bruker, for deduplisering
em, phAnbefaltE-post og telefon, normalisert og hashet med SHA-256
client_ip_addressAnbefaltKundens IP-adresse, ikke hashet
fbp, fbcAnbefaltCookiene med nettleser-ID og click id, ikke hashet
external_idAnbefaltDin egen kunde-ID, lik i nettleser- og server-events
value, currencySend med PurchaseBestillingsverdien og en valutakode på tre bokstaver
Meta lister action_source, event_source_url og client_user_agent som påkrevd for events fra nettsted som sendes gjennom Conversions API.

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.com og anna@example.com gir 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 fbc er fb.1., opprettelsestidspunktet i millisekunder, et punktum og fbclid fra URL-en til landingssiden. fbclid skiller 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.

  1. Åpne Test events

    Velg datasettet ditt (pixelen) i Events Manager og åpne fanen Test events. Kopier testkoden den viser.

  2. Legg koden til server-eventene dine

    Send den som test_event_code i forespørselen. I ROASaurus limer du den inn i feltet Test event code på Meta-pixelen.

  3. Legg inn en testbestilling

    Besøk butikken, legg et produkt i handlekurven og betal, slik at både pixelen og serveren sender en Purchase.

  4. Sammenlign de to kopiene

    Begge kopiene skal vise samme eventnavn, event-ID, verdi og valuta.

  5. 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.

  6. 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 pixelen
Purchase server order-1042 74.00 USDFra Conversions API
event_name + event_id matchTelles som ett kjøp
em ph fbp fbc client_ip_address client_user_agentKundeinformasjon på server-eventen
Hva en god testbestilling viser (eksempelverdier): to kopier, én ID og full kundeinformasjon.

Vanlige feil i Conversions API og hvordan du løser dem

Det du serSannsynlig årsakLøsning
Hele forespørselen mislykkes, og ingen events behandlesEn event i batchen har en event_time som er mer enn 7 dager gammelSend 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 haddeUlike event-ID-er, en pixel-event uten eventID, eller en annen app som sender den samme pixelenBruk én ID for begge kopiene og én server-avsender per pixel.
Lav matchkvalitet på server-eventsServeren din sender sin egen IP-adresse og user agentSend videre IP-adressen og user agent som er registrert fra kundens nettleser eller bestilling.
Få events med fbcfbclid ble ikke lagret på landingssiden, eller den ble endretLagre fbclid nøyaktig slik den kommer, og bygg fbc fra den.
E-post og telefon matcher ikkeVerdier hashet uten normalisering, eller sendt uten hashingTrim 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 tokenAccess tokenet kom fra en Facebook-innlogging, og innloggingstokener utløperKoble til på nytt, eller bruk et System User-token fra Business Manager, som du kan opprette uten utløpsdato.
De fleste problemer med Conversions API viser seg som avviste forespørsler, dobbelttelling eller lav matchkvalitet.

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 fbp og fbc som 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

  1. Meta for Developers: Handling Duplicate Pixel and Conversions API Events
  2. Meta for Developers: Server Event Parameters
  3. Meta for Developers: Customer Information Parameters
  4. Meta for Developers: Using the API - Conversions API
  5. Meta for Developers: ClickID and the fbp and fbc Parameters

I ROASaurus

Les videre

Annonseplattformer og nettbutikkerKonverteringstracking ved betaling ved levering og eksterne checkouterKonverteringstracking ved betaling ved levering: hvorfor pixler går glipp av bestillinger med betaling ved levering og fra eksterne checkouter, når du bør sende kjøpet, og hvordan du håndterer avviste bestillinger.Annonseplattformer og nettbutikkerKonverteringstracking for CCV Shop: en oppsettguideKonverteringstracking for CCV Shop: send betalte bestillinger til Meta og TikTok med en signert webhook, koble dem til annonseklikk, sett opp, test og håndter sene betalinger.Annonseplattformer og nettbutikkerGoogle Ads enhanced conversions på ShopifyEnhanced conversions legger hashede kundedata til Google Ads-kjøp på Shopify. Slik fungerer de, hvordan de skiller seg fra offline-importer, og oppsettet.
Vanlige spørsmål

Spørsmål, besvart

Trenger jeg både Meta-pixelen og Conversions API?

Meta anbefaler å bruke begge. Pixelen legger til nettleserdata som fbp-cookien, og Conversions API leverer events nettleseren går glipp av. Gi begge kopiene samme eventnavn og event-ID, så Meta teller hver event én gang.

Hvor lenge venter Meta med å deduplisere en nettleser-event og en server-event?

Meta dedupliserer en nettleser-event og en server-event med samme eventnavn og event-ID når de kommer inn innen 48 timer av hverandre. En kopi som kommer senere, telles på nytt.

Krever Conversions API at kundedata hashes?

Ja, for kontaktdata. Felt for e-post, telefon, navn og adresse må normaliseres og hashes med SHA-256. IP-adressen, user agent, fbp og fbc sendes uten hashing.

Hvilke felt er påkrevd for en event fra nettsted?

Hver event trenger event_name, event_time, action_source og minst én parameter for kundeinformasjon. For events fra nettsted krever Meta også event_source_url og client_user_agent.

Kan jeg sende gamle bestillinger gjennom Conversions API?

Bare nylige. event_time kan være høyst 7 dager tilbake i tid, og hvis én event i en forespørsel er eldre, avviser Meta hele forespørselen.

Hvert salg, sporet til annonsen som tjente det inn

Server-side tracking, fortjeneste og livstidsverdi i én app. 14 dagers gratis prøveperiode, uten kredittkort.

Start den gratis prøveperioden din →