When a customer buys from your Shopify store on an iPhone, Apple's Intelligent Tracking Prevention (ITP) and App Tracking Transparency (ATT) framework interfere with the JavaScript your TikTok Pixel uses to fire a CompletePayment event. A share of purchase events is either not fired at all, or fired without the customer identifier needed to attribute the sale back to the ad that drove it: how large a share depends on how much of your traffic is iOS and how much of it consents.
The TikTok algorithm uses these conversion signals to decide which users to show your ads to and how much to bid. When it receives only part of your actual purchases, it builds a model of your converting customer that is systematically wrong. It undervalues audiences that actually convert but whose conversions are invisible, and wastes budget on users who simply look like the ones it can see.
We publish no average uplift figure. This callout previously carried one, attributed to TikTok with no URL and no date, which reads as sourced without being sourced. Any honest number is specific to your iOS traffic share, your consent rate and how complete your event payload already is. Get your own: record your attributed CompletePayment count for the fortnight before you deploy the Events API, and compare it with the fortnight after. That is a figure about your store, which is the only kind worth acting on.
Why TikTok's native CAPI has the same limitation as Meta
TikTok's own Shopify integration offers data sharing levels, and its higher levels send events server-side. For a store that only needs TikTok tracking, that may be enough, and it is the simplest route. Neither TikTok nor Shopify documents exactly what triggers each server event, so if you want a purchase signal that cannot depend on the browser, use the order webhook below. Use one server route for TikTok, not both, unless both send the same event ID.
The Make.com webhook approach takes the browser out of the purchase signal. The Shopify webhook fires from Shopify's server the moment payment is confirmed: completely independent of what happens in any browser. No pixel, no JavaScript, no browser dependency. The same webhook also powers CAPI Shield for Meta: one Shopify webhook trigger feeds TikTok and Meta at once.
If you also run Meta Ads, the same Make.com scenario can branch to Meta's Conversions API with a Router module, unless Shopify's Facebook & Instagram app already sends it. For Google Ads, turn on enhanced conversions in Shopify's Google & YouTube app instead. Each branch uses credits, so check your scenario history. Deploy CAPI Shield free →