To tell marketplace-driven visits apart from social media visits, add UTM parameters to every link you control and write the source, medium and campaign the same way every time. Google's Google Analytics Help page on custom campaign URLs (Opens in a new tab) says to always use utm_source, utm_medium and utm_campaign when you add parameters, and it states that parameter values are case sensitive.
Writing a tag takes seconds. Keeping the spelling identical across a team and across months is the real work. If one colleague types Instagram and another types instagram, your report splits one channel into two rows. If you also report on placed articles, see reporting on sponsored posts with UTM, GA4 and Search Console for that narrower case.
The parameters you need, and what they mean
A UTM tag is a set of name and value pairs added after the question mark in a URL. The browser sends the full address to your analytics code, and the analytics tool sorts the session using those values. The formatting rules in Google's documentation are short: separate the parameters from the address with a question mark, write each pair as name=value, join pairs with an ampersand (&), and know that the order of parameters does not matter.
Source, medium and campaign come first
The documentation does not formally label any parameter as required. It does say that when you add parameters you should always use utm_source (the referrer), utm_medium (the marketing medium) and utm_campaign (the product, slogan or promo code). It also strongly recommends setting utm_id and utm_source_platform. In practice, treat three as mandatory and the rest as additions you make when they help.
| Parameter | Meaning in Google's documentation | How you might use it for social and marketplace links |
|---|---|---|
| utm_source | The referrer | Where the click came from: instagram, youtube, newsletter, store-profile |
| utm_medium | The marketing medium | A broad class: social, email, cpc, referral |
| utm_campaign | Product, slogan or promo code | The campaign or content series: spring-launch, gift-guide |
| utm_id | Identifier of a specific campaign or promotion | The row number from your campaign list, so renamed campaigns still match |
| utm_source_platform | Platform that directs traffic, such as a buying platform or organic traffic manager | The management tool or ad platform, when one is involved |
| utm_term | Paid keyword | Mostly for paid search links |
| utm_content | Differentiates creatives, such as two call-to-action links in one email | Tells apart two links in one post or two images in one campaign |
The page also defines utm_creative_format and utm_marketing_tactic, and it notes that Analytics properties do not currently report them. Filling them in does no harm for your own records, but do not expect to see them in reports. Parameter lists can change, so check the current page before you build a template around them.
How an incomplete tag shows up
The documentation says that missing UTM parameters result in (not set) values in reporting. Forgetting one of the three core parameters therefore quietly damages that session's row. Checking that all three are filled before a link goes live costs far less than hunting for incomplete rows later.
Another detail from the same page: UTM parameters are left out of the "Landing page + query string" and "Page path + query string" dimensions, and appear in the "Page location" dimension instead. If you cannot find tagged addresses in a page report, look at the dimension before you suspect a broken setup. Interface labels may change over time, so confirm names in your current Analytics screen.
Builders versus a shared sheet
Google offers a campaign URL builder for websites and also lets you add parameters manually. A builder reduces typing mistakes. A shared sheet that generates every link from the same list of allowed values prevents the larger problem, where each person invents their own spelling.
Writing values the same way every time
A tagging system succeeds or fails on how values are written. The documentation states that utm_source=google and utm_source=Google are different values, and its best-practices section recommends lowercase for all fields while treating Meta and meta as distinct. Those two facts lead to a direct rule: write everything in lowercase.
Habits that stop values drifting
- Use lowercase only. Write "instagram", never "Instagram".
- Join words with hyphens and avoid spaces and accented characters, so an address looks the same in every tool.
- Keep a closed list of allowed values for each field. Adding a value should mean adding a row to the sheet.
- Do not mix source and medium. Source is a place, medium is a type. Instagram is a source; social is a medium.
- Name campaigns by topic, not by date. If you need the date, link the campaign to a number in your campaign list through utm_id.
The Google page does not discuss spaces in values, so choosing hyphens over spaces is a cautious habit rather than a documented requirement. It also says nothing about adding UTM parameters to links between pages of your own site. Since the parameters describe where a visitor came from, tagging internal navigation tells the report nothing useful and invites confusion. That is an editorial recommendation, not a statement from Google.
Lookup table sample
The table below is an example. Adapt it to your channels. What matters is that the choices are written down and everyone picks from the same list.
| Placement | utm_source | utm_medium | utm_campaign example | utm_content example |
|---|---|---|---|---|
| Link in an Instagram bio | social | bio-evergreen | bio-main-link | |
| Link sticker in a story | social | spring-launch | story-sticker | |
| First line of a YouTube description | youtube | social | product-demo-series | description-top |
| Email newsletter button | newsletter | spring-launch | header-button | |
| Paid social creative | paid-social | spring-launch | image-b | |
| Website link on a marketplace store profile | marketplace-store | referral | store-profile | profile-link |
Using a value such as "paid-social" for medium separates paid from organic social into different rows. Google's page does not recommend that exact value; it is a team decision based on what you need to report. Whatever you choose, write it in the sheet and use it consistently.
A log entry for each tagged link
Every link deserves a row in a log: the full address, publication date, the person who published it, and the campaign number it belongs to. Before publishing, open the link and check that the parameters survive in the address bar. Some shorteners and redirects may drop query strings; the documentation says nothing about this, so test your own links.
Example scenario: a small coffee roaster plans a monthly newsletter and weekly social posts. Each placement gets a row in the log. When the same new blend is promoted in both a story and the bio, the two links carry different utm_content values. At month end, the owner reads which placement sent more visitors from the sheet instead of guessing.
Ownership and sign-off
Leaving ownership vague is the most common reason a standard drifts. One person should manage the lookup table, and anyone who wants a new value asks that person. Before adding a value, check whether an existing one already does the job, because many near-duplicate values make reports harder to read.
If an agency, creator or freelancer publishes links for you, give them a ready tagged address rather than expecting them to type it. A ready address reduces both errors and back-and-forth. Asking them for the published URL afterwards keeps your log complete.
When you open a new channel, add its source and medium to the table before the first link goes live. Doing it in the opposite order lets inconsistent tags pile up in the channel's first week. When you close a channel, keep the value in the table and mark it as retired so older reports stay readable.
Link in bio, stories and captions
The places where social platforms let you put a link are limited, and each platform sets its own rules. This section is about tagging logic. Whether a given placement accepts a link, or rewrites it, should be checked against that platform's current help pages.
A single address that lasts
A bio normally holds a single address, so its tag stays unchanged for a long time. Give it a permanent campaign name such as bio-evergreen and use utm_content to separate buttons if you route the bio through a link tool. A multi-button page under one address still gives you separate rows when each button has its own utm_content.
If the bio points to a campaign page, update the address when the campaign ends. A permanent link that lands on a 404 or an irrelevant page loses both the measurement and the visitor. For ideas on pairing placed articles with social distribution, see sponsored posts with social media sharing.
Stories and other posts that expire
Stories are visible briefly and can be numerous. Instead of inventing a new campaign name for each, use utm_campaign for the series and utm_content for the position or sticker. If you publish ten stories a week, the report then shows ten variants of one campaign rather than ten unrelated campaigns.
Before you publish, open the story link on a phone and confirm that the tagged address loads and the page works on mobile. In-app browsers can behave differently from a normal browser, and seeing it yourself catches the problem before visitors hit it.
Descriptions under videos and posts
In descriptions and captions the link often sits as visible text. Two risks follow: a very long address looks untrustworthy, or shortening it strips the parameters. The fix is to shorten the tagged address, open the short version, and confirm that it resolves to the same parameters.
Tell the reader what they will find before the link. Google's Google Search Central guidance on crawlable links (Opens in a new tab) says a crawlable link is an a element with an href that resolves to a real web address. Its examples of resolvable addresses include one with a query string. A UTM address on your own page is therefore not a crawling problem. The same page also marks generic anchor text such as "click here" as a poor example, which applies to descriptive links on your own pages as well.
| Placement | Tagging approach | Check |
|---|---|---|
| Bio | Permanent campaign, separate content per button | Open the destination every month |
| Story | Series name as campaign, order or sticker as content | Open on a phone and confirm parameters remain |
| Video description | Series or video as campaign, description position as content | Open the shortened address and read the resolved one |
| Post caption | Post topic as campaign, link order as content | Click once after publishing |
When the visit starts on a marketplace
The most important distinction is this: you can write a UTM tag only on a link you control. Visitors who browse product pages inside a marketplace never reach your site, so your analytics code cannot see them. The phrase "measuring marketplace traffic with UTM" therefore mixes together several different situations.
Separating three cases
- Visitors who stay in the marketplace. The marketplace's own reports cover them. A tag on your website has nothing to do with them.
- Placements where you may link from the marketplace to your site. A store profile website field, a message or an insert card might qualify. Which of these are allowed depends on each marketplace's rules, so confirm in its current seller documentation.
- Visitors who come from your site to the marketplace to buy. A UTM tag can follow them only until the outbound click. After that, the marketplace's own reporting takes over.
Google's documentation says nothing about marketplace rules. Which marketplace permits outbound links in which field is set by each platform, and rules change, so note the date when you check.
Tagging a permitted link for good
When a marketplace lets you place a website address on the store profile, tag it once: the marketplace name as source, referral as medium, store-profile as campaign. If you may link in several places, separate them with utm_content. If linking is prohibited, do not try to force a tag. Measure by other means instead.
Where outbound links are not permitted, indirect signals remain: organic search for your brand name, direct visits, and brand-name searches in the marketplace's own sales reports. These are less exact than UTM. Keep them under a separate heading in your report called "indirect signals" so no one reads them as precise counts.
Two rules for cleaner reports
- Do not add marketplace sales figures to website analytics figures in one table. The two systems define their numbers differently.
- Keep tagged and untagged marketplace-related traffic on separate rows. A tagged row is exact; an untagged row is an estimate.
- Do not assume visitor counts from a marketplace link will track the sales count in the marketplace.
This split also prevents the most common error in management meetings. The question "how many people came from the marketplace to our site?" can only be answered exactly for tagged links. Everything else is an estimate and should be presented as one.
Reading reports to confirm the tags work
Once tags are live, confirm they appear correctly. Teams that skip this step find months later that source names drifted apart. Do a first check a few days after launch and a second one at month end.
Pair sessions with key events
Visit counts mean little without the action you care about. Google's key events documentation (Opens in a new tab) says a key event measures an action that is particularly important to your business, and that reports such as Landing pages and User acquisition show a "Key events" column. The page gives only a high-level flow and no menu steps, so check the current Analytics screen for exact names.
When reading by source, ask a simple question: does an instagram/social row bring many sessions but few key events? Then the problem is the landing page or the message, not the tagging. The reverse can also hold: a source with modest traffic and a high key event count may deserve more budget than a loud source that converts poorly.
Review checklist
- Are utm_source, utm_medium and utm_campaign filled on every tagged link?
- Does any campaign show (not set) in the report?
- Is one source split across several spellings, such as Instagram, instagram and ig?
- When searching for tagged addresses in a page report, are you looking at the Page location dimension?
- Does every tagged link have a row in the log?
- Are tagged and untagged marketplace-related visits on separate rows?
- Are key events read by source?
Rows you did not expect
If a source or medium shows up that you do not recognise, compare it with your lookup table first. If it is not there, someone typed a link by hand or another team used its own tags. To understand sessions that land in no channel at all, see GA4 unassigned traffic: causes and fixes. To see how untagged organic visits sit next to tagged channels, analyzing organic traffic in GA4 is a useful companion.
Rather than trying to merge old rows after the fact, fix the tags going forward. Links already published often cannot be changed. Add a note to your reports: "Before this date, source names were spelled inconsistently." That one line prevents wrong conclusions in later comparisons.
Upkeep schedule
| How often | Task | Who |
|---|---|---|
| With every new link | Generate the tag from the sheet, fill the log, open the link before publishing | Whoever publishes the link |
| Weekly | Scan reports for (not set) and unrecognised sources | Analytics owner |
| Monthly | Compare source spellings and key event rates by source | Marketing manager |
| Quarterly | Review the lookup table and retire unused values | Team meeting |
Choosing a tag for a link
Ask the same questions for every link and write the answer into the sheet. The rule looks simple on paper, but it is what stops mistakes as the team grows.
- Do you control the link? If not, because it sits in a marketplace page or a field that is not permitted, do not write a UTM tag. Measure another way.
- Is the link between pages of your own site? If yes, do not add a source tag.
- If the link brings visitors from an outside channel to your site, write utm_source, utm_medium and utm_campaign, choosing values from the table.
- If one channel carries several links, separate them with utm_content.
- If your campaign list has a number, fill utm_id.
- Before publishing, open the link and confirm that the parameters are intact.
The strength of this order is that you do not have to reopen the question of whether a link needs a tag each time. If the answer appears in the first two steps, the process ends there.
Mistakes and their fixes
| Mistake | Result | Fix |
|---|---|---|
| Spelling one source two ways (Instagram, instagram) | Separate rows, split traffic | Lowercase rule and a closed list of values |
| Skipping one of the three core parameters | (not set) values | Check all three before publishing |
| Tagging links between your own pages | Source meaning blurred, reports harder to read | Leave internal links untagged |
| A shortener dropping parameters | Traffic looks untagged | Open the short link and read the resolved address |
| Believing a site tag measures marketplace-only visits | False confidence, missing data | Report tagged and indirect signals separately |
| No log of tagged links | Nobody knows later which link is which | A link log with publication dates |
Most of these mistakes are about process, not technology. Tagging tools are cheap and easy; getting everyone to follow one rule is the hard part. Writing the standard down, sharing it, and showing it to every newcomer on day one resolves most of the difficulty.
Example: a four-week outdoor gear launch
Example scenario: a store that sells camping gear sells through a marketplace and its own website. It launches a new sleeping bag range and wants to know which channels send visitors to the range page and how many of those visitors complete a key event. The campaign name is trail-bags, and the campaign list holds a number for it.
Week 1: agree the rules
Before any link goes out, the team writes the lookup table, lists channels, and fixes the allowed values. The bio link is tagged once and tested in a browser. If the marketplace permits a website field on the store profile, that address is tagged this week as well; if it does not, the row is noted as "untagged, indirect signal".
Weeks 2 and 3: publish, then monitor
Each new story, post and newsletter link gets a log row with address, date, publisher, campaign number and utm_content. The weekly check looks for (not set) and for sources that do not match the table. If a story link carries a wrong source spelling, the team notes it in the report instead of reposting, because the story has already been seen.
Week 4: wrap up and compare
At the end, the report is read by source and medium. Which source sent many sessions, which sent visitors who completed key events, and are they the same? Results go into two tables: tagged, measurable results and indirect signals. Indirect signals show direction only and are not presented as exact figures. The next campaign's budget discussion uses both tables side by side.
| Week | Main task | Output |
|---|---|---|
| 1 | Lookup table, bio tag, marketplace profile decision | Approved source and medium list |
| 2 | First stories and posts, each with a log row | A filled link log |
| 3 | Weekly (not set) and spelling check, noting errors | Clean source names |
| 4 | Closing read, tagged versus indirect signals | Decision note and a proposal for the next campaign |
What the example teaches
- Tagging is a habit repeated with every publication, not a one-time setup.
- A tag without a log is nearly useless; three months later nobody remembers where a link was placed.
- A marketplace sale does not enter the website report. Keep the two worlds apart in the closing meeting.
- When you notice an error, update the rule and add a note rather than rewriting history.
Frequently Asked Questions
Which UTM parameters are required?
Google's documentation does not formally label any parameter as required, but it says that when you add parameters you should always use utm_source, utm_medium and utm_campaign. It also strongly recommends utm_id and utm_source_platform. Missing parameters produce (not set) values in reports.
Are UTM values case sensitive?
Yes. The documentation says parameter values are case sensitive and treats utm_source=google and utm_source=Google as different. Its best-practices section recommends lowercase for all fields.
Should I add UTM tags to links between pages of my own site?
Google's page does not address internal links. Because UTM describes the referrer that sent a visitor, tagging links between your own pages adds no useful meaning and can confuse reports. That is a practical recommendation, not a documented rule.
Can UTM measure traffic from a marketplace to my website?
Only on a link you control and where the marketplace allows an outbound address. Visitors who stay inside the marketplace cannot be measured by a tag on your site. Which fields allow outside links depends on the marketplace's current rules, which you should confirm in its seller documentation.
How many tags does a link-in-bio need?
One permanent campaign name is enough for a single address. If you route the bio through a multi-button link tool, give each button its own utm_content so you can see which destination was clicked.
How do key events appear next to UTM data?
According to Google's documentation, key events appear as a Key events column in reports such as Landing pages and User acquisition. The page gives no detailed menu steps, so check your current Analytics screen for exact names.
My tagged address is missing in the page report. Is something broken?
Not necessarily. Google's page says UTM parameters are omitted from the Landing page + query string and Page path + query string dimensions and appear in Page location instead. Check the dimension before you suspect the tag.
Related guides: Reduce Marketplace Dependence in 90 Days, Open Graph Tags: Get the Shared Link Preview Right, How to Build a Link-in-Bio Page.
Conclusion
Separating marketplace and social traffic comes down to two habits: writing the three core UTM parameters by one rule on every outside link you control, and never mixing places you cannot tag with tagged measurement. Lowercase values, hyphens, a closed list and a link log decide the quality of your reports.
Once the tagging routine is stable, the next step is reading tagged traffic together with key events to see which channel leads to the actions that matter. If you want to publish content on outside sites and measure the traffic with this routine, you can review the Akua Adforce guest post service.
Post a comment
Please log in to leave a comment. Login