Skip to Content
ConversionsDeduplication with native pixels

Deduplication with native pixels

An ad platform counts an event once when the browser and the server send it with the same event ID. Whence gives every event such an ID. The problem is another pixel that sends the same sale without that ID: the platform then sees two sales.

The shared event ID

  • For a step (product view, add to cart, checkout started, payment info, page view), the ID is the one Shopify gives the event in the browser. Whence’s server send uses it, and so does the browser pixel Whence runs.
  • For a purchase, the ID is built from your store and the order number, the same way on both sides.

Each platform receives it in the field its documentation names for deduplication, for example eventID on the Meta pixel, event_id on TikTok and Pinterest, client_dedup_id on the Snap Pixel, conversionId on the Reddit pixel and event_id on the Microsoft UET tag. Meta and Microsoft match on the ID and the event name together.

Why native apps cannot be deduplicated

The ad platforms’ own Shopify apps (Facebook & Instagram, TikTok, Pinterest, Snapchat, Google & YouTube) send their events with IDs that are not documented anywhere. Whence cannot reuse them. So for each platform, pick one of these:

  • Let Whence handle it. Turn off the app’s data sharing, remove the old pixel code, and turn on Whence runs the Meta pixel in the browser (or the same box for your platform) in the pixel’s settings.
  • Keep your own pixel. Then do not turn that platform on in Whence, or your sales are counted twice.

Google Ads, Taboola and Klaviyo have no browser pixel run by Whence. For Klaviyo, see the note in its form: if Klaviyo’s own Shopify integration already records “Placed Order”, turn off its order syncing or give Whence a different metric name.

How Whence spots a second pixel

Every pixel script leaves its own cookie in the visitor’s browser: _fbp for Meta, _ttp for TikTok, _scid for Snapchat, _epik for Pinterest, _rdt_uuid for Reddit, _uetvid for Microsoft. Whence measures how often that cookie is present on visits with consent over the last 7 days. With at least 20 such visits, and the cookie on at least 20% of them, it warns you:

  • “Meta: your sales may be counted twice” when you send to that platform from Whence and Whence does not run its browser pixel. Another pixel is clearly there.
  • “Meta: check for a second pixel” when Whence runs the browser pixel itself. The cookie may be Whence’s own, so Whence cannot tell whether a second pixel exists and asks you to check.

The warning shows at the top of the Conversions screen, one at a time (a platform refusing events comes first). Click Show me how to see the steps.

Remove the other pixel

Step 1: Meta

In Shopify admin, open Sales channels > Facebook & Instagram > Settings > Data sharing, and turn data sharing off. Remove any Meta pixel code from your theme or Google Tag Manager. Or turn on Whence runs the Meta pixel in the browser for this pixel, and remove the others.

Step 2: TikTok

In Shopify admin, open the TikTok app, then Settings > Data sharing, and disconnect the pixel. Remove any TikTok pixel code from your theme or Google Tag Manager.

Step 3: Snapchat and Pinterest

In the Snapchat Ads app for Shopify, disconnect the pixel. In the Pinterest app for Shopify, remove the Pinterest tag. Both apps also send server events. Remove any leftover code from your theme or Google Tag Manager.

Step 4: Reddit and Microsoft

Remove the Reddit pixel or the UET tag from your theme, Google Tag Manager or the app that installed it.

Step 5: Let Whence run the pixel in the browser

Then let Whence run that platform’s pixel in the browser, so browser events keep flowing with the shared ID.

Open Marketing > Conversions, click Details on the platform row, then Edit settings, and tick Whence also runs the Meta pixel in the browser (1), or the same box for your platform. Save.

Whence cannot list the apps or pixels installed on your store: Shopify does not show one app’s pixels to another. The cookie measure is the only signal. If you know a native pixel is running, remove it before you turn the platform on, without waiting for the warning.

Find the pixels already on your store

In the setup assistant, Find my pixels reads your store’s public home page and finds the ad pixels already installed. Each one is filled in for you: you paste its key. See Setup assistant.

Related: The browser pixel, Checkouts and funnels, where a third-party checkout’s own pixel is handled with a checkbox.

Last updated on