A UTM builder template gives your team one place to create campaign URLs, agree naming rules, and record where each link will appear. Without that shared record, the same newsletter can arrive in a report under several slightly different names. Use the spreadsheet layout below to build consistent links for email, social posts, partner placements, and other external campaigns.
The template is deliberately small: a destination, a source, a medium, a campaign name, two optional details, and a generated URL. It also includes a review log so someone can check the link before it leaves your team. You do not need a complicated tracking system to stop a capitalization mistake.
What belongs in a UTM builder template?
UTM parameters are labels added to a destination URL. Google Analytics documents them as a way to collect campaign data from custom URLs. They describe the traffic arriving through a link; they do not install Analytics, record a sale by themselves, or establish that a campaign caused a purchase.
Google's campaign URL documentation defines source as the referrer, medium as the marketing medium, and campaign as the promotion or campaign name. Its content parameter distinguishes creatives or placements, while term is intended for paid keywords.
| Column | Field | Example | Rule for this template |
|---|---|---|---|
| A | Destination URL | https://aslanagency.com/ | Use the approved clean landing-page URL. |
| B | utm_source | customer_newsletter | Name the sender, platform, or referring partner. |
| C | utm_medium | Use a controlled list, not free-form descriptions. | |
| D | utm_campaign | autumn_workshop | Keep the same name across this campaign's placements. |
| E | utm_content | hero_button | Optional placement or creative label. |
| F | utm_term | marketing_workshop | Optional paid keyword; leave blank otherwise. |
| G | Campaign URL | Formula output | Protect the formula column from accidental edits. |
| H-K | Owner, placement, QA status, launch date | Sam, newsletter, checked, launch date | Keep these operational notes outside the URL. |
This is a lightweight starting template, not every parameter Google supports. The documentation also recommends setting relevant fields such as campaign ID and source platform. Add separate columns for utm_id and utm_source_platform when your reporting setup needs them, then update and test the formula. In particular, coordinate campaign IDs with any campaign-data import process rather than inventing a second ID list.
Before opening the spreadsheet, write down the campaign's purpose and destination. Our marketing campaign brief template can help keep the tracking name connected to the actual offer and audience.
Copy the UTM builder template into Google Sheets
Create a blank Google Sheet. Paste this tab-separated header row into cell A1. It should populate eleven columns. If the text stays in one cell, use the sheet's split-text option with a tab separator.
destination_url utm_source utm_medium utm_campaign utm_content utm_term campaign_url owner placement qa_status launch_date
Enter your first link's details in A2 through F2. The example uses the public Aslan Agency homepage only as a practice destination; replace it with your campaign's approved landing page before launch. Paste the following formula into G2, then fill it down for later rows. The formula uses English function names and comma separators; some spreadsheet locales require semicolons instead.
=IF(OR(A2="",B2="",C2="",D2=""),"",A2&"?utm_source="&ENCODEURL(B2)&"&utm_medium="&ENCODEURL(C2)&"&utm_campaign="&ENCODEURL(D2)&IF(E2="","","&utm_content="&ENCODEURL(E2))&IF(F2="","","&utm_term="&ENCODEURL(F2)))
The formula stays blank until the four core input cells are filled. It encodes each parameter value and leaves out empty content and term fields. Google's ENCODEURL documentation describes the function as encoding text for use in a URL query string. Do not encode the entire finished URL, because its separators need to remain separators.
Scope matters: this simple formula accepts clean HTTPS destinations only, with no existing question mark, fragment, or tracking parameters. It does not validate the address. Check A2 before using it. If a destination needs an existing query string or a section anchor, use Google's campaign URL builder linked from its documentation, preserve the required destination details, and test the resulting link. Do not remove functional query parameters merely to make the spreadsheet work.
For example, a product selector may depend on a parameter already in its address. Pasting that address into this formula would add a second question mark. A section anchor also needs careful placement. Those are reasons to use a tool that handles the complete URL, not reasons to guess at punctuation.

