<img height="1" width="1" style="display:none;" alt="" src="https://px.ads.linkedin.com/collect/?pid=155897&amp;fmt=gif">
Skip to content

UTM Tracking in HubSpot: Why It's Only One-Third of Your Attribution Strategy

Thorstein Nordby | 12 minutter
utm tagging in HubSpot and marketing attribution

If you've been relying on HubSpot's default reports to understand where your leads come from, you're not wrong — but you're only seeing part of the picture.

Most B2B teams treat attribution as a single-source answer: check the Original Source field, maybe glance at a campaign report, and move on.

But the buyer journey that led someone to fill out your form?

It's almost never that simple.

The reality is that proper marketing attribution in HubSpot requires three layers working together.

The first — HubSpot's native attribution — is already running in the background.

The second — self-reported attribution — takes five minutes to set up and captures things no technology can track.

And the third — UTM tracking in HubSpot with custom properties — takes more effort to implement, but it's what gives you the precision that actually changes how you allocate budget.

In this article, we'll walk through all three layers in order of complexity, explain what each one captures (and misses), and show you how to combine them into an attribution model that reflects how your buyers actually find you.

The attribution problem most B2B teams don't realize they have

Most RevOps teams have some form of attribution in place. The issue isn't that they're doing nothing — it's that they're relying on a single method and assuming it tells the full story.

Maybe your team trusts HubSpot's Original Source property as the source of truth.

Or maybe you've invested in UTM tracking links across all your campaigns.

Both are valid.

But each method has significant blind spots, and if you're making budget decisions based on one data source, you're almost certainly over-investing in some channels and under-investing in others.

Think about it from the buyer's perspective.

A typical B2B buyer journey looks something like this: they hear about you on a podcast, Google your company name a week later, read two blog posts over the next month, click a LinkedIn ad, and finally fill out a form after their colleague forwards them your email newsletter.

That's five or six touchpoints across multiple channels — and no single attribution method captures all of them.

HubSpot's Original Source would credit whichever channel first brought them to your site (probably that Google search).

A UTM tracking link would credit the LinkedIn ad click (assuming it was tagged properly).

And neither would capture the podcast that started the whole journey, because there's no link to track.

This is the attribution gap that keeps RevOps leaders awake at night. Not a lack of data, but fragmented data that tells different stories depending on which report you pull.

The solution isn't to pick the "best" method — it's to layer all three together so the gaps in one get filled by the others.

Layer 1: HubSpot's native attribution — what you already have

The good news is that your first attribution layer is already running.

HubSpot has a built-in attribution engine that works in the background from the moment you install the tracking code on your site.

Before you add anything else, it's worth understanding what this engine does well — and where it hits its limits.

1. Original Source and session tracking

The Original Source property is the first thing most HubSpot users look at.

It records how a contact first arrived at your website — organic search, paid social, direct traffic, referral, email marketing, and so on.

HubSpot assigns this automatically based on the tracking cookie, and it doesn't require any manual tagging on your part.

Beyond first touch, HubSpot also tracks sessions.

Every time a known contact returns to your website, HubSpot logs a new session with its own source data.

This gives you a timeline of how contacts interact with your content over time, not just how they first found you.

For many teams, this session-level data is enough to get a directional sense of which channels drive repeat engagement.

2. Multi-touch attribution reports

If you're on Marketing Hub Enterprise (or have the attribution add-on), HubSpot offers multi-touch attribution reports that go significantly deeper.

These let you assign credit for a deal across multiple interactions, using different models: first interaction gives all credit to the first touchpoint, last interaction credits the final one before conversion, linear splits credit equally, U-shaped weighs first and last touch more heavily, and W-shaped adds extra weight to the lead creation moment.

These reports are particularly useful for understanding how different channels contribute to revenue — not just leads. When configured properly, they connect marketing interactions directly to closed deals, which is the level of insight that most CMOs actually care about.

HubSpot's native attribution is session-based and relies entirely on browser-side tracking — cookies and JavaScript. And this is where things get tricky.

Privacy changes have fundamentally altered the tracking landscape.

Safari's Intelligent Tracking Prevention, Firefox's Enhanced Tracking Protection, and widespread ad blocker usage mean that an estimated 25–40% of web traffic now blocks or limits tracking scripts.

That's a significant chunk of your audience that HubSpot's tracking code simply can't see.

On top of that, HubSpot's attribution only begins when a contact becomes known — meaning when they submit a form or are otherwise identified.

All the anonymous browsing they did before that first conversion?

It's retroactively attributed in some cases, but it's far from complete. The pre-lead journey, which is often where the most important brand-building happens, is largely invisible.

And perhaps most importantly for B2B, native attribution doesn't account for anything that happens outside HubSpot's tracking ecosystem.

If a prospect sees your booth at a conference, hears your CEO on a podcast, or gets a personal recommendation from a peer — none of that shows up in HubSpot's attribution reports. In B2B, those offline and "dark social" touchpoints are often the ones that actually move the needle.

This is exactly why you need a second layer — one that captures what technology can't.

