June Offer Every MAX plan gets a fully custom-built system Free custom system worth $1,500-$10,000 · worth $1,500-$10,000

Trackable links that tell you who clicked, not just how many

Forty clicks is a number. Four names is a list of people to follow up with this afternoon. The difference is whether the link knew who it was sent to.

The link turns green in the conversation once they open it.

Get Started

The short, checkable version

Five statements from this page that stand on their own, with where each one comes from. If you are comparing link trackers or writing about attribution, these are the ones worth checking. One of them is a list of things we cannot do.

  • A link shortener can never tell you which person clicked, because it hands the same URL to everybody and only counts what comes back.

    Structural limit of URL shorteners

  • Instagram, Facebook and X all strip the referrer header on outbound clicks, so referrer data from social traffic is thinner than most dashboards imply.

    Platform behaviour, applies to every link tracker

  • Inflowave links sent into a conversation carry a token unique to one recipient, so the click event stores the lead it belongs to rather than an anonymous hit.

    Inflowave product, verified in code

  • A tracked link that was sent by an automation records the workflow and the step that sent it, so a click is attributable to one message in a sequence rather than to a campaign.

    Inflowave product, verified in code

  • Inflowave tracked links do not support link expiry, QR codes or bulk CSV import, and a branded short domain is available only to white-label agencies rather than as a self-serve setting. Bitly offers all four to any paying user.

    Inflowave product, verified in code

Competitor claims taken from each vendor own published documentation and checked on 31 July 2026. Products in this category change often, so verify anything that decides a purchase.

Every link tracker answers how many. Almost none answer who.

A shortener sits outside the conversation. It is handed a destination, it gives back one URL, and that same URL goes to everybody. When the clicks come back there is no way to separate them, because there was never anything to separate them by. So the ceiling is a number: forty people opened it.

That number is genuinely useful when you published something to an audience and want to know whether it landed. It is close to useless the moment you want to do something about it, because you cannot follow up with a number. You cannot ring forty anonymous clicks.

A link generated inside a conversation is a different object, and not because it is cleverer. It is because the system already knew who it was talking to when it made the link. It can therefore mint a version of that link belonging to one person, and when that version is opened, the click is recorded against them by name.

How the link knows who it went to

There is no fingerprinting involved and nothing is inferred from the browser. The mechanism is deliberately boring, which is why it is reliable.

A token is minted for one recipient

When a team member pastes a URL into a thread and converts it, or when an automation sends one, two things are created together: the tracked link, and a token that belongs to that single recipient. The token is appended to the link before it goes into the message, so the URL in that conversation is not the same URL anybody else received.

The click is recorded against the lead

When the link is opened, the token identifies the recipient and the click is stored with the lead attached, along with the time, the referrer where one survives and the browser user agent. Because the identity comes from the token rather than from profiling, it works on a first visit, in a private window, and on a different device to the one the message was read on.

The conversation shows it

The link in the thread changes state once it has been opened. That is the part people underestimate. Attribution that lives in a reporting screen gets looked at weekly by one person; attribution that appears in the message you are already reading gets acted on the same day by whoever is reading it.

If an automation sent it, the step is attached

Links minted inside a workflow carry the workflow and the specific step alongside the recipient. The question you can answer changes shape: not which campaign performed, but which message in the sequence was the one people actually opened. Usually it is not the one you would have guessed.

Against Bitly, the free trackers and plain UTM

Checked on the date shown. We lose four rows outright and one of them is a row a lot of people care about, so read it before you buy rather than after.