Set naming rules before making more links
Google notes that parameter values are case sensitive: google and Google are different values. Pick one style and enforce it. Lowercase names with underscores are a workable house convention, not a Google requirement or an automatic fix for attribution.
Make a small reference tab with approved sources and mediums. For an email newsletter, a source such as customer_newsletter and a medium of email describe different things. The source identifies the sender; the medium identifies the channel. Putting the newsletter's issue name in both fields makes comparisons harder later.
- Keep campaign names stable across placements that belong to the same initiative.
- Use content for the difference you actually want to compare, such as
hero_buttonversusfooter_link. - Give recurring initiatives a documented naming pattern so different launches do not accidentally share one campaign label.
- Save approved values in dropdowns where possible, and assign one person to approve new values.
Do not assume any invented medium will produce your preferred default channel. Google's default channel group definitions use documented rules and distinguish email, paid social, organic social, referral, and other traffic. Raw source and medium labels and the resulting channel group are related, but they are not the same report field. Check the current rules and verify your actual reporting output.
★★★★★5-star client feedback
Give every campaign link a clear reporting purpose
Bring your current URL tags and campaign plan so we can identify naming gaps before your next launch.
UTM builder template examples for a single campaign
Imagine a fictional workshop promotion. The landing page and campaign name stay the same, while source, medium, and content describe where the link appears. These are illustrative naming choices, not observed campaign results.
| Placement | Source | Medium | Campaign | Content |
|---|---|---|---|---|
| Customer email's top button | customer_newsletter | autumn_workshop | hero_button | |
| Customer email's bottom link | customer_newsletter | autumn_workshop | footer_link | |
| Partner newsletter | partner_newsletter | autumn_workshop | editorial_mention |
The first row produces this URL when A2 contains the practice destination:
https://aslanagency.com/?utm_source=customer_newsletter&utm_medium=email&utm_campaign=autumn_workshop&utm_content=hero_button
Keep the actual placement in column I too. A label such as hero_button is useful only if someone can find that button later. Record the send or placement alongside the label, especially when creative changes during a campaign.
For paid advertising, coordinate with whoever owns the account before adding manual tags. Treat platform-generated click identifiers and your manual naming plan as a coordinated setup; do not replace a working account configuration with this general-purpose spreadsheet.
Check the destination and tracking before launch
A syntactically tidy URL can still point to the wrong page. Have a second person open the finished link, confirm the offer, and inspect the address after any redirects. Do this from the actual email or placement preview when possible, because the delivery platform may wrap links.
- Confirm A2 is the approved HTTPS destination and fits the formula's clean-URL scope.
- Check source, medium, and campaign against the naming reference tab.
- Read the generated URL and confirm optional fields appear only when intended.
- Open the link and check that the intended page loads on desktop and mobile.
- Confirm redirects retain the parameters needed by your measurement setup.
- Run a test visit under your normal consent settings and check the relevant Analytics diagnostic or reporting view.
- Record who checked the link and set the QA status before launch.
Do not interpret a missing visit as proof the formula is broken. Consent choices, blockers, collection settings, filters, and processing can affect what you observe. Check the URL and measurement setup separately. The GA4 audit checklist provides a broader tracking review when the page loads correctly but reporting still looks wrong.
Keep personal data out of campaign labels. A person's email address, phone number, or customer identifier does not belong in these example fields. Use descriptive campaign and placement names instead. Avoid copying signed, private, or expiring URLs into a shared campaign sheet.

Keep the template useful after launch
Freeze the approved campaign labels once links are in circulation. If you discover an error, record the old and corrected values so the reporting team can interpret both. Quietly renaming one row does not change copies already sent in an email.
Review results at the level the decision needs. A comparison of two email placements should hold the campaign and source definitions steady. A comparison of partners needs consistent time windows and an agreed outcome. UTM labels help organize those comparisons; they do not remove differences in audience, exposure, or other influences.
Archive completed launches rather than deleting the rows. Keep the naming reference short, retire values deliberately, and review it before the next campaign. For businesses and individuals managing a few channels, a well-kept sheet is often the right starting point. Add automation only when there is a specific recurring mistake or workload it would solve.
Start with one real campaign, build every required link, and ask a teammate to follow the review checklist without explanation. If they cannot tell which row belongs to which placement, fix the labels before creating more of them.
★★★★★5-star client feedback
Turn scattered UTM tags into a repeatable campaign workflow
Get a focused review of your naming rules, link checks, and reporting handoff for your next campaign.



