strategy

LinkedIn Ads and HubSpot Attribution: Why the Numbers Disagree

HubSpot and LinkedIn are both reporting honestly. They just count different events over different windows.

Aug 24, 2026 Brian Chiou 9 min read

Two dashboards, two answers

LinkedIn Campaign Manager says the campaign produced 40 conversions. HubSpot attribution says LinkedIn influenced 9 deals. Somebody asks which one is right, and the honest answer is both, because they are not measuring the same thing.

LinkedIn counts actions it believes it caused, on its own platform, in its own window. HubSpot counts credit assigned to a source across a contact or deal timeline, using whichever attribution model is selected in that specific report. Those two definitions were never going to produce the same number.

The gap itself is fine. The trouble starts when you don't know what the gap is made of, because then you cannot tell whether a campaign is working.

What LinkedIn counts

LinkedIn fires a conversion when someone who clicked or merely saw your ad completes a tracked action inside your attribution window. The defaults are 30 days after a click and 7 days after a view.

The view-through half is where most of the disagreement lives. Someone scrolls past your ad on Tuesday, never clicks, searches your brand on Friday, and fills in a form. LinkedIn counts that. So will Google, if a search ad also touched the visit. One form, two platforms, two claimed conversions, and your spreadsheet now shows more conversions than you had humans.

There is a second wrinkle specific to LinkedIn. Lead Gen Forms complete inside LinkedIn, so there is no page view on your site at all. If those leads reach HubSpot through the native integration rather than a form submission on your domain, they arrive by a different path than every other lead, and any reporting built around website forms will quietly miss them.

What HubSpot counts, and the report you are probably reading

HubSpot has more than one attribution surface and they answer different questions. Reading the wrong one is the most common self-inflicted version of this problem.

Contact create attribution answers "what brought this person into the database for the first time." It is a first-touch style question and it ignores everything that happened afterwards.

Revenue attribution answers "which interactions should get credit for closed revenue," and the answer changes entirely depending on the model selected: first touch, last touch, linear, U-shaped, W-shaped, or full path. A campaign that looks weak under last touch can look strong under W-shaped, with no change in reality.

So before comparing anything to LinkedIn, establish which report and which model is on screen. A large share of arguments about whether LinkedIn works turn out to be an argument between first-touch and last-touch with nobody naming the model out loud.

The five reasons the numbers diverge

View-through conversions. LinkedIn claims them, HubSpot has no way to see them, so they exist in one system only.

Window mismatch. LinkedIn is looking 30 days back from the action. Your HubSpot report may be scoped to a calendar month, so a click on the 28th and a deal on the 5th land in different buckets.

Object mismatch. LinkedIn counts events. HubSpot counts contacts, then deals. One person filling two forms is two LinkedIn conversions and one HubSpot contact.

Model choice. Multi-touch models divide a single deal across several sources, so LinkedIn receives a fraction rather than a whole. Adding fractional credit to whole conversions is comparing different units.

Tracking loss. Ad blockers, privacy settings, and stripped UTM parameters break the chain between click and contact. Those leads land in HubSpot as direct or organic, and LinkedIn silently loses credit it earned.

How to reconcile them

Pick one object and one window, and stop comparing dashboards.

Start from HubSpot. Take contacts created in a fixed window, then segment by original source and by the LinkedIn campaign fields the integration writes. That gives you a count of humans, which is the only unit anyone downstream cares about.

Enforce consistent tracking on every entry path. Website forms, Lead Gen Forms, and any offline import need to arrive with the same campaign identifiers, or your reporting will be accurate for two paths and blind on the third.

Then compare like for like. LinkedIn click-through conversions against HubSpot contacts created from LinkedIn in the same window. Leave view-through out of that comparison entirely and look at it separately, as a directional signal rather than a countable outcome.

Expect a residual gap after all of that. The goal is a gap you can explain.

The question attribution cannot answer

Even a perfectly reconciled setup only tells you which touchpoints were present before a deal. It does not tell you which ones caused it.

Those are different questions. A brand-search ad appears on almost every path to a closed deal, which makes it look essential under any model, while a meaningful share of those buyers would have found you regardless. Attribution rewards the channel standing closest to the finish line, even when a different touch moved the buyer.

The only clean way to separate correlation from cause is to change something and watch what happens: hold out a region, pause a campaign for a defined period, or stagger a launch, then compare the affected group against a comparable one. It is less comfortable than a dashboard, and it is the only evidence that survives a CFO asking what happens if the budget is cut.

What to do this week

Open the HubSpot report someone has been quoting and write down which report type and which attribution model it uses. If nobody knows, that is the finding.

Check whether Lead Gen Form submissions and website form submissions arrive with the same campaign data. They usually do not.

Set one window and one object, then produce a single reconciled number, and let people argue about that number instead of about which dashboard to believe.

If you want a second set of eyes on the setup, that is the kind of thing we do. Same argument applies if you are on a different stack: the Salesforce version of this problem is covered in our post on LinkedIn Ads to Salesforce attribution.

work with us

Tell us what you need and we'll send a plan with a clear price, within one business day. No call required.

Step 1 of 3

What do you want help with?

Tell us about your business.

Where should we send your plan?

Request received.

We'll review your business and get back to you within one business day with a plan and a clear price. No obligation.

More customers. Lower costs. Proof it's working.

Website + SEO from $99/mo self-managed, priced on the compute you use, or $600/mo managed. Managed with paid channels is $1,000/mo. A website that gets better every month. Transparent platform included free.

Self-managed is $99/mo and scales with the compute you use. Our team runs it from $600/mo.

the shift

The shops down the street already run on AI.
The data proves it pays.

Auto shops, dental offices, cafés and salons. The local businesses winning right now compete on AI and data. askotter puts those same tools on your side, priced for a business your size.

0% of small businesses already use AI-enabled tools U.S. Chamber of Commerce, 2024
0% projected annual growth of the AI market through 2030 Grand View Research
more likely to win customers when decisions are data-driven McKinsey Global Institute
$0T AI's projected boost to the global economy by 2030 PwC

The same tools the shops down the street use, from $99/mo.