CapabilityInflowaveBitlyFree trackersUTM + analytics
Shorten a URL and count the clicksTable stakes, and free almost everywhere. UTM parameters on their own do not shorten anything, they make the URL longer.
FreeIf all you need is a click count, several tools on this page do it for nothing and Google will build you a UTM string for free. Paying for that alone would be silly.
Custom branded short domainOnly through white label. An agency on a white-label domain gets its tracked links on that domain automatically; everyone else is on inflowave.io. There is no self-serve setting to point your own domain at your links the way Bitly offers, so if that is the requirement on a normal plan, Bitly is the answer.
QR codes, link expiry, bulk CSV importAlso honest losses, and all three were falsely claimed on the previous version of this page. There is no expiry column and no bulk endpoint.
UTM parameters and a campaign name on the linkCampaign and UTM values are set when the link is generated rather than typed into the URL by hand.
Referrer, user agent and timestamp on every clickWorth knowing that Instagram, Facebook and X all strip the referrer on outbound clicks, so referrer data is thinner from social than people expect. That is true for every tool here, not just ours.
Tells you WHICH PERSON clicked, by nameThe whole point of the page. A link sent into a conversation carries a token unique to that one recipient, so the click event records the lead it belongs to. A shortener cannot do this because it never knew who it was sending to.
The click shows up inside the conversationThe link you sent turns green in the thread once it is opened. You see it while reading the conversation, not by going to a separate analytics dashboard and cross-referencing timestamps.
A click is attributable to the automation step that sent itLinks minted by an automation carry the workflow and the step. So the question stops being which campaign worked and becomes which message in the sequence worked.
The click lands on the contact recordNot an integration that syncs it across. The click event stores the lead directly, so there is no hop to fail and no duplicate person to reconcile later.
Conversion goals with a value per conversionGoals are typed as a booking, form submission, purchase, signup or custom, each carrying a value, with a signed webhook so an external system can report one. Google Analytics does this well and has for years.
Full web analytics, funnels and audience reportingGoogle Analytics is a far deeper analytics product than anything here and it is free. Use it. This page is not an argument against it.

Competitor capabilities checked: 31 July 2026

When you should not pay us for this

For most of what people mean by a tracking link, the free options are the right answer and we will not pretend otherwise. If you want to shorten a URL and see a click count, Linkly and several others do it for nothing. If you want QR codes, link expiry or a bulk CSV import, Bitly has all three and we have none of them, and a branded short domain only comes with white label rather than as a setting you can switch on. If you want to understand traffic on a website properly, Google Analytics is deeper than anything on this page and also free, and Google will build your UTM strings for you at no cost. Paying us for click counts alone would be a bad trade.

And the one thing they cannot do

There is one question none of them can answer, and it is usually the only one that matters: which person clicked. A shortener sits outside the conversation. It hands the same URL to everybody and counts what comes back, so the most it can ever tell you is that forty people opened something. A link generated inside a thread is different, because the system already knows who it is talking to. It carries a token unique to that one recipient, so the click is recorded against that lead, the link turns green in the conversation once it is opened, and if an automation sent it, the workflow and the step that sent it are attached too. That turns a click count into a list of names you can act on this afternoon.

Head to head

Inflowave vs Bitly

Their case: Bigger, cheaper, and better at being a link shortener than we are. QR codes, link expiry, bulk import, a self-serve branded domain and a mature dashboard, none of which we match. If the job is publishing one link to a large audience and measuring the response, Bitly is the correct tool and there is nothing on this page that should change your mind.

Ours: Bitly is measuring an audience. We are measuring a conversation. It can tell you that four hundred people opened your link, which is genuinely useful for a broadcast and useless for a follow-up, because you cannot ring four hundred anonymous clicks. Ours records the lead on the click, so the output is a list of people who opened your proposal and have not replied yet.

Inflowave vs the free trackers

Their case: Linkly, gettrack.link and Triggerbee will shorten and count for nothing. For a link in a bio, a link in a newsletter, or any case where you just need to know whether anyone is clicking, free is the honest answer and half the results on this search are free tools for exactly that reason.

Ours: Free ends where identity begins. None of them can attach the click to a person, because none of them were in the conversation when the link was sent. If you are running one-to-one outreach, the click count is the least interesting thing about the click.

Inflowave vs UTM parameters and Google Analytics

Their case: UTM tagging is free, universal, and the right way to attribute traffic to a campaign. Google Analytics is a deeper analytics product than anything we build and costs nothing. For understanding how a website is performing, this combination is better than us and it is not close.

Ours: UTM answers which campaign, and stops there. It is built around sessions and sources rather than people, so it can tell you that the July newsletter drove ninety visits and never that Sarah opened the pricing page twice on Tuesday. We use UTM values too. They just are not the part doing the work.

From a click to a number you can put in a report

A click is a signal, not an outcome. A conversion goal is where you say what the outcome was meant to be: a booking, a form submission, a purchase, a signup, or something you define yourself. Each goal carries a value, so the reporting is in money rather than in events.

Goals can also be reported from outside. A signed webhook lets your own checkout or billing system say that a purchase happened, which means the revenue attaches to the link that produced it without anybody exporting a spreadsheet on a Friday. Where the outcome is a booked call, the booking itself is the conversion.

Where a tracked click actually goes

