The Checkout Your Pixel Never Sees
Most tracking setups count the wrong thing. They count sessions, page views, phone calls. Sometimes they count form submissions. The confirmation page after a completed, paid order: that one often goes unrecorded.
DumpStars came to us with this exact problem. They were running Google and Meta ads, getting calls and leads, but had no ROAS data. Their checkout flow handed off to a payment page, and the tracking pixel on their site never saw what happened next. When a customer came out the other side with a confirmed booking, the ad platform had no record of it.
The gap is common and usually invisible. You might see your ad platform reporting 8 conversions for the week while your booking software shows 23 completed orders. The 15 that don't match aren't campaign failures. They're completions that happened outside the pixel's view.
Why the Gap Exists
Tracking pixels fire when a page loads. If your checkout redirects to a payment processor, the confirmation page is in that processor's domain. Your pixel never loaded on it. So the ad platform sees: click, product page, start of checkout, and then nothing.
The customer paid. You made money. The ad gets no credit.
This matters three ways:
Your optimization signal is wrong. The campaign that looks like it's converting well might be the one that drives traffic up to the payment step, then loses everyone. The campaign that looks weaker might be the one closing the jobs.
Retargeting pools are inaccurate. You can't suppress past customers from re-acquisition campaigns, because the platform doesn't know who bought. So you spend money showing ads to people who already paid.
ROAS calculations are fiction. If you're computing revenue per ad dollar against a dataset that misses half your conversions, every number downstream is wrong.
How We Fixed It
The fix is to fire the conversion event from where the confirmation actually happens, not from a page that might load afterward. For DumpStars, that meant a server-side event triggered by the booking confirmation webhook. When payment succeeds and the booking is created, a function fires and sends the event directly to the Google and Meta Conversions APIs with the actual order value attached.
The pixel on the site still runs. But the authoritative signal comes from the backend, where the transaction is real.
After that, two things changed right away: ROAS numbers became real, and the retargeting pools became accurate. DumpStars could finally see which campaigns were driving completed orders versus which ones were driving form fills that never converted. They could exclude past customers from acquisition campaigns.
The 2x return on ad spend wasn't from better creative or smarter bidding. The ads were largely the same. It came from finally knowing which ones were working.
That's a consistent pattern: the most impactful thing we can do for a business running ads isn't to improve the ads. It's to give them an accurate picture of what's actually happening.