How the AxiTrace Google Ads click tracker on click.axitrace.com works: parallel tracking and the sequential fallback, the tracking template, every accepted parameter, the exact redirect rules, what is recorded for each paid click, retention and privacy.

Google Ads Click Tracker

The AxiTrace click tracker is a transparent, server-side redirect on click.axitrace.com that you place in the tracking template of your Google Ads account. Every paid click that passes through it is recorded on AxiTrace servers with the real IP address of the clicking browser, its user agent and the click identifier, and the browser is sent straight on with a single HTTP 302 to the address in the url parameter. No cookies, no intermediate domains, nothing appended to your landing page address.

Availability

The click tracker is part of every AxiTrace plan. Setup in the panel is enabled per account by AxiTrace: if you want to use the tracker on your Google Ads account, write to info@axitrace.com and we switch it on for your workspace. The template below already works for any workspace whose landing pages sit on a verified domain.

Why a click tracker

The AxiTrace JavaScript SDK sees a visit only once your page has loaded and the script has run. A paid click can be charged without that ever happening: the visitor closes the tab before the page loads, an ad blocker or a consent banner stops the script, or the click comes from automation that never renders a page. The click tracker records the click itself, on the server, at the moment the browser follows the ad. That record is what Fraud Detection compares with the landings it sees, and it is the strongest evidence in a refund claim.

How it works

Google Ads calls a tracking template in one of two ways:

  • Parallel tracking (the normal case). When someone clicks your ad, the browser goes directly to your landing page. In the background, the same browser sends a beacon request to Google's click server and then to your tracking template. In that background call Google replaces {lpurl} with its own substitute address, so the tracker answers with a 302 to that Google address and your page is never loaded twice. The visitor never waits for the tracker.
  • Sequential fallback. A browser that cannot send a background beacon follows the chain in the foreground: Google, then click.axitrace.com, then your landing page. The tracker answers at once with a 302 to the exact landing page address, so the extra hop costs a single short request.

In both paths the request reaches click.axitrace.com directly from the clicking browser, which is why the tracker sees the real IP address and user agent of the click rather than an address of Google or of a proxy.

The tracking template

Paste this template into the Tracking template field of your Google Ads account (account level covers every campaign; a campaign, ad group or ad level template overrides it), and replace {workspace_key} with the public key of your AxiTrace workspace, the same key your tracking snippet uses:

https://click.axitrace.com/c/{workspace_key}?url={lpurl}&campaignid={campaignid}&adgroupid={adgroupid}&creative={creative}&keyword={keyword}&matchtype={matchtype}&network={network}&device={device}&placement={placement}&targetid={targetid}&loc_physical_ms={loc_physical_ms}

Everything in curly braces except {workspace_key} is a Google Ads ValueTrack parameter that Google fills in at click time. Leave those exactly as they are.

Parameters

ParameterFilled byMeaning
urlGoogle ({lpurl})The transparency parameter: the address of the next hop. The tracker redirects to exactly this value. Required.
campaignidGoogle ({campaignid})Campaign ID.
adgroupidGoogle ({adgroupid})Ad group ID.
creativeGoogle ({creative})Ad ID.
keywordGoogle ({keyword})The keyword that matched the search, empty on networks without keywords.
matchtypeGoogle ({matchtype})Keyword match type: e exact, p phrase, b broad.
networkGoogle ({network})Where the click happened: Search, Search partners, Display, YouTube and others.
deviceGoogle ({device})Device class: m mobile, t tablet, c computer.
placementGoogle ({placement})The site or app where the ad was shown, on placement-based networks.
targetidGoogle ({targetid})ID of the keyword, audience or other target that triggered the ad.
loc_physical_msGoogle ({loc_physical_ms})Google's location ID for where the click physically happened.
gclid, gbraid, wbraidAppended by GoogleThe click identifier. With auto-tagging on, Google adds it to the tracking URL itself; you do not put it in the template.

The list of accepted parameters is fixed. AxiTrace adds no parameters of its own, neither to the tracker address nor to your landing page address.

Redirect rules

The tracker always answers immediately, with one of these responses:

  • 302 to exactly the url value. When the target is an HTTPS address on one of your verified domains, or Google's parallel tracking substitute address, the Location header is the decoded url value byte for byte. Nothing is appended, removed or re-encoded.
  • 302 to the HTTPS version of an http address. When the target uses plain http on one of your verified domains, the Location header is the same address with only http replaced by https, and the response carries X-Click-Tracker-Reason: https-upgrade.
  • 403 for a target outside your verified domains. The tracker never redirects anywhere the url value does not name. A target that is not on a verified domain, or a Google address that redirects onwards, is refused with 403 target not allowed and the header X-Click-Tracker-Reason: target-not-verified (or redirector-path). The click is still recorded.
  • 400 for an invalid url. A value that is not an absolute http or https address is refused with 400 invalid url parameter and X-Click-Tracker-Reason: invalid-url.
  • 404 for an unknown key. A workspace key that does not exist or is not active answers 404 unknown click tracker key, whatever the url value. Nothing is recorded.
  • 400 for a missing url. A request without a url value is rejected.
  • Never cookies. No response sets a cookie, and the redirect has no body to render. There are no JavaScript or meta refresh redirects and no intermediate domains.
  • Nothing appended. The tracker never adds parameters to the landing page address.
  • HTTPS only. The tracker serves HTTPS only, and only redirects to HTTPS targets.
  • Landing page addresses with their own parameters. Inside a tracking template Google escapes ? and = in {lpurl} but leaves & as it is. The tracker reads the whole address anyway, so a final URL such as https://shop.com/p?a=1&b=2 is redirected to exactly that address, with every parameter.

Every response carries Cache-Control: no-store and X-Robots-Tag: noindex. HEAD requests get the same status and headers as GET; any other method gets 405.

Verified domains are the allowed targets

The allowed landing page hosts are the domains verified in your workspace, managed in the Domains card of the workspace settings (see Domain Configuration). A newly verified domain becomes a valid target within about a minute; until then clicks to it are refused with 403. With parallel tracking your visitors still reach your page, but a browser on the sequential path would see the error, and Google may report the destination as not working. Verify every domain your ads point to before you switch the tracking template on: the click tracker page in the panel lists the landing page domains of your campaigns that are not verified yet.

What is recorded

For every click that reaches the tracker with a valid workspace key, AxiTrace stores one record:

  • the time of the click, to the millisecond;
  • the IP address of the clicking browser, and whether that address was verified as the real client address;
  • the user agent, the low-entropy client hints the browser sends by default, and the accepted languages;
  • the host of the referring page, never its full address;
  • the click identifier (gclid, gbraid or wbraid) and the campaign parameters listed above;
  • the host of the target and which redirect rule was applied.

Records are kept for 100 days and then deleted automatically. They are used for invalid-click detection in Fraud Detection and as evidence in refund claims for your own Google Ads account, and for nothing else: not for marketing, audience building or profiling.

Privacy

  • No cookies are set or read, so the tracker stores nothing on the visitor's device.
  • No third parties. The record stays on AxiTrace servers in your workspace. The IP address is classified against offline network databases and is not sent to any reputation service.
  • Roles. As for the rest of the tracking data, you are the controller and AxiTrace processes the record on your behalf. The full description is in the privacy policy, section 3.8.
  • Deletion. Deleting a workspace deletes its click records with it.

Need help?

Write to info@axitrace.com with your workspace name and the tracking template you pasted, and we will check the redirect for you.