October 12, 2026 · English
UTM parameters for Instagram comment-to-DM and Story auto reply links
UTM parameters for Instagram comment-to-DM and Story auto reply links: naming convention, utm_source/utm_medium examples and a spreadsheet checklist.
When someone comments a keyword and gets a link in their DMs, that click is one of the highest-intent visits your website will see. Yet in most analytics tools it shows up as "instagram / referral" or, worse, "direct" — lumped together with bio clicks, Stories, and everything else.
UTM parameters fix that. A few consistent tags on every link your instagram automation sends let you see which keyword, post and flow actually drove visits, sign-ups and sales. This guide gives you a naming convention you can copy, examples for comment to DM and Story auto reply links, and a spreadsheet checklist to keep it tidy.
A quick refresher on UTMs
UTMs are small tags added to the end of a URL. Analytics tools (Google Analytics 4 and most others) read them and group visits accordingly. The five standard parameters:
| Parameter | What it answers | Example |
|---|---|---|
utm_source |
Where did the click come from? | instagram |
utm_medium |
What kind of channel? | dm |
utm_campaign |
Which campaign or offer? | spring_guide_2026 |
utm_content |
Which specific post, flow or keyword? | reel_0412_guide |
utm_term |
Optional — the keyword or variant | guide |
A full link looks like:
https://example.com/guide?utm_source=instagram&utm_medium=dm&utm_campaign=spring_guide_2026&utm_content=reel_0412&utm_term=guide
Why DM links need their own medium
Instagram already sends traffic through several doors: your bio link, Stories link stickers, ads, and now automated DMs. If they all use utm_medium=social, you can't tell them apart.
Giving automated DM links their own medium (dm) separates the conversations your automation starts from the rest of your Instagram traffic. Then utm_content tells you which flow sent the click.
A naming convention you can copy
Pick rules once, write them down, and never improvise. A convention that works for most teams:
- Lowercase only.
Instagramandinstagramshow up as two sources in many tools. - Underscores, no spaces. Spaces become
%20and get messy. utm_source=instagramfor every Instagram link — neverig,instaorIGon some links.utm_mediumdescribes the automation type:dmfor comment-to-DM flowsstory_replyfor Story auto reply flowsdm_keywordfor keywords people type straight into DMsbiofor your bio link (not automation, but keep it consistent)utm_campaign= offer or campaign + period, e.g.bfcm_2026,lead_magnet_checklist,webinar_nov.utm_content= format + date + short label, e.g.reel_1105_guide,story_1108_price,carousel_1112_faq.utm_term= the trigger keyword, when you test more than one (e.g.guidevschecklist).
Examples by flow type
Comment-to-DM on a Reel
https://example.com/checklist?utm_source=instagram&utm_medium=dm&utm_campaign=lead_magnet_checklist&utm_content=reel_1105_checklist&utm_term=checklist
Story auto reply (reply-to-Story keyword)
https://example.com/sale?utm_source=instagram&utm_medium=story_reply&utm_campaign=bfcm_2026&utm_content=story_1127_early_access
DM keyword (person types the keyword straight into DMs)
https://example.com/menu?utm_source=instagram&utm_medium=dm_keyword&utm_campaign=evergreen_menu&utm_content=menu_v2
Same campaign across platforms — if you also run the offer on Facebook, change only utm_source (facebook) and keep the rest identical, so campaign totals still roll up cleanly.
The spreadsheet checklist
Keep one shared sheet as the single source of truth. Columns that are worth having:
| Column | Example |
|---|---|
| Date created | 2026-11-05 |
| Flow type | Comment-to-DM |
| Trigger keyword | CHECKLIST |
| Post / Story reference | Reel 05 Nov — "5 mistakes" |
| Destination URL (clean) | https://example.com/checklist |
| utm_source | |
| utm_medium | dm |
| utm_campaign | lead_magnet_checklist |
| utm_content | reel_1105_checklist |
| utm_term | checklist |
| Final tagged URL | (built from the columns) |
| Tested on mobile? | Yes, 05 Nov |
| Owner | Marketing |
| Status | Live / Paused / Ended |
Build the final URL with a formula so nobody types parameters by hand. In Google Sheets, something like:
=E2&"?utm_source="&F2&"&utm_medium="&G2&"&utm_campaign="&H2&"&utm_content="&I2&"&utm_term="&J2
(If the destination already contains a ?, use & for the first parameter instead.)
Before you go live
- [ ] Every value is lowercase with underscores
- [ ]
utm_sourceis exactlyinstagram(or the right platform) everywhere - [ ]
utm_mediummatches the flow type in your convention - [ ] The tagged link opens correctly on a phone, logged out
- [ ] Parameters survive any redirect or link shortener you use
- [ ] Discount codes or landing pages in the link are still valid
- [ ] The row is in the sheet with an owner and status
Mistakes that quietly break your reports
- Mixing sources.
instagram,Instagram,ig— three rows for one channel. - Tagging internal links. Don't add UTMs to links between pages on your own site; it can overwrite the original source of the session.
- Reusing
utm_contentacross posts. If every Reel usesreel, you can't compare them. - Redirects that strip parameters. Test the full path; some shorteners and redirects drop query strings.
- Forgetting to end campaigns. Old tagged links in evergreen flows keep sending traffic to an expired offer — mark them Ended and update the flow.
Reading the results
Once a few campaigns have run, filter your analytics by utm_medium = dm and story_reply. Useful questions:
- Which
utm_content(post or Story) sent the most visits? - Which keyword (
utm_term) led to more sign-ups or purchases, not just clicks? - How does DM traffic convert compared with bio-link traffic?
Look at trends over several weeks rather than single days, and compare like with like (a launch Reel won't behave like an evergreen FAQ flow).
Wrapping up
UTMs take a few minutes per campaign and turn "Instagram helped, probably" into answers you can act on. Agree a convention, keep the sheet current, test every link on mobile, and you'll know exactly which comment to DM and story auto reply flows earn their place.
If you're setting up these flows, AutoPilotDM handles comment to DM, Story auto replies and DM auto-replies on the official Meta API — you can paste your tagged links straight into each flow. There's a 7-day trial at autopilotdm.com.
Try one workflow first.
Eligible workspaces can start a 7-day Ultimate trial with no card. It does not start automatically.
Start 7-day free trial