A conversion with no click id is discarded
Google Ads attributes on gclid, gbraid or wbraid. Sent without one, a conversion belongs to no campaign and is dropped, which is why your Ads total can sit far below your WooCommerce total.
A WordPress plugin that sends the WooCommerce order to Google Ads from your server, carrying the click id stored when the visitor first landed: gclid, and also gbraid and wbraid, which Google sends instead on iOS and in-app journeys. No Google credential ever sits in your WordPress database.
The problem
Google Ads needs the click that produced the sale. Between the landing page and the WooCommerce order, a WordPress stack gives that click id several ways to disappear.
Google Ads attributes on gclid, gbraid or wbraid. Sent without one, a conversion belongs to no campaign and is dropped, which is why your Ads total can sit far below your WooCommerce total.
A cached landing page can be served to a visitor arriving with ?gclid=..., and nothing on that page stores the value. By the time the order is placed, the click is gone.
The classic setup puts a conversion snippet on the thank-you page. A theme update, an optimiser, a redirect, and the snippet no longer fires on the page that carries the sale.
The fix
The plugin writes the click id into a first-party cookie the moment the visitor lands, and the server reads it back when WooCommerce validates the order. Nothing depends on a page rendering at the right time.
All four are captured. Whichever identifier the platform chose to attach to the click, the conversion carries it when it reaches Google Ads or Microsoft Advertising.
The purchase is built on the WooCommerce order hook and reads the stored click id from the request, not from a browser beacon that a blocker or an optimiser can suppress.
You connect the Google account that manages your Ads from the console. The refresh token lives encrypted on our side; your site holds only the connection key.
Setup
A WordPress plugin installed from the admin, with a retry queue and an Activity panel so you can see what left and what did not.
One key from your DataFirefly console identifies the site. It is the only thing your shop holds: no destination credential ever lives in your store.
Your Google Ads settings go into the console, stored encrypted on our side. Rotating them later touches nothing in the shop.
The same connector feeds every other destination from the same events, so Google Ads is a starting point rather than a silo. See the WooCommerce connector in detail or Google Ads across all platforms.
Same connector
One installation, one key. The events you already send reach every destination you switch on.
Pricing
10,000 events a month free, no card. Paid plans from 39 €/month when your volume grows. Every destination is included in every plan: Google Ads is never an add-on.
FAQ
The usual cause is conversions arriving without a click id: Google Ads cannot attribute them and drops them. The plugin captures gclid, gbraid and wbraid when the visitor arrives, stores them in a first-party cookie, and attaches them to the order-time conversion.
It breaks the naive version, where a server-rendered page is expected to read the query string. The plugin stores the click id from the browser on arrival, so a cached HTML page can still be served: the capture happens on the visitor’s side and the value is read back server-side at order time.
Google sends them instead of gclid when the journey crosses an app or a browser with restricted cookies. An integration that only knows gclid loses that traffic silently. All three are captured, and the dispatcher validates them.
You do not need it for the purchase. Keep whatever browser tagging you use for remarketing if you rely on it, and let the server own the conversion: that is the one that carries the click id and survives the page never rendering.
Yes. The order is read through the WooCommerce API, so custom order tables and the legacy storage behave identically.
On our side, encrypted. You authorise with OAuth from the console; your WordPress database never holds a Google token, which also means you can revoke access without touching the site.
Install the plugin, connect your Google account, map your conversion actions. The next ad-driven order will carry its click id.