How TikTok Events API, Snap Conversions API, and Google server-side tracking work


Server-side conversion tracking means sending conversion data directly from your server to the ad platform's API, bypassing the browser entirely. TikTok, Snap, and Google each have their own server-side API. They work differently, accept different data fields, and have different requirements for what makes a signal usable. This article covers how each one works and what your setup needs to do to get full value from them.
What server-side conversion tracking actually does
When someone buys on your site, a pixel fires in their browser. But browsers are unreliable. Ad blockers, iOS privacy changes, and cookie restrictions mean a meaningful share of conversions never reach the platform. Server-side tracking is the fix: your server sends the event data directly to the platform's API rather than depending on the buyer's browser to do it.
The result is a more complete signal. Platforms see conversions that would otherwise disappear, and their algorithms optimize on the full picture rather than a partial one. In ecommerce environments where browser-only tracking misses 30 to 40% of real conversions, server-side tracking is what keeps the algorithm working from accurate data.
How TikTok Events API works
TikTok Events API receives conversion events directly from your server. Required fields include the event type (for example, CompletePayment), event time, and at least one user identifier: a hashed email, phone number, or TikTok click ID (ttclid). The ttclid is what ties the server event to a specific TikTok ad click, so capturing it at the browser level and passing it through to the server is essential for accurate matching.
TikTok matches your event to a user in its system and attributes it to the right campaign. The quality of that match depends on how many identifiers you send. A server event with a hashed email and phone number will match more reliably than one with only an IP address.
One requirement worth noting: deduplication. If you run both a pixel and Events API (which you should), each event needs a unique event_id so TikTok does not count the same conversion twice.
How Snap Conversions API works
Snap Conversions API follows a similar pattern. It accepts server-side events and matches them to Snap users using hashed identifiers: email, phone number, mobile ad ID, or Snap's own click parameter (sc_click_id). The sc_click_id ties the server event to a Snap click and significantly improves match rate when included.
Snap's algorithm is particularly sensitive to timing. Events sent with significant delay carry less weight than those sent in near real time. The expectation is server events within a few minutes of the actual conversion, not batched at end of day.
Snap also accepts purchase value alongside the event. Sending revenue data lets its optimization algorithm weigh conversions by value rather than treating all purchases as equal, which directly affects how budget gets allocated.
How Google's server-side solution works
Google's server-side offering comes in two forms: Enhanced Conversions and server-side Google Tag Manager (sGTM).
Enhanced Conversions takes first-party data you already collect at checkout (email, phone, address) and sends it to Google in hashed form alongside the conversion. Google uses it to match the conversion back to a Google account and improve attribution accuracy. It layers onto your existing conversion setup without requiring a full server infrastructure, making it a practical starting point for most brands.
Server-side GTM moves your entire tag execution off the buyer's browser and onto a server container you control. All your conversion tags fire from the server rather than the buyer's device, reducing browser dependency across every channel at once. It requires a cloud-hosted server container and is the more complete solution for brands running meaningful spend across multiple platforms.
What each platform needs from your data
All three APIs share the same core requirement: as many user identifiers as possible. The more you send (email, phone, click ID, IP address) the higher the match rate. The industry average for browser-only tracking sits around 42%. With proper server-side implementation, match rates typically reach 70 to 90%. How that breaks down across TikTok, Snap, and Google is covered in match rate by platform.
Each platform has a click ID that dramatically improves matching when captured at the landing page and passed through to every server event:
- TikTok: ttclid (appended to the URL when someone clicks a TikTok ad)
- Snap: sc_click_id
- Google: gclid
Failing to capture these is one of the most common reasons server-side implementations underperform.
Why this matters for algorithm performance
Ad platform AI optimizes on the conversions it can see. When 30 to 40% of purchases are invisible, the algorithm works from a skewed dataset. It bids on the wrong audiences, scales the wrong signals, and misses buyers it should be finding. The damage compounds because each learning cycle builds on the previous one. How each platform responds differently to signal gaps is covered in how signal loss affects Meta, TikTok, Snap, and Google differently.
Server-side tracking fills in the missing data. Each platform's AI gets a more complete conversion set to learn from, which improves bidding and audience selection without changing a single campaign setting.
Journify connects to TikTok Events API, Snap Conversions API, and Google simultaneously, sending every conversion to every platform in real time from a single server-side integration. If you want to see where your current setup is losing signal, book a call with the team.




