Laadt uw Snap Pixel maar verschijnt PURCHASE nooit in Events Manager, dan is de oorzaak bijna altijd een van zes dingen: een eventnaam in kleine letters, een ontbrekende transaction_id, een pixel die ontbreekt op de echte bevestigingspagina, een externe betaalomleiding die de sessie breekt, een checkout op één pagina die de pixel opnieuw initialiseert, of events die worden weggededupliceerd tegen een Conversions API-feed.
Loop ze in deze volgorde door. De eerste drie verklaren het meeste van wat ik vind.
Over Snapchat-tracking wordt veel minder geschreven dan over Meta of Google, dus als het kapotgaat, staat u er grotendeels alleen voor. Bestaande artikelen komen vaak van bedrijven die een trackingproduct verkopen en stoppen bij „installeer onze app”. Dit is de volgorde die ik echt doorloop, in de volgorde waarin ik het doe, en waarom in die volgorde.
Eerst: bevestig dat het event echt niet aankomt
Stel vast of het event ontbreekt of alleen vertraagd is voordat u iets verandert. Twee controles, zestig seconden.
Controleer het netwerk, niet het dashboard. Open de bevestigingspagina in Chrome, open DevTools (F12), ga naar de tab Network en filter op tr.snapchat.com. Doe een echte testaankoop. Ziet u een verzoek vertrekken met uw pixel-ID en de eventnaam, dan doet de browser zijn werk en zit het probleem verderop: rapportage, deduplicatie of attributie. Vertrekt er niets, dan zit het probleem op de pagina.
De browserextensie Snap Pixel Helper doet hetzelfde met een vriendelijkere interface en vertelt u ook of de pixel geïnstalleerd is. Ik gebruik de Network-tab omdat die de exacte payload toont, en daar zit meestal het antwoord.
De rapportage in Events Manager is niet direct. Wacht een paar uur en kijk opnieuw voordat u concludeert dat een event ontbreekt. Ik heb mensen een werkende checkout zien herschrijven omdat ze negentig seconden na een testbestelling naar een dashboard keken.
De zes oorzaken, op volgorde
De eventnaam staat in kleine letters
De standaardevents van Snapchat staan in hoofdletters: PURCHASE, ADD_CART, PAGE_VIEW, START_CHECKOUT. Stuurt u purchase, dan wordt dat niet herkend als standaardevent. Het verraderlijke is dat het toch kan afgaan en ergens kan verschijnen: het wordt alleen niet behandeld als de standaardconversie, dus campagne-optimalisatie en rapportage gedragen zich alsof er niets gebeurde.
Dit is oorzaak nummer één, omdat het precies het symptoom geeft dat mensen beschrijven, „de pixel gaat af maar Events Manager toont niets”, en omdat het kopiëren van een Meta-implementatie zo voor de hand ligt. Meta gebruikt Purchase. Snapchat niet.
{
event: "Purchase",
price: 24.00,
currency: "USD"
}
{
event: "PURCHASE",
price: 24.00,
currency: "USD",
transaction_id: "1047"
}
PURCHASE zijn. Hoofdletters zijn hier geen cosmetisch detail.Er wordt geen transaction_id meegestuurd
Zonder transaction_id kan Snapchat een echte tweede bestelling niet onderscheiden van dezelfde klant die de bevestigingspagina ververst. Snap documenteert een deduplicatievenster van 30 dagen op transaction_id, tegenover 48 uur op client_dedup_id.
De fout werkt in beide richtingen, en daarom staat hij zo hoog. Laat u hem weg, dan blazen verversingen het aantal aankopen op. Stuurt u een waarde die niet echt uniek is per bestelling (een winkelwagen-, checkout- of sessie-ID), dan worden legitieme bestellingen samengevoegd en verdwijnen ze. Dat tweede geval ziet er precies uit als „mijn events gaan niet af”.
transaction_id tussen de twee verschilt en overeenkomt met het bestelnummer dat uw webshop echt toekent.De pixel staat niet op de pagina die de bestelling echt bevestigt
Bijna iedereen installeert de pixel sitebreed en neemt aan dat de bevestigingspagina hem overneemt. Vaak is dat niet zo. Gehoste checkouts, bestelstatuspagina's en upsellflows na de aankoop worden vaak buiten het thema of template opgebouwd dat de trackingcode bevat.
Iets om specifiek op te letten: gebruikt u een upsell na de aankoop, dan is de pagina waar de klant direct na het betalen terechtkomt misschien niet degene die u als bedankpagina beschouwt.
Een externe betaalomleiding breekt de sessie
Als de checkout overgaat naar een externe gateway en de klant terugstuurt naar een pagina met de bestelbevestiging, kan dat rondje de browsersessie breken waarvan de pixel afhangt. De aankoop wordt afgerond, de klant ziet de bevestiging, en het event komt nooit aan bij Snapchat, of komt aan zonder de identificatoren die nodig zijn om het toe te schrijven.
Hier is een opzet met alleen de browser niet meer genoeg. Server-side tracking via de Conversions API is de duurzame oplossing, omdat het event vanaf uw server vertrekt en nooit een omleiding hoeft te overleven.
Een checkout op één pagina initialiseert de pixel opnieuw
In single-page-applicaties wordt de pixelstatus telkens gereset als de initialisatie bij elke virtuele paginaweergave opnieuw draait. Gegevens voor geavanceerde matching die eerder in het proces zijn verzameld, gaan verloren, en het aankoopevent komt aan zonder de identificatoren die het bruikbaar maken: mager, slecht gematcht en soms niet toegeschreven.
Het event gaat af. Het draagt alleen niet mee wat het nodig heeft, en daarom wordt het makkelijk voor „werkend” aangezien.
De deduplicatie slokt het event op
Gebruikt u de pixel en de Conversions API (wat u zou moeten doen), dan dedupliceert Snapchat via client_dedup_id (venster van 48 uur) of transaction_id (30 dagen). Twee events met dezelfde identificator worden bewust één keer geteld.
Het wordt een probleem als browser en server het oneens zijn over wat die identificator is. Is de koppeling fout, dan telt u alles dubbel of verliest u ongemerkt één kant. Volgens Snap horen andere events dan aankopen te matchen op client_dedup_id en aankoopevents op transaction_id, en vooral: de waarde moet gelijk zijn op elk pad dat dat event verstuurt.
transaction_id is gededupliceerd, blijft 30 dagen beschermd. Op client_dedup_id verloopt de bescherming na 48 uur, en daarom koppelt Snap aankopen aan transaction_id en al het andere aan client_dedup_id.Waar mijn cijfers vandaan komen
Ik heb geen grote steekproef van Snapchat-klanten en ik ga niet doen alsof. Wat ik wel heb, is één webshop die ik van begin tot eind heb gerund, mijn eigen, waarin de tracking werkte. Dat is de enige reden dat ik kan zeggen wat een gezonde Snapchat-opzet oplevert.
AlphaMart: mijn eigen webshop, geen klant
- Advertentie-uitgaven
- $1,452
- Aankopen
- 1,034
- Kosten per aankoop
- $1.40
- ROAS
- 5.69×
Belangrijke context, anders vleien deze cijfers me: 5,69× op $1.452 is ongeveer $8.262 aan gemeten omzet over 1.034 bestellingen, een gemiddelde bestelwaarde van ongeveer $8. Het was een goedkoop product. Kosten per aankoop van $1,40 zijn een heel ander resultaat bij een gemiddelde bestelling van $8 dan bij een van $80, en wie een CPA noemt zonder de gemiddelde bestelwaarde ernaast, laat u maar de helft van het cijfer zien.
De data gaan over een periode die in mei 2024 eindigde. Ik vermeld de datum in plaats van ze als actueel te presenteren.
Wat die 1.034 aankopen belangrijk maakt voor dit artikel, is niet de ROAS. Het is dat een webshop die bij dat volume een schoon PURCHASE-event verstuurt, met de juiste naam en goed gededupliceerd, u een betrouwbare referentie geeft van hoe „werkend” eruitziet, en het duidelijk maakt wanneer iets is gestopt.
Wat ik u niet kan vertellen
Twee eerlijke beperkingen, want een artikel dat er geen toegeeft, verbergt er meestal een paar.
Ik kan u geen frequentierangorde geven op basis van een grote steekproef. De volgorde hierboven weerspiegelt een klein aantal accounts plus wat de soorten fouten logisch impliceren: een eventnaam in kleine letters breekt de rapportage altijd, dus die staat bovenaan, ongeacht hoe vaak ik hem zelf heb gezien. Zie de rangorde als een verstandige zoekvolgorde, niet als statistiek.
De interface van Snapchat verandert. Menupaden raken snel verouderd, en daarom gaan de controles hierboven uit van het netwerkverzoek en de payload in plaats van waar een knop vandaag staat. De payload is wat echt waar is.
Kort samengevat
- Open de Network-tab, filter op
tr.snapchat.comen plaats een testbestelling. - Controleer of de eventnaam precies
PURCHASEis, in hoofdletters. - Controleer of
transaction_idaanwezig is en uniek per bestelling. - Controleer of de pixel staat op de pagina waar de klant echt terechtkomt.
- Verlaat de checkout uw domein, plan dan de Conversions API in.
- Gebruikt u pixel en CAPI, controleer dan of de deduplicatie-identificator aan beide kanten precies gelijk is.
Heeft u alle zes controles doorstaan en komt het event nog steeds niet aan, dan is het probleem meestal niet de pixel: de pagina die u test is niet de pagina die uw klanten bereiken. Ga terug en doe een echte aankoop met echt geld, op een telefoon, vanaf een klik op een advertentie. Testbestellingen via een staginglink slaan precies de delen over die kapotgaan.
Weet u niet welke van de zes het is?
Stuur me de URL van uw webshop en ik vertel u wat uw tracking doet. Om te beginnen is geen accounttoegang nodig, alleen de link.
Vraag een gratis trackingaudit aan →