Layer 2: Self-reported attribution — the five-minute win most teams skip

Here's the most underrated attribution method in B2B marketing: just ask people how they found you.

Self-reported attribution is exactly what it sounds like — a field on your form (typically a dropdown) that asks "How did you hear about us?"

It takes five minutes to set up, requires minimal technical setup beyond what you already have in HubSpot, and captures information that no tracking pixel or cookie ever could.

Think about the channels that matter most in B2B buying decisions: a recommendation from a trusted colleague, a podcast episode they listened to during their commute, a LinkedIn post they saw three months ago, a conversation at a conference.

None of these leave a digital trail that HubSpot can track.

But when you ask the prospect directly, they'll tell you.

This is where self-reported attribution fills a gap that technology simply cannot.

It captures "dark social" — the sharing and conversations that happen in private channels like Slack groups, WhatsApp messages, email forwards, and in-person conversations.

By some estimates, dark social accounts for the majority of B2B content sharing, yet it's completely invisible to traditional tracking.

If you've ever had a sales rep say "the prospect mentioned they heard us on a podcast" while your HubSpot reports show that same contact as an "organic search" lead — that's the disconnect self-reported attribution solves.

Setting up self-reported attribution in HubSpot is straightforward.

Create a contact property as a single text field — call it  "How did you hear about us?".

It is important to use a single-line text field so you do not lose important attribution insights.

Free-text answers give you more context than a dropdown ever will, because people can describe the actual source in their own words.

You can then use a HubSpot workflow with AI to categorize those responses into clean reporting categories afterward, giving you both richer insight and structured reporting.

Second, make the field mandatory on your key conversion forms. If it's optional, completion rates drop below 50% and your data becomes unreliable due to self-selection bias.

Add this field to your demo request forms, contact forms, and any other high-intent conversion points. You don't necessarily need it on every content download form (where it might add unnecessary friction), but it should be on every form where a sales conversation is likely to follow.

Self-reported attribution isn't perfect, and understanding its shortcomings helps you interpret the data correctly.

The biggest issue is recency bias.

Prospects tend to remember their most recent interaction, not the one that actually started their journey.

Someone who first discovered you through a Google search six months ago might say "LinkedIn" because that's where they saw your post last week.

The trigger that originally got them to your website gets forgotten.

Granularity is another challenge. Someone might say "social media" — but that doesn't tell you which platform, which post, or which campaign.

Or they might say "event" without specifying which event. You get directional data, not campaign-level precision.

And that's precisely why you need the third layer.

Layer 3: UTM tracking — the precision layer that changes budget decisions

Self-reported attribution tells you which channels matter.

HubSpot's native reports tell you where contacts come from.

But neither one tells you exactly which campaign, ad, keyword or email increased your pipeline and revenue.

That's where UTM tracking comes in — and it's the layer that, when done right, has the biggest impact on how you allocate marketing spend.

UTM parameters are tags you append to a URL so you can identify exactly where traffic is coming from.

When someone clicks a link with UTM parameters, HubSpot captures that data and associates it with the contact record — giving you a direct line between a specific campaign and a specific conversion.

A standard UTM link includes five parameters: utm_source (where the traffic comes from, like "linkedin" or "google"), utm_medium (the channel type, like "paid-social" or "email"), utm_campaign (the specific campaign name), utm_content (to differentiate between variations, like ad A vs. ad B), and utm_term (the keyword, mainly for paid search).

Setting up UTM tracking with custom properties in HubSpot

Here's where this layer requires more effort than the previous two — but also where the payoff is greatest.

HubSpot doesn't have built-in UTM properties out of the box, so you need to create custom contact properties for each UTM parameter you want to capture.

Create single-line text properties for utm_source, utm_medium, utm_campaign, utm_content, and utm_term — then add them as hidden fields on your forms.

When a visitor clicks a UTM-tagged link and lands on a page with a HubSpot form, the hidden fields auto-populate with the UTM values from the URL.

The setup itself is straightforward.

The real challenge is what comes after: maintaining discipline across your entire team.

Every person creating links needs to follow the same naming conventions. "LinkedIn" and "linkedin" and "Linkedin" are three different values in your reports. "paid-social" and "paid_social" and "social-paid" fragment your data even further. Without strict, documented conventions, your UTM data becomes unreliable fast.

This is why we recommend using a link builder tool rather than relying on people to type UTM parameters by hand. A good link builder enforces lowercase, prevents typos, and ensures every link follows your naming standard before it goes live.

Even with perfect naming conventions, UTM tracking has real limitations you need to account for.

UTMs only work when someone clicks a tagged link. Direct traffic — someone typing your URL into their browser — has no UTM data.