A click that only exists in a link report is a click nobody will use. These are the places one shows up, which is the reason the identity on it matters.

  • In the thread itself, as the state of the link you sent, inside the unified inbox, so whoever picks the conversation up next can see it without being told.
  • On the contact record, as click history, which is what makes an opened proposal a reason to move a deal along your sales pipeline rather than a line in a report.
  • As a trigger, because an opened link is a condition an automation can act on. Following up with somebody who read the thing is a different message to chasing somebody who never opened it.
  • As a conversion, when the destination is one of your forms or a booking page, so the loop from message to outcome closes without a manual join.

If what you actually want is one public page holding several links, that is a different feature and it lives on Inflowave Links, which has the wider analytics: referrers, countries, clicks by hour and split tests. If you are weighing that against Linktree specifically, there is a direct comparison with Linktree covering what each one costs.

What this does not do

There are no QR codes, no link expiry and no bulk CSV import, and a branded short domain comes only with white label rather than as a setting you can switch on. Bitly gives all four to anyone paying. An earlier version of this page claimed several of them outright, which is the sort of thing worth correcting in public rather than quietly.

Naming the person only works where the link was sent to a known recipient. A link on a public post is opened by strangers, and no honest tool will tell you who they were. If a product claims it can, look closely at how, because the answer is usually something you would not want described to your customers.

And referrer data from social is thin, because Instagram, Facebook and X strip the referrer on the way out. Every link tracker has this problem equally. Anyone showing you a confident breakdown of social referrers is showing you a guess.

Questions people actually ask

What is a trackable link?

A trackable link is a short URL that records something about each visit before sending the person on to the real destination. At minimum that means a count, a timestamp and wherever the click came from. The useful versions also record who the visitor was, which is the part most tools cannot do because they never knew who they were sending to in the first place.

How do I create one?

Paste a destination URL and a short link is generated for it. Inside a conversation there is an extra step available: when a team member pastes a URL into a thread they can convert it, which mints a link carrying a token unique to that one recipient. Automations do the same thing when they send a link, and additionally attach the workflow and the step that sent it.

Can I actually see who clicked, by name?

Yes, for links sent into a conversation or by an automation, because those carry a per-recipient token and the click event stores the lead against it. For a link you published to an audience, no, and nothing can do that honestly. A link on a public post is opened by strangers, and any tool claiming to name them is doing something you probably do not want to be doing.

What is the difference between this and UTM parameters?

UTM parameters answer which campaign brought the traffic. They are free, universal and the correct tool for that job, and we use them too. What they cannot do is answer which person, because UTM is built around sessions and sources rather than individuals. It can tell you the July sequence drove ninety visits. It cannot tell you that one particular lead opened your pricing page twice on Tuesday.

Do trackable links work in Instagram DMs?

Yes, and that is the case they are built for. It is also where per-recipient tracking matters most, because a DM goes to exactly one person, so a click is unambiguous. Bear in mind that Instagram strips the referrer on outbound clicks, so the referrer field will often be empty. That is a platform behaviour and it affects every link tracker equally.

Can I use my own branded domain?

Only on white label. If your agency runs on a white-label domain, your tracked links are issued on that domain automatically with nothing to configure. On a normal plan there is no setting to point your own domain at your links, so they are issued on ours. If a branded short domain matters to you and white label does not apply, Bitly is a better fit and we would rather say so here than have you find out after paying. QR codes, link expiry and bulk CSV import do not exist at all.

Is it free?

No, and if a click count is genuinely all you need then several free tools do that well. Linkly and others will shorten and count for nothing, and Google will build your UTM strings at no cost. What is being paid for here is the identity attached to the click and the fact that it lands on the contact record, not the counting.

What counts as a conversion?

A conversion goal is typed as a booking, a form submission, a purchase, a signup or a custom event, and each goal carries a value per conversion. An external system can report one through a signed webhook, so a purchase recorded in your own checkout can be attributed back to the link that produced it.

Does clicking the same link twice count twice?

Every click is recorded as its own event with its own timestamp, so repeat opens are visible rather than collapsed. That is deliberate: somebody opening your proposal four times in a day is a stronger buying signal than four different people opening it once, and a tool that only shows you a total hides the difference.

What is stored about the person who clicked?

The click event stores the address it came from, the browser user agent, the referrer where one survives, the recipient token, the lead it belongs to and the time. Nothing is inferred about the visitor beyond that, and there is no fingerprinting: identity comes from the token in the link that was sent, not from profiling the browser.

Stop counting clicks you cannot follow up

Send a link, see who opened it, and act on it in the same conversation.

Get Started