SEO & Traffic• 4 min read

How to Track Where Your Launch Traffic Comes From (UTM, ref and Referrers)

Why launch traffic shows up as “Direct”, how UTM and ref tags fix it, and why a launch board's numbers never quite match your analytics.

By Pritam Ghosh · Founder, Hauntboard
Published · Updated

Why Launch Traffic Shows Up as Direct

You launch on five platforms, open your analytics the next morning, and most of the visits are labelled "Direct" or "None". It's tempting to think nobody came from the launch. Usually the visits did come from it; your analytics just couldn't tell.

Analytics tools work out where a visit came from mainly by reading the referrer: the address of the page the visitor was on when they clicked. That signal is less reliable than it looks:

  • Browsers send less of it. The default policy in modern browsers sends only the site's domain on cross-site clicks, not the full page address, so you often see "producthunt.com" but not which page.
  • Links can drop it entirely. A link marked rel="noreferrer", or a site with a strict referrer policy, sends nothing at all.
  • Apps don't send one. Clicks from the X, Slack, Discord or email apps usually open your site with no referrer, so they land in Direct.
  • Privacy tools strip it. Some browsers and extensions remove or trim referrers on purpose.

The fix isn't to trust the referrer more. It's to label your links yourself, so the source travels inside the link where nothing can strip it.

UTM Tags in Two Minutes

UTM tags are extra parameters at the end of a link that tell analytics tools where a click came from. Almost every analytics product reads them. The three that matter:

ParameterWhat it meansExample
utm_sourceThe site that sent the clickhauntboard, reddit, newsletter
utm_mediumThe kind of channelreferral, social, email
utm_campaignWhich effort it belongs tolaunch-week, v2

A tagged link looks like this:

https://yourapp.com/?utm_source=reddit&utm_medium=social&utm_campaign=launch-week

Keep the values lowercase and consistent. "Reddit", "reddit" and "reddit.com" show up as three different sources in most tools, which splits your numbers into pieces too small to read.

The ref Tag

Many indie-friendly analytics tools also read a shorter tag: ?ref=name. Plausible, for example, treats ref, source and utm_source as ways of naming the source. It's easier to type by hand and reads cleanly when people see it.

Some launch boards add tags for you. On Hauntboard, every "Visit" button on a launch page adds ref=hauntboard, utm_source=hauntboard and utm_medium=referral to your link automatically, and keeps any parameters your link already had. So Hauntboard visits show up under their own name in Plausible, Umami, Fathom, Google Analytics 4 and PostHog, even when the referrer is stripped. If your link already contains your own tags, those win.

Tags don't change your link for search engines in any way that matters: the address people land on is the same page.

Where to Look in Your Analytics

  • Plausible: the Sources panel lists each source by name; switch to the UTM tabs to see medium and campaign.
  • Google Analytics 4: open the traffic acquisition report and change the dimension to "Session source / medium". Visits tagged utm_medium=referral are grouped under the Referral channel.
  • Umami: the referrers and UTM views both show tagged sources.
  • PostHog: UTM values are stored on events and people, so you can filter signups by utm_source, which is the number that really matters.

Look at sources over the whole launch week, not just day one. Launch boards keep sending visits for days, and a permanent launch page can keep sending them for months through search.

Why the Numbers Never Match

If a launch board says it sent you 120 visits and your analytics shows 85, nobody is necessarily lying. The two are counting different things:

  • Different rules. Hauntboard counts a click on the Visit button, once per browser per launch per day, with known bots filtered out. Your analytics usually counts sessions or page views when your page finishes loading.
  • People leave before your page loads. A click that's counted on the board, then abandoned while your site is still loading, never reaches your analytics. A slow site loses more of these.
  • Blockers. Ad and tracker blockers often block analytics scripts, so some real visitors never appear in your dashboard at all. Privacy-focused, cookieless tools tend to be blocked less often, but not never.
  • Time zones. A board counting in UTC and a dashboard set to your local time split days differently.

Expect the board's number and yours to be in the same range, not identical. If they're wildly apart, check that your analytics script loads on the exact page you linked, and that a redirect isn't dropping your tags.

What to Actually Measure

Visits tell you whether a platform put you in front of people. They don't tell you whether the platform was worth it. For each source, write down three numbers at the end of launch week:

  1. Visits from that source.
  2. Signups or trials from that source.
  3. Conversations: replies, emails or feedback from people who came from it.

A platform that sent 40 visits and five signups beat one that sent 400 visits and none. Next launch, spend your time where the right people were, not where the most people were.

Every launch on Hauntboard shows its visits in public, on its launch page and on the open stats page, so you can compare what we sent with what your analytics saw. For the bigger picture of getting found, read how to get traffic to a brand-new website.

Launch your product without an audience.

Hauntboard is a weekly launch board for independent makers and solo founders. A person reviews every launch, its page views and outbound clicks are public, and approved listings get a dofollow link (free listings keep it while the Hauntboard badge stays up).

Related Founder Guides

Submit a launch