Tracking template FAQ

Short answers to the questions that show up when Google Ads URL options, UTMs and click trackers collide — including three paste-ready before → after failure demos, HubSpot conflicts, inheritance, the Test button, gclid + UTMs and Performance Max. Deep dives live in Guides and Docs.

Template debugger · Template auditor · Builder · Recipes · Certified trackers

Famous failure demos (before → after)

Demo: HubSpot broke after pasting a ClickCease redirect

Symptom: HubSpot Ads reports go empty after installing click-fraud. Someone pasted a full ClickCease redirect into Tracking template and overwrote HubSpot’s {lpurl}?…hsa_* string.

Before (broken — redirect owns the only template field):

https://monitor.clickcease.com/tracker/?id=YOUR_CLICKCEASE_ID&…&url={lpurl}&…

After (correct — split fields):

Tracking template (HubSpot — replace the customer ID, no dashes):

{lpurl}?utm_term={keyword}&utm_source=adwords&utm_medium=ppc&utm_campaign={_utmcampaign}&hsa_cam={campaignid}&hsa_grp={adgroupid}&hsa_mt={matchtype}&hsa_src={network}&hsa_ad={creative}&hsa_acc=YOUR_GOOGLE_ADS_CUSTOMER_ID&hsa_net=adwords&hsa_kw={keyword}&hsa_tgt={targetid}&hsa_ver=3

Final URL suffix (ClickCease keys + site pixel):

kw={keyword}&cpn={campaignid}

Lesson: Google applies one Tracking template per level. Keep HubSpot in the template; put fraud query keys in the suffix. Never stack a second url={lpurl} redirect on top of HubSpot. Paste-ready: HubSpot + ClickCease recipe. Validate with the auditor.

Demo: UTMs in Tracking template look fine in Test, missing in production

Symptom: Ads Test looks green; GA4 still shows paid clicks as Direct / (not set).

Before (broken under parallel tracking):

{lpurl}?utm_source=google&utm_medium=cpc&utm_campaign={campaignid}&utm_term={keyword}

After (correct):

Tracking template:

{lpurl}

Final URL suffix:

utm_source=google&utm_medium=cpc&utm_campaign={campaignid}&utm_term={keyword}&utm_content={creative}

Lesson: Template owns structure/redirects; suffix owns query params that must land with the user when parallel tracking is on. Full walkthrough: template vs Final URL suffix.

Demo: Address bar shows %253F after “fixing” with {lpurl+2}

Symptom: Destination shows %253F / %2526; analytics never sees a clean ?.

Before (over-encoded — usually one hop too many):

https://track.example.com/click?url={lpurl+2}

(or {lpurl+3} when the chain only encodes once)

After (match encode layers to hop count):

https://track.example.com/click?url={lpurl}

Use {lpurl+2} only when a second hop re-encodes before the last redirect.

Lesson: Do not “+2 to be safe.” %253F → drop one level; truncated destination → go up one. Verify with a real click plus the template debugger, not only Ads Test. Guide: {lpurl} encoding.

Template vs Final URL suffix

Should UTMs go in the tracking template or the Final URL suffix?

Final URL suffix. They survive redirects and parallel tracking. Reserve the template for redirect structure. Full comparison.

Do I need a tracking template if I only want UTMs?

No. Leave it as {lpurl} or empty; put parameters in the suffix.

Does the Final URL suffix need <code>{lpurl}</code>?

No. {lpurl} belongs only in the tracking template.

Will changing URL options restart learning?

Account / campaign / ad group changes do not send ads back for review. Ad-level URL edits can.

Level precedence & sitelinks

Do tracking templates or suffixes at different levels combine?

No. Most specific wins and replaces the higher level entirely — no merge. Restate every parameter when you override. Same rule for custom parameters ({_utmcampaign}, etc.). Inheritance guide.

Why do only some clicks have UTMs?

Usually an orphaned override at ad, keyword, sitelink or asset that replaced the account/campaign suffix years ago. Export URL options at every level (Editor or API) and clear undocumented overrides.

Do sitelinks inherit the account tracking template and Final URL suffix?

They can use account/campaign settings, but a sitelink-level template or suffix overrides completely for that sitelink click. Prefer leave sitelink URL options empty so they inherit the account setup.

Where should I set template and suffix to avoid inheritance bugs?

Account-level template + account-level suffix as the default. Campaign overrides only when required — and restating the full suffix if you touch it. Nothing at ad / keyword / sitelink / asset unless documented.

{lpurl} encoding

Are <code>{lpurl}</code> and <code>{escapedlpurl}</code> the same?

