UTM Parameters: Define Conventions That Make Acquisition Reports Usable
Proposed canonical path: /en/blog/utm-conventions-acquisition-reports/
Define a usable UTM convention before a link is published: one controlled value for each platform in utm_source, one controlled distribution type in utm_medium, and one stable initiative name in utm_campaign. Add utm_content only when the creative, placement, or format changes a decision, and use utm_term only for a keyword or non-personal audience code that the team will genuinely analyse. The point is not to make URLs longer. It is to stop Meta, meta, and facebook becoming three separate rows that nobody can compare.
The topic plan notes limited database volume in Ahrefs Morocco for “UTM parameters.” This is an Ahrefs estimate for Morocco as of 22 October 2026, not a forecast of rankings, traffic, leads, or business results. The operational gap is still real when several people publish links, buy media, or depend on a shared acquisition report.
Start with the decision, not the URL builder
A tag is valuable only when someone can use the report it produces. Before choosing a label, write a specific management question: “Which campaign delivered confirmed enquiries?”, “Which link within this email received clicks?”, or “Which partner sent visits to this offer page?” A broad instruction such as “track everything” usually produces fields that nobody reviews.
Google Analytics maps manually tagged parameters to traffic-source dimensions. That means utm_source, utm_medium, utm_campaign, utm_term, and utm_content can populate manual dimensions for a session or a first user. See Google’s documentation on traffic-source dimensions, manual tagging, and auto-tagging for the mapping.
Create a small measurement brief
For every meaningful activity, document the decision supported, the event or business status expected, the analysis window, the owner, and the system that is the source of truth. A team may connect a submitted enquiry with its later status in a CRM. The UTM then describes the declared source of a click; the CRM describes commercial progress. Neither one alone turns a correlation into proof that one channel caused a sale.
This step also stops an ad name from becoming an analytics definition. Creative wording may change frequently. An initiative name must remain understandable after staff changes, a platform interface is reorganised, or a reporting export is reopened months later.
Give every parameter one fixed job
Not every environment needs every parameter, but a team should decide which fields are required for its manual links before anyone types them. Google recommends using utm_source, utm_medium, and utm_campaign on campaign URLs, and its URL builder guidance defines the available fields.
The comparison layer: source, medium, campaign
utm_sourcenames the sender or platform, such aslinkedin,newsletter, orpartner_name. Keep one source value for a given platform rather than switching between aliases.utm_mediumdescribes the chosen distribution type, such aspaid_social,email,affiliate, orreferral. Do not usepaid-social,social_paid, andpaidsocialto mean the same thing.utm_campaignidentifies the initiative you want to group, such as2026q4_demo_request,2026q4_webinar, or2026q4_shipping_offer. It should not become improvised ad copy.
UTM values are case-sensitive in Google Analytics. A convention of lowercase ASCII words separated by underscores helps prevent entry differences. That is a practical governance choice, not a universal platform requirement.
Detail fields: content, term, and ID
Use utm_content for a difference you are prepared to compare: video_15s, carousel, hero_cta, or footer_link. Two email links that lead to the same page can remain in the same campaign while still being distinguishable. utm_term suits a paid keyword or, where governance explicitly defines it, a non-personal audience code. Do not put an email address, name, telephone number, customer identifier, or other information that could identify a person into a URL.
utm_id can be useful when the organisation already maintains a stable campaign ID in a media plan or data import. utm_source_platform can describe a buying or management platform. Do not invent granular values simply because fields exist; each value should serve a known report, reconciliation, or decision.
Turn the convention into a shared dictionary
A slide deck is not enough to prevent drift. Maintain a record that people can check before publishing: allowed source and medium values, the definition of every field, valid examples, retired values, the rule owner, and the date of each change. A governed spreadsheet or a short internal URL-generation form is enough at first if it stops uncontrolled free text.
A readable pattern
An internal convention for a social campaign that drives demo requests might produce:
https://www.example.com/request/?utm_source=linkedin&utm_medium=paid_social&utm_campaign=2026q4_demo_request&utm_content=single_image
This is a naming pattern, not a recommendation for a particular platform or offer. Your domain, landing page, permitted values, and definition of success must come from your own plan.
Avoid spaces, ambiguous separators, and unencoded reserved characters in values. In a URL, the first question mark begins the query, & separates pairs, and = joins a key to a value. The query component and percent-encoding are defined in IETF RFC 3986. A builder can reduce punctuation errors or encode an appropriate value; it cannot decide which business label is correct.
Choose the level of detail deliberately
Ask whether knowing the value would change an action. If the team cannot choose differently between three placements of the same creative, do not add them to utm_content. If it needs to compare a video with an image within the same initiative, the field is useful. Excess detail fragments reporting into thin rows; too little hides a difference the team could act on.
A tracking and analytics service can connect the naming dictionary to events, live-link tests, and acquisition reporting. If the blockage is really about priorities, audiences, or the definition of campaign initiatives, discuss the digital strategy scope before automating more names.
Keep manual tagging separate from auto-tagging
Email, partner, organic social, and platforms without an applicable integration may need manual UTMs. Do not assume, however, that manually adding parameters replaces the native measurement design of an advertising platform.
Google Ads: preserve and test GCLID
Google Ads auto-tagging appends the GCLID parameter. Google says it is on by default for new accounts, that GA4 prioritises auto-tagging over manual tagging, and that redirects should pass GCLID through to the final landing page. Read Google Ads’ auto-tagging documentation before deciding how a connected account will be measured.
Make two separate decisions: which non-integrated channels use manual campaign parameters, and how linked Google Ads data will be read. If UTMs are added to an auto-tagged URL, record why and inspect the delivered URL. An untested mix can leave unexpected values or incomplete dimensions.
Meta Ads: inspect the delivered URL
Meta Ads Manager supports static and dynamic URL parameters. Meta explains that values entered in the URL Parameters field can override duplicate values in the Website URL, and that parameters apply to the first product page. See Meta’s instructions for adding URL parameters. Do not copy a dynamic macro from Meta into another platform: its syntax and replacement timing are platform-specific.
Use the preview, open the rendered link, and retain the final string in the campaign record. A platform naming change may alter a dynamic value and split reporting. Where a campaign needs to be compared over time, a stable, approved value can be easier to interpret than a changing platform label.
Validate before publication and after data arrives
Do not wait for a monthly dashboard to discover naming failures. Add a short release review, then inspect a few actual rows after the first data is available.
Pre-publication checklist
- Open the final URL from a live-like environment, including any redirect.
- Confirm there is one value per key and no empty value.
- Match source, medium, and campaign against the approved dictionary.
- Check that the page opens, the necessary parameters survive the journey, and the next action is correct.
- Save the URL, publish date, owner, and approved campaign name.
Google cautions that, when a UTM is present, relevant parameters should be completed to reduce (not set) values in reporting. That does not mean filling meaningless fields. It means an incomplete manual campaign URL is difficult to interpret.
Review acquisition reporting in the right dimension
In GA4, choose session-level dimensions that answer the question, such as Session source/medium and Session campaign, in Traffic acquisition. Do not expect UTM values in Landing page + query string or Page path + query string. Google says UTM information is omitted from those dimensions and instead appears in Page location. Sample expected rows, unknown values, case variants, and (not set) rows.
When you find a problem, correct the rule and source link rather than only recoding a reporting row. A later normalisation rule may make historic reading easier, but it does not repair the tagging that future campaigns will use.
Limits: what UTMs cannot prove
A UTM records the source declared in a link. It does not guarantee that a session will be collected, that a person will consent to measurement, that they will remain on one device, or that a later sale resulted from that one interaction. Redirects, browser and consent settings, blockers, cross-domain journeys, and different tool windows can all affect what is observed.
Platform, analytics, and CRM counts may therefore differ. Before deciding that a tool is wrong, compare the definition, time range, scope, event, and identity level. Keep personal data out of URLs because URLs can pass through logs, browsers, referrers, and third-party tools. Where implementation involves consent rules or data policy, have the work reviewed by the appropriate people for your context.
If campaign owners, site owners, and CRM users need to agree on a shared implementation, request a quote with the current convention, examples of reports, and the priority journeys to test.
UTM parameters FAQ
Should we add UTMs to every link on our website?
No. Tag links when you need to identify a controlled external acquisition effort or distribution activity. Adding UTMs to internal links can overwrite or confuse session attribution and make reporting less clear. Document exceptions rather than applying a blind rule to every link.
What is the difference between utm_source and utm_medium?
Source normally answers “who or which platform sent the visit?” Medium answers “through what distribution type?” For example, linkedin as source and paid_social as medium. The useful definitions are the ones your team records and applies consistently.
Must we use Google Analytics labels exactly as written?
Use a stable taxonomy that your organisation can read, then verify how it works in your channel groups and reports. Google recommends one unique source and medium for each platform or channel. Do not rename years of history without a comparison plan, or period-over-period reading may become misleading.
Do Meta dynamic parameters remove the need for a convention?
No. They can insert values automatically in Meta, but their syntax is platform-specific and the output must be checked. The convention decides which values are allowed and at what level; a dynamic parameter only inserts a value.
Why is one campaign split across several report rows?
Possible causes include a case difference, different separators or spelling, a changed dynamic value, uncontrolled URLs, or a mixture of manual tagging and an integration. Inspect actual published URLs and the naming dictionary before aggregating the data or making a claim about channel performance.
Sources
- Google Analytics — URL builders: Collect campaign data with custom URLs
- Google Analytics — Traffic-source dimensions, manual tagging, and auto-tagging
- Google Ads — About auto-tagging
- Meta Business Help Center — Add URL parameters to your Meta ads
- IETF — RFC 3986: Uniform Resource Identifier Generic Syntax