INSIGHTS · 8 min read

HubSpot Attribution Setup: The Complete Guide

A step-by-step guide to setting up marketing attribution in HubSpot that survives all the way to the deal — source fields, hidden form capture, first/last touch, and the deal-level reporting most setups miss.

HubSpot can tie your marketing to closed revenue, but almost never does out of the box. The pieces ship in the platform; connecting them into a chain that carries a source from a first click through to a won deal is a deliberate build. Here is the whole setup in order, and where most implementations quietly break.

Step 1 — Create the source properties

Add the five source/medium fields as contact properties: utm_source, utm_medium, utm_campaign, utm_content, and utm_term. HubSpot has some built-in original-source fields, but the five explicit UTM properties give you the channel-level detail you can actually report on and carry to the deal. If you run Google Ads, add a field for the Google Click ID (gclid) as well.

Step 2 — Capture them on every form

Add the five properties as hidden fields on every HubSpot form, and add a small script that reads the UTM parameters from the URL and preserves them across pages so they survive to the submission. The full mechanics are in how to pass UTM parameters into HubSpot. Include a self-reported “How did you hear about us?” field to catch the channels no script can see.

Step 3 — Set first-touch and last-touch

Capture each source twice: a locked first-touch set that never overwrites, and a last-touch set that updates on each submission. They answer different questions — first touch shows which channels build pipeline, last touch shows which close it — and you need both to allocate budget correctly.

Step 4 — Carry it to the deal (the step most setups miss)

This is where HubSpot attribution most often falls apart. The UTM values live on the contact, but they’re invisible in revenue reporting until you surface them on the deal — add them to deal views, associate them through to the deal record, and include them in your reports. Miss this and you can report leads by channel but never revenue by channel. It’s the same break described in why your CRM lead source is blank.

Step 5 — Build closed-loop reporting

With source on the deal, build the dashboards that group closed revenue by channel — the closed-loop report a CFO actually wants. That report is the end state of closing the attribution gap: every won deal traced back to the marketing that started it.

Frequently asked questions

Does HubSpot track attribution automatically?
Partially. HubSpot has original-source fields and multi-touch attribution tools, but capturing channel-level UTM data, preserving it across pages, and carrying it to the deal for revenue reporting all have to be configured deliberately. Out of the box, most of it doesn’t reach the deal.
Why doesn’t my HubSpot attribution show revenue by channel?
Almost always because the source data lives on the contact but was never surfaced on the deal. Add the UTM properties to deal views and reports so closed revenue can be grouped by channel rather than just leads.

See where your revenue is leaking

The Rapid Alignment Audit maps exactly where your marketing-to-sales handoff breaks — and hands you a prioritized fix you keep either way.

Book the Audit →