Paid Media & Performance
Conversion tracking and server-side tagging
GTM, GA4, Google Ads and Meta wired properly — deduplicated, consent-aware, and proven with a real order before anyone calls it finished.
- From
- $400–$3,500
- Typical time
- 1–3 weeks
- Usually bought by
- Any advertiser
What this actually solves
The obvious reason to fix tracking is reporting — knowing where the money went. That is the smaller half. The larger half is that on Google and Meta, your conversion data is not a report. It is the instruction set the machine learning runs on. The platform shows your ads to people it believes will convert, and everything it believes came from the conversions you sent it.
Follow that through and the consequences are unpleasant. If a Purchase event never arrives, the system optimises towards the last signal it did receive — people who reach the cart and leave — and it will do that job extremely well, for months, on your budget. If a thank-you page view is set as the primary conversion and that page can be refreshed, it learns to find people who refresh pages. The machine is not broken in either case. It was given the wrong destination and drove there efficiently.
This is also the one service in paid media where the deliverable is binary and provable. Either the event arrives in the destination platform with the right value attached, or it does not. There is no interpretation, no attribution argument, and no waiting a quarter to find out.
What we do, and in what order
- Audit what is actually firing. Tag Assistant and Meta Pixel Helper on the live site, the last twenty-eight days of events in GA4 and Meta Events Manager, the conversion actions listed in Google Ads with their primary and secondary status, and a look through the theme for hard-coded legacy tags that nobody remembers adding. Half a day to a day.
- Write the tracking plan before touching a container. One row per event — the name, using GA4's standard naming rather than invented ones; the exact trigger; the parameters that travel with it, including value, currency, transaction ID and items; and which destinations it feeds. You approve this table first, because arguing about it on paper costs nothing and arguing about it in a live container costs a weekend. One to two days.
- Build it in GTM. Tags, triggers and variables for the plan; GA4 events and key events configured; Google Ads conversion actions created with primary and secondary set deliberately rather than by default; enhanced conversions turned on, since it is free and recovers matches that would otherwise be lost. Two to four days.
- Wire Meta pixel and CAPI together, with deduplication. Both paths send the same event, and both must carry the same event ID so Meta can recognise them as one. Getting this wrong is not a small reporting wobble — it doubles every sale in the platform's view and quietly doubles the reported ROAS. One to two days.
- Add the server-side container, where it is in scope. A container hosted on Stape.io or equivalent, a subdomain pointed at it, and the events routed through your own server rather than out of the browser. This is the part that needs DNS access and a little patience. Two to four days.
- Handle consent, if any of your traffic is European. Consent Mode v2 configured against your banner so that tags respond to the answer rather than ignoring it. This is your legal exposure and our technical responsibility, and it is not optional for EU or UK traffic. Half a day to a day.
- Prove it with a real transaction, then cut over. GTM Preview for the whole journey first, then a genuine order through a low-value test product, then confirmation in Google Ads and Meta Events Manager that the conversion landed with the correct value. The legacy tags are removed in the same session the new ones go live, so there is never a window where both are counting. Half a day.
- Document it. A short written record of every tag, trigger and event, and where each one reports to. Half a day.
What moves the price
The range is $400–$3,500 and three things decide where you land.
Whether server-side is included. A clean browser-side setup — GTM, GA4 and two ad platforms — sits at the lower end. Adding a server-side container, a subdomain, CAPI with deduplication and consent mode is a materially larger job and sits at the top.
What the site is built on. Shopify and WordPress have known paths and mature tooling. A custom build usually means your developer's time is required as well as ours, and their availability, not the tagging, becomes the schedule.
How many destinations and events. Two platforms and a purchase event is one plan. Four platforms, a lead funnel with several stages, offline conversion imports and a CRM to reconcile against is another, and each destination has its own naming and its own quirks.
What usually goes wrong
It gets published without ever being tested. Tags are built, the Publish button is pressed, and the assumption is that it works. The correct sequence takes about two hours - walk the journey in Preview mode, place a real order, then see that conversion arrive in each destination platform with your own eyes. Skipping those two hours is how accounts run for months on events that never fire.
The new tag goes on before the old one comes off. Shopify's native Meta integration keeps running while a pixel is added through GTM, and every sale is now counted twice. Reported ROAS doubles, you are delighted, and the bank balance does not move. The give-away is simple — compare platform sales against store sales, and if the ratio is close to two, this is what you are looking at.
A convenient proxy is set as the primary conversion. A thank-you page view that fires again on every refresh, or a click on a phone number counted as a call that the person may never actually place. It is easy to configure and it teaches the algorithm to buy the proxy. Every conversion action gets interrogated for whether it represents something that genuinely happened in the business, and the ones that do not get demoted to secondary where they can be observed without steering the spend.
See where the site stands before you brief anyone.
If the site is already live, start from what it scores rather than from a guess. The audit reports what it checked, what it found, and — the part most tools leave out — what it could not check, and why.
Questions people ask before they commit.
- My developer says tracking is already installed. Why would I need this?
- Installed and working are different states. The usual finding is a container that fires PageView reliably and nothing else, or a Purchase event that has not arrived in months while spend continued. We check the last twenty-eight days of events in each platform before quoting, so the answer is evidence rather than opinion.
- Meta reports far more sales than my store does. Is Meta lying?
- No — it is counting differently. View-through conversions, a seven-day click window, people who saw an ad on a phone and bought on a laptop, and pixel and CAPI both claiming the same sale without deduplication all inflate the platform number. Some of that is legitimate and some is a real fault. Part of this work is separating the two and giving you one number that agrees with your bank.
- Do I need server-side tagging or is the standard setup enough?
- Most advertisers should start with the standard setup, get it right, and add server-side later. It earns its keep on serious e-commerce volume, where browser restrictions and blockers are removing enough events to distort what the algorithm learns. It needs a subdomain and a little DNS work, which is why it sits at the top of the price range.
- Will this break my site?
- The risky moment is the switchover, not the build, which is why the old tags come off in a planned order on the same day the new ones go live rather than being left running alongside. Everything is built and verified in GTM Preview first, and the container can be reverted to its previous version in a few seconds if anything looks wrong.
- How do I know at the end that it actually works?
- You watch it with us. We walk the full journey in GTM Preview, then place a real order through a low-value test product, and then open Google Ads and Meta Events Manager and see that specific conversion arrive with the right value and currency. If it is not visible in the destination platform, it is not done.
- What happens six months from now when something changes?
- You get a short document listing every tag, trigger and event, what fires it and where it goes. It exists precisely because the person answering the question in six months is usually not the person who built it, and undocumented containers are how accounts end up with duplicate tags nobody dares remove.
Often taken together.
Start with the brief, not the invoice.
Send what you are trying to achieve. You get a written scope, a price and a date — or an honest “this is not the right service for that”.
Talk about Conversion tracking & server-side tagging All Paid Media & Performance services