---
title: "What's a Google Ads tracking template, and where do UTM parameters go?"
description: "In the final URL suffix, not the tracking template. Why, which template Google uses when several are set, and what a ? in a template does to your landing page."
canonical: https://goldbeater.ai/guides/tracking-templates
last-updated: 2026-10-26
---

Guide

# What's a Google Ads tracking template, and where do UTM parameters go?

In the final URL suffix, not the tracking template. Why, which template Google uses when several are set, and what a ? in a template does to your landing page.

In short

- A Google Ads tracking template holds tracking information for click measurement, with {lpurl} where your final URL goes. Google calls it an advanced feature for advertisers who use a third-party click tracker.
- UTM parameters go in the final URL suffix, the field whose parameters Google adds to the end of your landing page URL.
- Google sends people straight from the ad to the final URL and loads the tracking template in the background, so its developer documentation says parameters your landing page needs belong in the suffix, not the template.
- A template that starts {lpurl}? is safe on a final URL that already has a question mark: Google replaces the template's ? with & itself.
- Only the most specific template applies to a click: a keyword's, then an ad's, ad group's, campaign's and the account's. Templates set at different levels aren't combined, and neither are suffixes.
- When a template and a suffix both set utm_source, the landing page gets it twice, and which one counts is up to your analytics tool, not Google Ads. Set each parameter in one place.
- Goldbeater reads every level's template, suffix and custom parameters every day, and raises a custom parameter that arrives empty, auto-tagging switched off while your conversions rely on it, and a click ID pasted into a final URL.

Know what your ads really earn.

- Clicks arriving untracked, or tracked wrong

Goldbeater finds this in your own account, says what it's worth and drafts the fix. 165 other checks find what else is wasting your budget and where it could earn more. Goldbeater's AI agent follows up every week.

