How to Add UTM Parameters to Your Instagram Bio Link (2026)

TL;DR:
  • Append UTM parameters to your destination URL: ?utm_source=instagram&utm_medium=bio&utm_campaign=name
  • Paste the full URL in your Instagram bio Links editor ??” it'll work.
  • Then check Google Analytics ?†’ Acquisition ?†’ Source/Medium ?†’ filter instagram / bio to see Instagram-attributed traffic.
  • Best practice: use a bio link tool with auto-UTM (UniLink, Linktree Pro) so every button passes consistent UTMs without you maintaining them manually.

What Are UTM Parameters?

UTM (Urchin Tracking Module) parameters are tags appended to URLs that tell Google Analytics where a visitor came from. Standard parameters:

ParameterPurposeExample
utm_sourceWhere (platform)instagram
utm_mediumWhat kind of linkbio, story, post
utm_campaignSpecific campaignspring-launch
utm_contentVariant within campaigna, b (for A/B tests)
utm_termPaid keyword (optional)Usually omitted for organic social

Step-by-Step

1 Start with your destination URL: https://example.com/landing
2 Append UTMs: ?utm_source=instagram&utm_medium=bio&utm_campaign=spring
3 Final URL: https://example.com/landing?utm_source=instagram&utm_medium=bio&utm_campaign=spring
4 (Optional but recommended) Shorten via Bitly or unil.ink ??” the bio displays a clean short URL while UTMs work behind the scenes.
5 Paste in Instagram ?†’ Edit profile ?†’ Links ?†’ Add external link.

Tools to Build UTM URLs

  • Google Analytics Campaign URL Builder (free) ??” official Google form.
  • UTM.io ??” store and reuse UTM templates.
  • Built-in in your bio link tool ??” UniLink and others auto-add UTMs to every button click.

Naming Convention

Consistency matters. Instagram, instagram, and IG are different sources in GA ??” pick one and stick with it.

Standard scheme:

  • utm_source=instagram (always lowercase, no abbreviation)
  • utm_medium=bio | story | post | reel (location of link)
  • utm_campaign=descriptive-slug (use hyphens, lowercase, e.g., spring-launch, black-friday)
  • utm_content=variant-id (only when running A/B)

Reading the Data in Google Analytics

GA4: Reports ?†’ Acquisition ?†’ Traffic acquisition ?†’ filter dimension to "Session source / medium" ?†’ search "instagram / bio".

You'll see:

  • Sessions from Instagram bio.
  • Engaged sessions / engagement rate.
  • Conversions (if events are configured).
  • Revenue (if e-commerce tracking is set up).

Cross-reference with utm_campaign dimension to compare campaign performance.

Common UTM Mistakes

MistakeResultFix
Inconsistent capitalisationSplits one source into multiple GA rowsAlways lowercase
Spaces in valuesURL breaks or shows %20Use hyphens or underscores
Missing utm_sourceGA shows traffic as "direct" or "(not set)"Always include source + medium minimum
UTMs on internal linksResets attribution mid-funnelUTM only outbound (Instagram ?†’ site)
Long URLs visible in bioLooks uglyShorten with bit.ly or unil.ink ??” UTMs preserved

Bio Link Tool with Auto-UTM

If you have multiple destinations behind your bio link, manually maintaining UTMs is painful. Bio link tools like UniLink, Linktree Pro, Beacons can auto-add UTMs:

  • One global rule: every click on this page passes ?utm_source=instagram&utm_medium=biolink.
  • Per-button overrides for specific campaigns.
  • Saves hours and prevents human-error UTM typos.

FAQ

Does Instagram support UTM parameters?

Yes ??” they're appended to your URL, which Instagram passes through unchanged.

Will UTM parameters break my Instagram link?

No, but Instagram may flag URLs with too many parameters as spammy. Shorten the URL to keep it clean.

Can I see UTM data without Google Analytics?

You can with bio link tools that show UTM dimensions in their analytics, or with custom server logs.

What if my destination strips UTMs?

Some platforms (notably Substack until recently) strip query parameters. Check your destination ??” paste a UTM-tagged URL and inspect what arrives.

How specific should utm_campaign be?

Granular enough to compare campaigns (e.g., spring-2026-launch not just spring) but not so granular you can't aggregate (avoid timestamps).


Key Takeaways
  • Append ?utm_source=instagram&utm_medium=bio&utm_campaign=name to your destination URL.
  • Shorten the resulting URL for cleaner display in bio.
  • Use lowercase, hyphens, consistent naming. View results in GA ?†’ Acquisition.
  • Auto-UTM via bio link tool removes manual maintenance.

Auto-UTM on every bio link click

UniLink auto-adds UTM parameters to every button ??” no manual tagging, no typos, full GA visibility.

Try UniLink free ?†’