
Tracking & data
Your Google Ads account sees about two thirds of your sales. Here is where the rest go.
8 September 2026 · 6 min · Andrei Gheorghiu, Fractional CMO
On this page
- The gap is normal. Ignoring it is not.
- Cause 1: the consent banner blocks the tag, and nothing replaces it
- Cause 2: the purchase event fires before the order exists
- Cause 3: Enhanced Conversions is off, or on but empty
- Cause 4: transaction IDs are missing, so deduplication fails
- Cause 5: server-side tracking was set up and then forgotten
- What a fixed setup looks like
- What to do this week
The gap is normal. Ignoring it is not.
Open your shop admin and your Google Ads conversion column for the same month. In most e-commerce accounts I audit, the ads platform sees between 60% and 75% of the orders the shop actually recorded. The gap is not a mystery and it is rarely one thing. It is usually four or five small leaks that add up.
The problem is what the gap does to your decisions. Smart Bidding optimises towards the conversions it can see. If a third of them are invisible, the algorithm is learning from a distorted sample, your reported ROAS is understated, and you are probably cutting campaigns that work.
Cause 1: the consent banner blocks the tag, and nothing replaces it
Since Consent Mode v2 became mandatory for EU traffic, a visitor who declines cookies stops sending the standard conversion ping. That is correct behaviour. The mistake is running "basic" consent mode, where the tags do not fire at all without consent, instead of "advanced" mode, where cookieless pings still reach Google and conversions are modelled. On a Romanian shop with a 55–65% consent rate, basic mode alone can hide a quarter of your orders.
How to check: in Google Tag Manager preview, decline the banner and see whether the Google tags fire in a consent-denied state. If they do not fire at all, you are on basic mode.
Cause 2: the purchase event fires before the order exists
Thank-you pages that load slowly, payment redirects that skip the confirmation page, or a purchase event placed on a button click instead of the confirmed order page. Each of these either fires twice, fires with the wrong value, or does not fire for a whole payment method. Card payments via a 3D Secure redirect are the classic case: the customer pays, returns to the shop, and the confirmation page never renders long enough for the tag.
How to check: compare orders by payment method in the shop against conversions by payment method in GA4. If one method is systematically missing, this is your leak.
Cause 3: Enhanced Conversions is off, or on but empty
Enhanced Conversions lets Google match a conversion to a signed-in user using hashed first-party data, recovering conversions that cookie loss would otherwise hide. Many accounts have the toggle on and send no data because the email or phone field is not mapped in the tag. Google reports the feature as "active" either way.
How to check: in Google Ads, open the conversion action diagnostics. If Enhanced Conversions shows "no recent data" or a match rate below 50%, the field mapping is broken.
Cause 4: transaction IDs are missing, so deduplication fails
Without a transaction ID, the same order counted through the Google Ads tag and again through the GA4 import becomes two conversions. This inflates rather than hides, but it corrupts the same decisions. Some setups do the opposite: the ID is present but different between the two sources, so Google discards one as a duplicate that is not one.
How to check: export a week of conversions with transaction IDs and match them against shop order numbers. Duplicates and blanks are visible in a spreadsheet within an hour.
Cause 5: server-side tracking was set up and then forgotten
Server-side GTM improves data quality when maintained. When the shop platform updates, the payment provider changes, or a developer moves a container, the server endpoint keeps returning 200 while sending incomplete payloads. Nobody notices, because the dashboard still shows numbers.
How to check: send a test purchase and follow it end to end, from browser to server container to Google Ads. If you cannot follow one order through the whole chain, assume the chain is broken somewhere.
What a fixed setup looks like
On a supplements retailer in Romania, the audit found causes 1, 2 and 3 active at the same time. Conversion capture went from roughly 65% to roughly 90% of real orders after the fix, with no change to campaigns. The reported ROAS moved accordingly, and two campaigns that were about to be paused turned out to be the most profitable ones in the account.
The fix itself is not exotic: advanced consent mode, purchase event bound to the confirmed order, Enhanced Conversions with mapped fields, consistent transaction IDs, and a test order that runs through the whole chain every month.
What to do this week
Pull shop orders and ads conversions for the same 30 days and compute the ratio. If it is below 85%, work through the five causes in order. If you would rather have someone else do the diagnosis, that is exactly what the conversion tracking audit is for.
Frequently asked questions

Andrei Gheorghiu, Fractional CMO
Andrei Gheorghiu is a Fractional CMO working with e-commerce brands in Romania and Central Europe. Consumer research, tracking infrastructure, paid media and marketplaces.
Not sure which of these applies to your account? A 30-minute call is enough to find out.
Request a proposal

