How to track which comment or DM led to a sale
October 13, 2026 · 7 min read
Send a tagged link in the reply, then read that tag in your analytics or your store's order report when the sale comes in. The tags are UTM parameters, and they can say which platform, post and keyword sent the buyer. BetterSocials, an AI social media manager, adds them for you when its keyword automations send a link, so your part is reading the report.
How tracking a comment or DM to a sale works
Tag the link before it goes out. You can only trace a sale back to a comment if the link the buyer tapped already said where it came from. Your analytics tool reads those tags when the visit lands, and if it records purchases, the order shows up against that source.
You can tag by hand, with a unique link or a unique discount code for each post. Or a keyword automation can send the link and add the tags at the moment it sends.
Why comments and DMs don't show up in your sales data
Your store never sees the comment or the DM. A buyer comments "PRICE", gets a DM, taps the link and buys. Your analytics sees a visit and an order. It has no idea a comment started it.
Instagram, TikTok and Facebook don't pass your comment or DM history to your website. So a sale that began in a conversation lands with a vague source, often direct traffic or a generic social referral, or gets credited to whatever touched the order last.
Once the sale has closed, it's too late to label it. The tag has to be on the link before the buyer taps it.
How to use unique links to trace a DM to a sale
Build one tagged link per post and send that exact link in the reply.
Step 1: Build a UTM link for each post
A UTM parameter is a tag on the end of a normal URL, like `?utm_source=instagram&utm_medium=dm&utm_campaign=spring-offer&utm_content=post123`. The page doesn't change. The tags tell your analytics where the click came from. Google's Campaign URL Builder, or any UTM builder, will put one together for you.
A simple convention: utm_source is the platform, utm_medium is comment or DM, utm_campaign is the offer, and utm_content is the post. Pick your names once and reuse them. Tags are often case-sensitive, so "instagram" and "Instagram" can show up as two separate sources.
Step 2: Use a different link for comments and DMs
Give public comment replies one utm_medium and DMs another, even on the same post. Then you'll know whether the buyer came from the public reply or the private one.
Step 3: Send the link and keep the tags with the order
Paste the tagged link into the reply or the DM, in full. If you run it through a link shortener, tap the short link once and check the tags reach the page. If your store or CRM can save the UTM tags a visitor arrived with, turn that on, so the source stays attached to the order.
Step 4: Check it at checkout
When an order comes in, look at its source, medium and content tags in your analytics or your store's order report. Match utm_content to the post and you know which comment paid for itself.
This works, and it's admin. Every post, channel and reply type needs its own link, and one untagged reply breaks the trail.
How to use discount codes to trace a comment to a sale
Give each post its own code, then check which code the buyer used at checkout. Offer the code in the reply, like "COMMENT10", tied to one post or one conversation. When the order comes in, the code tells you where it started.
It's the fastest of the three methods to set up, with one hole: it only counts buyers who type the code. Some skip the field. Some use a code a friend passed along. Treat your code counts as a floor. Codes also cost you margin on every order that uses one.
If you want something running today with no new tool, start here.
How keyword comment-to-DM automation makes the tagging automatic
A keyword automation watches your posts for a word and replies when someone comments it. Someone comments "PRICE" and the tool sends your link. On Instagram and Facebook that link can go out as a DM. Nobody has to spot the comment and answer it by hand.
The tracking gain depends on when the tags get added. A tool that tags the link at the moment it sends already knows the platform, the post and the keyword that fired. You stop building links by hand, and the tags match what actually happened.
Check this before you choose a tool. An automation that sends the same bare link from every post saves you typing and still leaves the sale without a source.
How BetterSocials does this
Turn on link tracking in Settings once. It's off until you do. From then on, BetterSocials adds UTM tags to the links your keyword automations send on Instagram, Facebook, YouTube, Threads and LinkedIn company pages, in the DM or in the public reply. The platform and the content format (a Reel, a Short) are tagged by default. You can add the keyword that fired and the post it came from, and rename any value to match your reports. The link tracking help page walks through the settings.
Plan for two gaps. Links you type yourself in the inbox aren't tagged, so paste a link you've already tagged when you reply by hand. And on TikTok the keyword link goes out in the public reply without tags, so TikTok sales need a hand-tagged link or a code.
The sale shows up where your buyer pays: your analytics, your store or your checkout, under the tags the link carried. BetterSocials doesn't count sales. It puts the source on the link so your own tools can. Tracked links and a contacts list, in beta, show inside BetterSocials which comment or DM led to a click.
On Instagram and Facebook, a keyword comment gets a public reply and a DM with your link. On YouTube the keyword reply is public and carries the link, because YouTube has no DMs. Either way, the keyword reply posts the message you wrote. For the rest of your comments and DMs, the AI drafts replies in your voice. They wait in the same inbox for your approval unless you set a rule that lets a kind of reply send on its own.
If you're weighing ManyChat: it has no YouTube channel (checked September 2026), so a YouTube comment can't trigger anything there. It bills by active contacts each month, with overage charged per extra contact (pricing read July 2026). BetterSocials is a flat price with unlimited contacts, DMs and keyword automations on every plan: Creator $29 a month ($24 a month billed yearly), Pro $49 a month ($39 billed yearly), Team $99 a month ($79 billed yearly). There's no flow builder. You set the keyword, the message and the link.
Every plan starts with a 7-day free trial, card required. See the plans.
Frequently asked questions
How do UTM links work for tracking a DM to a sale?+
A UTM link is a normal URL with tags on the end, like `utm_source=instagram`, that tell your analytics where a visit started. Build one link per post, send it in the DM, then read the source and content tags on the order in your analytics or store report.
Can I use discount codes to track which comment led to a sale?+
Yes. Give each post or comment thread its own code, offer it in the reply, and check which code the buyer used at checkout. It's the fastest setup, but it only counts buyers who actually enter the code.
What is a keyword comment-to-DM automation?+
It watches your posts for a word, like "PRICE", and sends the person a DM with your link when they comment it. In BetterSocials this works on Instagram and Facebook, with a public reply on the comment too. On TikTok and YouTube the keyword reply is public and the link goes in it.
Does ManyChat track which comment led to a sale?+
ManyChat can reply to a comment publicly and send the DM, and you can put a UTM-tagged link in that DM yourself, then read it in your analytics like any other link. It has no YouTube channel, so YouTube comments are outside it, and it bills by active contacts each month.
Can I track a TikTok comment or DM that led to a sale?+
Yes, through the link, but you tag it yourself. A TikTok comment can't trigger a private DM on any tool outside TikTok's limited rollout in Vietnam, Thailand and Indonesia, so a keyword there answers in the public reply, and BetterSocials doesn't tag that link. TikTok DMs can be answered but never started: up to 10 replies within 48 hours of the person's last message, from a Business account. A reply is text up to 6,000 characters or one image, so a tagged link fits in the text. A discount code works too.
How does BetterSocials track which comment or DM led to a sale?+
Once you switch on link tracking in Settings, it adds UTM tags to the links its keyword automations send on Instagram, Facebook, YouTube, Threads and LinkedIn company pages. Your analytics or store reads those tags when the buyer lands and pays. Tracked links and a contacts list (beta) show which comment or DM led to a click. BetterSocials doesn't report the sale itself; your own analytics does.