Organic search traffic doesn't carry UTMs either, unless you're tagging every single organic listing (which you shouldn't). And any offline channel — events, word of mouth, podcasts, print — is invisible to UTM tracking entirely. (This is exactly what self-reported attribution, your second layer, is designed to catch.)

UTM parameters can also get stripped or overwritten.

Some email clients and browsers strip query parameters.

Social platforms sometimes cache links. And if a contact visits your site through a UTM link but doesn't convert until a later session (without UTMs), you lose that attribution data unless you're using first-touch logic in your hidden fields.

And UTMs require ongoing manual effort and team-wide compliance.

One marketer using "facebook" while another uses "meta" while a third uses "fb" creates a reporting mess that's painful to clean up retroactively.

This is especially common in larger teams or when agencies are running campaigns on your behalf.

Despite these limitations, UTM tracking in HubSpot remains the only method that gives you true campaign-level attribution. When you can see that "q1-2026-linkedin-attribution-guide" drove 23 MQLs at €14 per lead, you have the kind of data that actually changes how budgets get allocated next quarter.

Why you need all three — and how they cover each other's blind spots

Each attribution layer has a specific strength and a specific weakness. The reason you need all three isn't redundancy — it's coverage.

HubSpot's native attribution gives you the interaction timeline — every page visit, form submission, and email open in sequence. But it's limited by cookie erosion and can't see anything that happens outside its tracking ecosystem.

Self-reported attribution gives you the human context — the podcast, the recommendation, the conference conversation. The trust-building moments that create demand. But it's imprecise and subject to recency bias.

UTM tracking in HubSpot gives you campaign-level precision — exactly which ad, email, or content piece drove a click. But it's blind to anything that doesn't involve a tagged link.

When you layer all three, the picture comes together. Your self-reported data reveals that 60% of new contacts first heard about you from a colleague or a podcast.

HubSpot's native attribution shows those contacts visited an average of 3.5 pages before converting. And your UTM data tells you the LinkedIn ad campaign was the specific conversion trigger that got them to fill out the form.

Without all three layers, you might have killed the podcast sponsorship (because it "doesn't show up in the data") and doubled down on LinkedIn ads (because they "get all the conversions").

That's the kind of budget mistake that a single-method attribution model leads to — and it's happening at B2B companies every quarter.

Bringing it all together: your unified attribution dashboard

The real value comes from combining all three data sources into a single view.

Create a custom HubSpot dashboard that includes: a report showing deals by self-reported source, a report showing deals by Original Source (HubSpot native), a report showing deals by UTM source, and a comparison view where you can see how these three data sources align — or don't.

When the three sources agree (self-reported says "LinkedIn," UTMs say "linkedin/paid-social," and Original Source says "Paid social"), you have high-confidence attribution.

When they disagree, that's where the interesting insights live. A contact whose UTM source is "google/cpc" but who self-reports "podcast" is telling you something important about the real driver of their interest versus the last link they clicked.

Over time, patterns emerge. You might discover that self-reported "referral" contacts close at twice the rate of any other source — even though they barely show up in your HubSpot native attribution because they tend to visit your site once and convert immediately.

Or you might find that contacts who first arrive via organic search (native attribution) but whose converting session is tagged with a specific email UTM campaign are your highest-value deals. These are the kinds of insights that only surface when you cross-reference all three layers.

Common mistakes that break your attribution data

If you've invested the effort to get all three attribution layers working in HubSpot, don't let these common mistakes undo your progress. Here are the ones we see most often when auditing HubSpot portals.

Inconsistent UTM naming is the number one offender.

We've seen portals where the same LinkedIn campaign appears as five different source values because different team members used different capitalization or abbreviations.

Create a documented naming convention, share it in a place everyone can find, and use a link builder tool that enforces the rules automatically.

Making self-reported attribution optional instead of mandatory.

When it's optional, you get data from maybe 40% of your form submissions, and those 40% aren't random — they're self-selected. That skews your data in unpredictable ways. Make the field required on your key conversion forms.

Over-trusting a single attribution source. If your CEO asks "which channel drives the most revenue?" and you answer based on only one attribution method, you're giving a confident answer based on incomplete data. Always cross-reference across your three layers before making budget recommendations.

Ignoring the growing cookie gap. With 25–40% of web traffic now blocking or limiting tracking scripts, your HubSpot native attribution data has a significant blind spot.

If you're not supplementing it with UTM tracking and self-reported data, you're making decisions based on a shrinking slice of your actual audience.

Never auditing your attribution data. UTM properties accumulate inconsistencies over time. Self-reported dropdown options get stale as your marketing mix changes.

Native attribution can be thrown off by tracking code issues or website changes. Set a quarterly cadence to audit all three layers and clean up any data quality issues.

Attribution isn't a tool problem — it's a systems problem

Attribution in B2B isn't something you solve with a single report. It's a systems challenge — three data sources working together to approximate something close to the truth about how your buyers find you.

HubSpot's native attribution is your baseline. Self-reported attribution is your quick win that captures the human signals technology misses.

And UTM tracking in HubSpot with custom properties is your precision instrument — the layer that turns vague channel insights into specific, actionable campaign data.

Start with what you have, add the easy layer, then build the one that pays the biggest dividends. Together, they give you better budget decisions, more honest reporting, and marketing investments backed by evidence rather than gut feel.

 


Related posts