Why the Pixel Isn't Enough

TikTok's browser pixel faces the same limits as every pixel: ad blockers, iOS privacy settings, in-app browsers and buyers who come back later. Each missed purchase is a lesson TikTok's algorithm never learns.
The Events API sends events from a server instead, so they arrive even when the browser blocks the pixel. TikTok recommends using both together.
Pixel vs Events API
| Pixel | Events API | |
|---|---|---|
| Runs in | The visitor's browser | Your server or a tracking tool |
| Affected by blockers | Yes | No |
| Setup effort | Low | Medium, or low through a partner |
| Best for | Browsing events and audiences | Purchases and leads you must not miss |
Setup Routes
Platform Integration
Shopify and other platforms offer TikTok connections that handle both pixel and API.
Google Tag Manager
TikTok Events Manager's GTM flow sets up both and configures event_id automatically.
Direct API
Developers send events with an Events API access token from Events Manager.
A Tracking Tool
Tools like ClickMagick send your tracked conversions to TikTok for you.
Deduplication: The Part People Get Wrong
If the pixel and the Events API both report the same purchase, TikTok needs to know it's one sale, not two. That's what event_id is for. Both copies must carry the same event name and the same event_id, and TikTok merges them within its deduplication window, up to 48 hours according to its help centre.
Build event_id from something unique to the event, such as the order number. If IDs don't match, your reported purchases roughly double and your cost per purchase looks artificially low.
No overlap, no deduplication needed. If the pixel only sends browsing events and the API only sends purchases, there's nothing to merge.
Testing
- Use Test EventsIn TikTok Events Manager, confirm both browser and server events arrive.
- Check event_idBoth copies of a purchase should show the same value.
- Compare with real ordersA week later, TikTok purchases shouldn't exceed your actual orders from TikTok traffic.
- Watch for duplicate warningsEvents Manager flags potential duplicates.
Common Mistakes

- Different event_id formats in the pixel and API.
- Different event names, such as Purchase vs CompletePayment, for the same action.
- Sending purchases from two separate tools without deduplication.
- Not sending customer data, which lowers match quality.
The ClickMagick Route
ClickMagick's Audience Optimization sends the conversions it tracks to TikTok in real time, using a TikTok pixel you set up for that purpose. Because ClickMagick tracks first-party and across devices, it records conversions the browser pixel misses. See ClickMagick for TikTok ads.
Feed TikTok the purchases its pixel can't see.
Try ClickMagick FreeFrequently Asked Questions
What is the TikTok Events API?
It's TikTok's server-to-server connection for sending website events, such as purchases and leads, directly to TikTok instead of relying only on the browser pixel.
Should I use the Events API instead of the pixel?
Use both. TikTok recommends running the pixel and the Events API together to maximise event coverage, with deduplication so each conversion is counted once.
How does TikTok deduplicate events?
Both the pixel and Events API copies must share the same event name and the same event_id. TikTok then merges overlapping events within its deduplication window, which its help centre describes as up to 48 hours.
Do I need deduplication if I send different events?
No. If the pixel sends early-funnel events and the Events API sends only purchases, there's no overlap and no deduplication is needed.
How do I check it's working?
Use Test Events in TikTok Events Manager, then check that purchase counts roughly match your real orders rather than doubling.