[Get a free first look](https://goldbeater.ai/app?start=look)

No card needed. Then $49 a month up to $5,000 of ad spend, or from $249 with a 7-day trial above that.

1. [01 UTM parameters belong in the final URL suffix.](https://goldbeater.ai/guides/tracking-templates#suffix)
2. [02 A template's ? is safe, even when the final URL has one.](https://goldbeater.ai/guides/tracking-templates#question-mark)
3. [03 Only the most specific template applies, and it replaces the rest.](https://goldbeater.ai/guides/tracking-templates#most-specific)
4. [04 A custom parameter no level gives a value arrives empty.](https://goldbeater.ai/guides/tracking-templates#custom-parameters)
5. [05 How to find every template and suffix in an account](https://goldbeater.ai/guides/tracking-templates#by-hand)
6. [06 A parameter set in both the template and the suffix arrives twice.](https://goldbeater.ai/guides/tracking-templates#both)
7. [07 Move UTM parameters to the final URL suffix](https://goldbeater.ai/guides/tracking-templates#fix)
8. [08 What Goldbeater shows you](https://goldbeater.ai/guides/tracking-templates#finding)
9. [09 Questions](https://goldbeater.ai/guides/tracking-templates#questions)

Contents

1. [01 UTM parameters belong in the final URL suffix.](https://goldbeater.ai/guides/tracking-templates#suffix)
2. [02 A template's ? is safe, even when the final URL has one.](https://goldbeater.ai/guides/tracking-templates#question-mark)
3. [03 Only the most specific template applies, and it replaces the rest.](https://goldbeater.ai/guides/tracking-templates#most-specific)
4. [04 A custom parameter no level gives a value arrives empty.](https://goldbeater.ai/guides/tracking-templates#custom-parameters)
5. [05 How to find every template and suffix in an account](https://goldbeater.ai/guides/tracking-templates#by-hand)
6. [06 A parameter set in both the template and the suffix arrives twice.](https://goldbeater.ai/guides/tracking-templates#both)
7. [07 Move UTM parameters to the final URL suffix](https://goldbeater.ai/guides/tracking-templates#fix)
8. [08 What Goldbeater shows you](https://goldbeater.ai/guides/tracking-templates#finding)
9. [09 Questions](https://goldbeater.ai/guides/tracking-templates#questions)

Know what your ads really earn.

[Get a free first look](https://goldbeater.ai/app?start=look)

No card needed.

The manual way comes first, in Google Ads itself. Then the same problem as Goldbeater finds it, every day, without anyone asking.

## UTM parameters belong in the final URL suffix.

Each ad’s URL options have two fields for tracking, and they do different jobs:

- Final URL suffix. Parameters Google adds to the end of your landing page URL, where your analytics reads them.
- Tracking template. Tracking information for click measurement, with {lpurl} where your final URL goes. Google calls it an advanced feature for advertisers who use a third-party click tracker, and says most advertisers won’t need one.

The difference is where each one goes after a click. Google sends people straight from the ad to your final URL and loads the tracking template in the background. It calls this parallel tracking, and it’s mandatory for Search, Shopping, Display, Video and Performance Max campaigns.

So Google’s developer documentation says parameters your landing page needs must go in the final URL suffix, or in the final URL itself, rather than the tracking template. UTM parameters are read on the landing page, so they belong in the suffix.

A final URL suffix

Example

| Field            | Value                                                        |
| ---------------- | ------------------------------------------------------------ |
| Final URL        | https\://example.com/sofas                                   |
| Final URL suffix | utm_source=google\&utm_medium=cpc                            |
| Landing page     | https\://example.com/sofas?utm_source=google\&utm_medium=cpc |

Write the suffix without a ? in front, and join its parameters with &. Google adds the ? itself.

A template full of UTM parameters isn’t broken. Google’s own examples show a template that begins {lpurl}? carrying its parameters to the landing page. It’s in the field meant for something else, though, and it can collide with a suffix, as the fifth section shows.

## A template's ? is safe, even when the final URL has one.

The usual worry is a product page whose final URL already has a question mark, such as /sofas?color=oak, under a template that adds another. Two question marks in one address would break the parameters after the second.

Google prevents it. In its words: “If your final URL already contains a question mark, Google Ads will replace the question mark in your tracking template with an ampersand (&).”

The ? becomes &

Example

| Field             | Value                                                   |
| ----------------- | ------------------------------------------------------- |
| Final URL         | https\://example.com/sofas?color=oak                    |
| Tracking template | {lpurl}?utm_source=google                               |
| Landing page      | https\://example.com/sofas?color=oak\&utm_source=google |

The template's ? became &, because the final URL already had a ?.

That holds for a template that begins with {lpurl}, which Google says to follow with a ?. Where {lpurl} sits inside a click tracker’s address instead, Google escapes your final URL, and what follows it is %3F. Your tracker’s own instructions give its exact format.

Two things do break a landing page, by Google’s account:

- A template without {lpurl} at the account, campaign or ad group level. Google says a template there must insert your final URL, or your landing page URL will break.
- A final URL with an anchor (#). When a template adds parameters to the end of a final URL with an anchor, Google says all the tracking parameters must go in the final URL itself.

## Only the most specific template applies, and it replaces the rest.

A template can be set on the account, a campaign, an ad group, an ad or a keyword. Google uses one for each click, the most specific: the keyword’s, then the ad’s, the ad group’s, the campaign’s, and last the account’s.

It doesn’t combine them. Google’s developer documentation says the template and the final URL suffix are each taken from the lowest level that has one, separately. Whatever is set higher up doesn’t reach that click.

So a level with its own template or suffix has to carry everything. An ad group whose suffix sets only utm_content sends none of the account suffix’s parameters.

A lower suffix wins

Example

| Field           | Value                                      |
| --------------- | ------------------------------------------ |
| Account suffix  | utm_source=google\&utm_medium=cpc          |
| Ad group suffix | utm_content=oak                            |
| Landing page    | https\://example.com/sofas?utm_content=oak |

Clicks in that ad group arrive without utm_source or utm_medium.

## A custom parameter no level gives a value arrives empty.

A custom parameter is a name and a value you set, such as campaign and sofas, and use in a template, suffix or final URL as {\_campaign}. Google lets you set up to 8 on a campaign, an ad group, an ad or a keyword, and none on the account.

Unlike templates, custom parameters from different levels combine. Google looks each name up on its own and takes the value from the lowest level that sets it: if an ad group sets {\_color} to red and one of its ads sets it to blue, that ad’s clicks carry blue.

A name that no level sets doesn’t break the address. Google puts nothing in its place, so the parameter it fills arrives with no value. So does one whose lowest level sets it to nothing, since that value wins over any above it.

A name nothing sets

Example

| Field           | Value                                                       |
| --------------- | ----------------------------------------------------------- |
| Final URL       | https\://example.com/sofas                                  |
| Campaign suffix | utm_source=google\&utm_campaign={\_campaign}                |
| Landing page    | https\://example.com/sofas?utm_source=google\&utm_campaign= |

No campaign, ad group or ad sets campaign, so utm_campaign arrives empty.

## How to find every template and suffix in an account

Templates and suffixes can sit at any of those levels, so read each one.

1. Go to Admin › Account settings and open the Tracking section. Note the account’s tracking template and final URL suffix.
2. Go to Campaigns › Campaigns and select the Settings tab. Add the Tracking template column: select the columns icon above the table, then Modify columns, expand Attributes, select Tracking template and Apply. A campaign with its own template shows it there.
3. Do the same on Campaigns › Ad groups and on Campaigns › Audiences, keywords, and content › Search keywords.
4. Hover over an entry in the column and select the pencil. The Final URL suffix field is in the same place as the template.
5. For ads, go to Campaigns › Ads, hover over an ad, select the pencil, then Edit, and expand Ad URL options.
6. Custom parameters sit beside them: a campaign’s under Campaign URL options in its settings, an ad group’s in the Custom parameter column, and an ad’s under Ad URL options.
7. Select Test beside a template. Google combines your final URL with the tracking you set up and shows the landing page it leads to. The [Dynamic Search Ads guide](https://goldbeater.ai/guides/dynamic-search-ads) covers the ads whose landing page Google chooses.

Google’s help also points to a Tracking template source column, which shows which template applies. Then look for four things:

- UTM parameters in a template rather than a suffix.
- A template or suffix lower down that leaves out parameters the account sets. Clicks under it arrive without them.
- A {\_name} in a template or suffix with no custom parameter of that name at any level that reaches the ad. It arrives empty.
- The same UTM parameter set in a template and in a suffix that apply to the same ad. That’s the next section.

## A parameter set in both the template and the suffix arrives twice.

Take a campaign whose template is {lpurl}?utm_source=google, and an ad in it with its own suffix, utm_source=sale. Google applies both, because it chooses the template and the suffix separately: it adds the suffix to the final URL, then puts that address where {lpurl} is in the template.

One parameter, set twice

Example

| Field             | Value                                                         |
| ----------------- | ------------------------------------------------------------- |
| Final URL         | https\://example.com/sofas                                    |
| Campaign template | {lpurl}?utm_source=google                                     |
| Ad suffix         | utm_source=sale                                               |
| Landing page      | https\://example.com/sofas?utm_source=sale\&utm_source=google |

The landing page gets utm_source twice, the suffix's first.

Google Ads has built the address the way it documents. Which utm_source counts is up to whatever reads the address on your site:

- Google Analytics, with auto-tagging on. Google turns auto-tagging on by default for new accounts. When a click carries auto-tagging and UTM parameters together, Google Analytics takes source, medium and the other traffic-source dimensions from auto-tagging, and Google says it has no option to put the UTM values first.
- Google Analytics, where it can’t use the click’s GCLID, the identifier auto-tagging adds. It then takes every source dimension from the UTM parameters. Its help doesn’t say which copy of a repeated parameter it reads.
- Anything else that reads the address, such as another analytics tool, or a form on your site that saves UTM values with each lead. Each follows its own rule.

So don’t leave it to the tool. Keep each UTM parameter in one place, which is what the next section does.

## Move UTM parameters to the final URL suffix

Leave a click tracker’s template where it is. Move only the UTM parameters.

1. Write the parameters once, without a ? in front, joined by &: utm_source=google\&utm_medium=cpc. ValueTrack parameters work in a suffix as they do in a final URL, so utm_id={campaignid} records each campaign’s ID.
2. Put them in the account’s suffix: Admin › Account settings, the Tracking section, the Final URL suffix field, then Save. Google doesn’t send ads back to review for a change at the account, campaign or ad group level. A change on an ad, keyword or sitelink does go through review.
3. Take the UTM parameters out of every template you found. If a template held nothing else, clear it.
4. Where a campaign or ad needs its own values, give it its own suffix with the whole set, because it replaces the account’s rather than adding to it.
5. Select Test on each template you changed. Google says template changes take 24 to 48 hours to reach your ads, so read your analytics after that.

## What Goldbeater shows you

Every day Goldbeater reads the tracking template, final URL suffix and custom parameters at every level: the account, each campaign, ad group and ad, each Performance Max asset group, and each keyword’s own. It raises three things, each read from the account’s settings:

- A custom parameter that arrives empty. A {\_name} in the template, suffix or final URL an ad or asset group uses that no level gives a value. Medium where it sits above the ad and reaches many, low on one ad.
- Auto-tagging switched off while a conversion action your bidding counts relies on the click ID: high for a Google Analytics import or an offline import, which Google says need auto-tagging, and medium for website tags alone, which it says need it to record on all browsers.
- A click ID pasted into a final URL. A gclid, srsltid or fbclid copied in with an address, so every click on the ad carries one old click’s ID. Low: it’s cleanup.

Each finding says where the parameter or the address is, and what to change. Before auto-tagging goes on, the finding gives Google’s test for whether your site accepts the click ID, since a small share of sites show an error page when it arrives. The [GCLID guide](https://goldbeater.ai/guides/gclid-auto-tagging) walks through that test and shows the finding.

Finding

Sample data

Medium Medium severity Tracking accuracy

{\_campaign} in the final URL suffix of Sofas — Phrase arrives empty on 6 of its 9 ads

Sofas — Phrase

What Goldbeater saw

Clicks reach the landing page with utm_campaign empty, because no custom parameter named campaign is on the ad, its ad group or its campaign.

|               |   |      |
| ------------- | - | ---- |
| Corner sofas  | 2 | $201 |
| Leather sofas | 2 | $366 |
| Velvet sofas  | 2 | $636 |

Why it matters

Auto-tagging switched off while conversions your bidding counts rely on it, a custom parameter your tracking uses that nothing gives a value, so it arrives empty, or one click's ID pasted into a final URL, so every click carries it. The spend is real, and the record of where it came from is lost or wrong.

What to do

Add a custom parameter named campaign with a value: on the campaign, under Campaign URL options in its settings, it reaches everything in the campaign, and a lower level's own value overrides it. Or take {\_campaign} out of the final URL suffix.

What would change

The steps under What to do are the fix. Goldbeater drafts no change for this one.

This is “Clicks arriving untracked, or tracked wrong” on a sample account. See what it finds in your own account and what the fix is worth, and ask your AI analyst about any finding.

[Get a free first look](https://goldbeater.ai/app?start=look)

Sample data. Cedar & Pine Interiors is an invented account, and its figures are made up.

## Questions

- What’s the difference between a tracking template and a final URL suffix?

  The suffix holds parameters Google adds to the end of your landing page URL. The template holds tracking information for click measurement, which Google loads in the background while the visitor goes straight to your page.

- Does a tracking template break a final URL that already has a question mark?

  No. When the final URL already contains a question mark, Google replaces the one in your template with an ampersand.

- Which tracking template does Google use when several are set?

  The most specific: the keyword’s, then the ad’s, the ad group’s, the campaign’s and the account’s. The others don’t apply to that click at all, and the final URL suffix works the same way.

- Should UTM parameters go in the tracking template?

  Put them in the final URL suffix. Google’s developer documentation says parameters your landing page needs belong there, or in the final URL, rather than in the template.

- What happens to a custom parameter that isn’t set?

  Google puts nothing in its place, so the parameter it fills arrives empty. Set it on the campaign to reach every ad in it, or take it out of the template or suffix.

- What happens if utm_source is set twice?

  The landing page gets both copies, and whatever reads the address decides which counts. Google Analytics’ help doesn’t say which it reads, so set each parameter in one place.

How Goldbeater checks this

## Know what your ads really earn.

Goldbeater finds this in your own account every day. Each finding shows its evidence, an estimate of what it costs a month where it costs money, and, where a setting fixes it, a change drafted for you to approve.

A check is code that runs the same way every time, so a new finding means your account changed. Each week Goldbeater's AI agent follows up on what the checks find, and [your AI analyst](https://goldbeater.ai/ai-analyst) answers any question about your account.

Check A finding is worth

- Clicks arriving untracked, or tracked wrong

  Fixing it raises the Tracking accuracy

[Get a free first look](https://goldbeater.ai/app?start=look)

No card needed. [See every check](https://goldbeater.ai/checks).

Google's own pages

## Where the manual method comes from.

1. [Set up tracking with ValueTrack parameters](https://support.google.com/google-ads/answer/6305348?hl=en)
2. [Create custom parameters for advanced tracking](https://support.google.com/google-ads/answer/6325879?hl=en)
3. [Create Google Ads conversions based on Google Analytics key events](https://support.google.com/google-ads/answer/10632359?hl=en)
4. [Add a Final URL suffix](https://support.google.com/google-ads/answer/9054021)
5. [About tracking in Google Ads](https://support.google.com/google-ads/answer/6076199)
6. [Set up your tracking template](https://support.google.com/google-ads/answer/10070427)
7. [About parallel tracking](https://support.google.com/google-ads/answer/7544674)
8. [About URL parameters](https://support.google.com/google-ads/answer/6277564)
9. [About auto-tagging](https://support.google.com/google-ads/answer/3095550?hl=en)
10. [Upgraded URL fields (Google Ads API)](https://developers.google.com/google-ads/api/docs/ads/upgraded-urls/fields)
11. [Serving URL expansion rules (Google Ads API)](https://developers.google.com/google-ads/api/docs/ads/upgraded-urls/serving-url-rules)
12. [Add URL parameters to a Final URL suffix (Search Ads 360 Help)](https://support.google.com/sa360/answer/9246757)
13. [Traffic-source dimensions, manual tagging, and auto-tagging (Analytics Help)](https://support.google.com/analytics/answer/11242870?hl=en)
14. [About auto-tagging (Merchant Center Help)](https://support.google.com/merchants/answer/15191080)

More guides

## Other things worth checking by hand.

- [How do I audit a Google Ads account? Work through 166 checks, area by area, conversions first.](https://goldbeater.ai/guides/google-ads-audit-checklist)
- [What is a GCLID, the click ID that Google Ads auto-tagging adds? What the click ID is, and how to test it arrives.](https://goldbeater.ai/guides/gclid-auto-tagging)
- [How do I set up Google Ads alerts? Know the day a campaign stops, overspends or loses traffic.](https://goldbeater.ai/guides/google-ads-alerts)
- [How do I set up location targeting in Google Ads? Pick Presence or interest, and see where clicks came from.](https://goldbeater.ai/guides/google-ads-location-targeting)

[All 75 guides](https://goldbeater.ai/guides)

Free first look · about five minutes

## Connect your account. See what to fix. No card needed.

[Get a free first look](https://goldbeater.ai/app?start=look)

No card needed. Then $49 a month up to $5,000 of ad spend, or from $249 with a 7-day trial above that.

[Goldbeater home](https://goldbeater.ai/)

Goldbeater checks your Google Ads account every day and shows its work: what’s wasting money, what it’s worth, and the changes that would fix it. Nothing changes in your account until you approve it.

Changes only with your approval · Disconnect any time

Product

- [How it works](https://goldbeater.ai/#how)
- [What we find](https://goldbeater.ai/checks)
- [The dashboard](https://goldbeater.ai/#dashboard)
- [PPC software](https://goldbeater.ai/ppc-software)
- [Free Google Ads audit](https://goldbeater.ai/google-ads-audit)
- [PPC monitoring](https://goldbeater.ai/ppc-monitoring)
- [Budget pacing](https://goldbeater.ai/budget-pacing)
- [Google Ads automation](https://goldbeater.ai/google-ads-automation)
- [AI analyst](https://goldbeater.ai/ai-analyst)
- [MCP server](https://goldbeater.ai/mcp)
- [Pricing](https://goldbeater.ai/pricing)
- [Sign in](https://goldbeater.ai/app)

Guides

- [Google Ads audit checklist](https://goldbeater.ai/guides/google-ads-audit-checklist)
- [Google Ads auction insights](https://goldbeater.ai/guides/google-ads-auction-insights)
- [Negative keywords](https://goldbeater.ai/guides/google-ads-negative-keywords)
- [Google Ads wasted spend](https://goldbeater.ai/guides/wasted-search-terms)
- [Google Ads MCP server](https://goldbeater.ai/guides/google-ads-mcp)
- [Broad match keywords](https://goldbeater.ai/guides/google-ads-broad-match)
- [Google Ads GCLID](https://goldbeater.ai/guides/gclid-auto-tagging)
- [Google Ads sitelinks and callouts](https://goldbeater.ai/guides/sitelinks-and-callouts)
- [All guides](https://goldbeater.ai/guides)

Goldbeater vs

- [Opteo](https://goldbeater.ai/compare/goldbeater-vs-opteo)
- [Optmyzr](https://goldbeater.ai/compare/goldbeater-vs-optmyzr)
- [Google's recommendations](https://goldbeater.ai/compare/goldbeater-vs-google-recommendations)
- [Ryze AI and groas](https://goldbeater.ai/compare/goldbeater-vs-ryze-ai)
- [A PPC agency](https://goldbeater.ai/compare/goldbeater-vs-ppc-agency)
- [Adalysis](https://goldbeater.ai/compare/goldbeater-vs-adalysis)
- [TrueClicks](https://goldbeater.ai/compare/goldbeater-vs-trueclicks)
- [AI tools for Google Ads](https://goldbeater.ai/compare/ai-tools-for-google-ads)
- [All comparisons](https://goldbeater.ai/compare)

Company

- [About Goldbeater](https://goldbeater.ai/company)
- [Security](https://goldbeater.ai/security)
- [Press](https://goldbeater.ai/press)
- [Contact us](mailto:support@goldbeater.ai)

Legal

- [Privacy](https://goldbeater.ai/privacy)
- [Terms](https://goldbeater.ai/terms)
- [Google API disclosure](https://goldbeater.ai/privacy#google-api)

© 2026 [PressRoom, Inc.](https://www.pressroom.ai/) goldbeater.ai