Not always. {escapedlpurl} is always encoded. {lpurl} is raw at the start of the template and encoded after ? or =. Encoding guide.

When do I need <code>{lpurl+2}</code>?

When a hop re-encodes the destination before the last redirect. Match encode layers to the chain — do not “+2 just to be safe.”

What does <code>%253F</code> in the address bar mean?

Over-encoding. Drop one level (+3+2, or +2{lpurl}).

Can I use <code>{unescapedlpurl}</code> in a query parameter?

Almost never. Raw ?/& break the outer tracker URL. Use an encoded variant.

Parallel tracking

Is parallel tracking mandatory?

Yes for modern Search, Shopping, Display and Video. What breaks and what works.

Why did my JS redirect tracker stop working?

The browser no longer visits the tracker page. You need a server-side HTTPS 301/302, or move to suffix-only measurement.

How do I tell server-side from client-side?

DevTools Network: 301/302 + Location = server-side. 200 HTML that then navigates = client-side.

Does parallel tracking break Google conversion tags?

Not directly — they fire on the landing page. Pre-landing browser hops are what break.

Auto-tagging, gclid & UTMs

Can I use auto-tagging (gclid) and UTMs together?

Yes — and you should. Auto-tagging appends gclid (plus wbraid/gbraid where relevant) for Google Ads attribution. UTMs in Final URL suffix feed GA4 and other tools. Do not disable auto-tagging to “make UTMs work.”

Does adding UTMs break or replace gclid?

No. Google still appends gclid when auto-tagging is on. UTMs are extra query params on the landing URL. If gclid disappears, look for redirects, CDN rules or a CMS stripping query strings — not the UTM suffix itself.

Why is paid traffic showing as Direct?

Often UTMs only in the template (never on the page under parallel tracking), or the site/CDN stripping query params. Move UTMs to the suffix and check canonical/redirect rules.

Why do I see <code>google / (not set)</code>?

utm_source without utm_medium, or the suffix missing for that slice of traffic (orphaned level override).

HubSpot conflicts

Can HubSpot and a click-fraud redirect share the Tracking template?

Not as two full templates. Google applies one Tracking template per level. If ClickCease/ClickPatrol owns a redirect in Tracking template, HubSpot hsa_* keys must live in Final URL suffix (or you drop the redirect). Do not paste a second url={lpurl} hop on top of HubSpot. HubSpot + ClickCease.

Why does HubSpot use <code>utm_medium=ppc</code> and <code>{_utmcampaign}</code>?

That is HubSpot’s official Google Ads auto-tagging template. ppc is intentional (not a typo for cpc). {_utmcampaign} is a Google Ads custom parameter HubSpot defines — not the same as {campaignid}. HubSpot recipe.

What breaks HubSpot ads attribution most often?

Leaving YOUR_GOOGLE_ADS_CUSTOMER_ID unreplaced; putting HubSpot only in a redirect template that parallel tracking never lands with; or a lower-level override wiping account HubSpot params. Audit with the template auditor (select HubSpot).

Performance Max

Do tracking templates and Final URL suffix work on Performance Max?

Yes at account/campaign URL options, but asset-group Final URLs and feed URLs can still land without your expected query string if something overrides or strips params. Prefer account-level suffix + verify a real PMax click, not only Search.

Which ValueTrack params are empty or weak in PMax?

{keyword} / match-type style tokens are often empty outside classic Search. Prefer stable IDs: {campaignid}, {creative}, {device}, {network}. See PMax UTM recipe and Google parameters.

Should Hyros or similar use a different template for PMax?

Often yes — Shopping/PMax stacks drop Search-only tokens. Example: Hyros PMax uses gc_id + g_special_campaign instead of Search ad-id fields.

Test button & tools

What does the Google Ads Test button actually check?

Destination reachability for the expanded tracking URL — not whether UTMs are semantically correct, not parallel-tracking behaviour in production, and not every hop a real user will hit. Always follow with a real click and address-bar check. Encoding guide.

Test looks fine but production clicks are mangled — why?

Common: wrong encode level only visible after a hop re-encodes; params in Tracking template eaten under parallel tracking; or an orphaned lower-level override. Use the template debugger, then a real ad click + DevTools Network.

Where do I debug a broken template?

Debugger for encoding / resolved URLs; auditor for platform + tool gaps; then Ads Test + a real click.

CallRail or CallTrackingMetrics — template or suffix?

Suffix (query params on the landing URL). See CallRail and CTM.

How do I pick a click fraud tool?

Browse certified trackers by redirect vs Final URL suffix, and confirm parallel-tracking support with the vendor.

Ideal account-level setup?

Ideal tracking template configuration (scheduled/live via docs).