Google Ads can only optimise what it receives
Smart Bidding learns from your conversions. When the browser loses some of them, the algorithm does not see a lower number. It sees clicks that earned nothing, and it stops buying them. Trackful sends the conversion from your server, with the original gclid and hashed identifiers.
The problem
Where conversions disappear between the click and the sale
None of these losses surfaces as an error. The conversion is simply missing.
The gclid does not survive the journey
The click lands with a gclid in the URL. Between the product page, the cart and checkout it has to survive domain changes, redirects and a browser that limits storage. If it is gone by the time the order is placed, Google cannot attribute the sale to any ad.
The tag never fires
Ad blocker, privacy extension, tab closed before the thank-you page, a third-party script that throws and breaks the chain. The browser-side conversion tag has many reasons not to fire, and none of them shows up in your reports.
No identifiers, no recovery
Enhanced Conversions exist precisely to find a customer when the click is no longer identifiable. That requires sending hashed email and phone. An upload carrying only the gclid has no safety net.
Match keys
What Google accepts, and what we send
Every extra key raises the odds of matching the sale. All personal data is hashed on your server, before anything leaves for Google.
- gclid, gbraid, wbraid
- Google's three click identifiers, in priority order. gbraid and wbraid replace the gclid on iOS when user tracking is restricted. Many integrations handle only the gclid and therefore lose the affected iOS traffic entirely.
- hashed_email, hashed_phone_number
- Normalised, then SHA-256 hashed. The phone is put in E.164 using the buyer's actual country: assuming a default country produces a wrong number, so a hash that matches nobody.
- hashed_first_name, hashed_street_address
- Address strengthens matching when neither the click nor the email is enough. Postal code and country go unhashed, as Google specifies; name and street are hashed.
- conversion_value, currency_code
- Currency is never assumed, it is read from the store. A dollar order labelled EUR distorts tROAS and makes Smart Bidding overbid on inflated values.
Google's rules
Constraints we respect on your behalf
These come from Google's documentation, not from our assumptions.
Consent required for identifiers
Consent Mode v2 requires ad_user_data. If it is denied, Trackful sends no personal data at all. If consent is unspecified, the upload is limited to click identifiers. The visitor's choice is enforced server-side, not only in the browser.
Upload window
A click conversion stays acceptable for roughly 90 days after the click, and a value adjustment for roughly 54 days after the conversion. Trackful checks event age before the call instead of sending a batch destined to be rejected.
Accepted is not recorded
A success response only proves Google received the request. The Trackful dashboard separates what was sent from what Google actually recorded, because treating those as the same thing means flying blind.
Your platforms
Google Ads on Shopify and on WooCommerce
Shopify
The Web Pixel captures the order in checkout, the webhook confirms it, and the two are deduplicated so a sale never counts twice. The theme click tracker carries the gclid across visits.
Trackful for ShopifyWooCommerce
A direct PHP hook fires on the order, without depending on REST webhooks that silently disable after five failures. The gclid is stored in a server-set cookie valid for one year, which escapes the limits applied to cookies written in JavaScript.
Trackful for WooCommerceSetup
Connected in minutes
- 1
Authorise Google Ads
One-click OAuth. No key to copy, no account ID to hunt for in a dashboard.
- 2
Pick the account
Trackful lists the accounts you can access and creates the conversion action if it does not exist yet.
- 3
Verify, then switch on
Send a test conversion, confirm Google received it, then leave the channel running.
Questions
Frequently asked
Do I have to remove my existing Google Ads tag?
No. Trackful sends the server-side conversion using the same event identifier as the browser tag, which lets Google collapse the duplicate. If a competing tag already sends the same conversion without a shared identifier, Trackful flags it rather than letting double counting settle in.
What happens when a visitor declines advertising cookies?
Nothing is sent for that visitor. Consent Mode v2 is enforced server-side: ad_user_data denied means no personal data leaves, and unspecified consent limits the upload to click identifiers.
Do Enhanced Conversions work without a gclid?
Yes, that is the whole point of them. When the gclid is lost, Google attempts the match from hashed email and phone. That is why Trackful always sends the maximum set of available keys rather than the bare minimum.
Is my customer data sent in the clear?
No. Email, phone, name and street are normalised then SHA-256 hashed on your server. Google never receives the original value, and Trackful does not keep those values in the clear.
Trackful is not affiliated with or endorsed by Google. Google Ads is a trademark of Google LLC, referenced here to identify the service Trackful sends your conversions to.
Stop paying for results you cannot measure
Every day without Trackful is a day you make ad decisions with only 60% of the data. Install Trackful in 5 minutes and see the difference.