Pixel and tag checks

How to check your Snap Pixel is working

The Snap Pixel works if the browser loads scevent.min.js from sc-static.net and sends requests to tr.snapchat.com with your pixel ID and an event such as PAGE_VIEW. A PURCHASE event should carry price, currency and transaction_id, or Snapchat cannot report revenue or remove duplicates.

Skip the DevTools: the free scan loads your page in a real browser, accepts and rejects the cookie banner, and shows what the Snap Pixel actually sent.

At a glance

Tag script
sc-static.net/scevent.min.js
Event request
POST to tr.snapchat.com/… (sometimes tr-shadow.snapchat.com), with pid and ev
Pixel ID
A UUID, such as 1a2b3c4d-…
Click ID
ScCid
Events
Upper-case names: PAGE_VIEW, VIEW_CONTENT, ADD_CART, START_CHECKOUT, PURCHASE

Check it yourself in two minutes

  1. Open DevTools on the Network tab, filter on snapchat, accept the banner and load a page.
  2. Find the request to tr.snapchat.com and check pid matches the pixel ID in Snapchat Ads Manager (Events Manager) and ev is PAGE_VIEW.
  3. Complete a test order. The PURCHASE event should carry price, currency and transaction_id.
  4. The Snap Pixel Helper extension for Chrome shows each event and its parameters; Events Manager shows received events with a short delay.

Why the Snap Pixel breaks, and how to fix it

PURCHASE without price or currency

Snapchat calls the order value price, not value, which trips up integrations copied from other platforms. The call should be:

snaptr('track', 'PURCHASE', {
  price: 84.50,
  currency: 'EUR',
  transaction_id: '10045',
  item_ids: ['SKU-123']
});

Duplicate purchases

Without a transaction_id, a reloaded confirmation page is a second purchase. If you also send events through Snap's Conversions API, Snap counts a browser and a server event once when the pixel's client_dedup_id matches the server's event_id; for purchases it also pairs the pixel's transaction_id with the server's order_id. Check both sides send the same values.

Wrong event names

Snap's standard events are upper case with underscores. Purchase or purchase is treated as a custom event and does not count toward purchase optimisation. Compare the ev values in the Network tab with Snap's list of standard events.

The pixel loads before consent

The Snap Pixel has no consent API of its own, so it must load only after the visitor accepts marketing cookies, through your consent tool or a GTM consent condition. See Ad pixel fires before consent or after "reject".

ScCid lost in a redirect

Snapchat adds ScCid to ad clicks. The parameter name is case-sensitive, and some redirect rules or URL-cleaning scripts lower-case or drop it. Test it with the click ID redirect tester.

What the free scan checks

  • Snap Pixel loads, and sends at least a page view
  • Only one Snap ID, or a warning if there are more
  • Snap Pixel waits until the visitor accepts cookies
  • Snap Pixel stops after the visitor clicks "reject all"
  • No email addresses in plain text in Snap Pixel requests
  • The ScCid click ID survives your redirects

Server-side events (Conversions APIs, server-side tagging) are invisible to a public scan, so the report never marks them as working or broken.

Related

Sources

Updated 2026-10-27. Based on the platforms' public documentation and the requests their public tags make; menus and names change, so check the linked pages if a step looks different.

Other platforms