HubSpot + Attribution

Turn HubSpot into an ROI engine.

HubSpot tells you who filled the form. Attribution tells you what it cost, which channel actually drove the deal, and when the spend paid back. Connect in 30 seconds, get real CAC, ROAS, and LTV:CAC on top of your HubSpot lifecycle stages. Works on every HubSpot tier, including Starter.

30-second OAuth setup Starts at $49/month
HUBSPOT CONTACT Customer
Contact
Jen Ramirez - Head of Ops
Acme Corp - $48,000 Closed Won
Lifecycle Stage
Customer
Original Source
Paid Social
Attribution fields (synced)
first_channel: Google Ads - Brand
last_channel: Email Marketing
cac: $847
ASK CLAUDE
"What's our true CAC by channel for last quarter's customers?"
Google Brand: $312 CAC, 1.8-mo payback. LinkedIn: $1,840 CAC, 6.2-mo payback. Meta: $4,100 CAC, tough to make back your CAC.
Trusted by HubSpot-powered teams across B2B, SaaS, and B2C
TaxRiseDune SecurityVendrLeaseMDM-FilesLivestorm

The HubSpot attribution gap

LinkedIn drove the deal.
HubSpot gave the credit to email.

Your marketer spent $18,400 on LinkedIn last quarter and got 2,000 clicks. Some became newsletter signups. Those contacts went into nurture, got retargeted, got an ABM email from sales, and closed two months later. HubSpot's lookback window truncated the journey and credited the last touch. LinkedIn shows up as "a few MQLs" and nothing else. Your CFO asks for LinkedIn ROAS. Your marketer says "we can't prove it." That is the HubSpot attribution gap.

Account journey: Acme Corp, 3 stakeholders, $2,348 ARR
WhoTouchpointCostWhat HubSpot sees
Jen (Ops)
LinkedIn Ad click → newsletter signup
$8.40
Contact A (Source: Paid Social)
Raj (CTO)
LinkedIn retargeting → whitepaper DL
$7.80
Contact B (Source: Paid Social)
Jen (Ops)
Email nurture click → demo request
-
Latest Source: Email Marketing
Maya (CFO)
ABM email click from sales sequence
-
Contact C (Source: Email)
Acme
Closed Won: $2,348 ARR
-
Deal credit: Email Marketing
What HubSpot sees alone

Three contact records at the same company, each with its own Original Source. HubSpot does not roll them up to the account for attribution purposes. The deal sits on one contact, and revenue attribution credits the Latest Source: Email Marketing. LinkedIn shows up as "one MQL." No ad spend attached to any of it.

What Attribution adds

All three stakeholders resolved to Acme Corp via email domain, rolled up to one account journey. Every ad dollar bound to the right person. Multi-touch credit distributed across the LinkedIn click that created Jen, the LinkedIn retargeting that converted Raj on the whitepaper, the ABM sequence that reached Maya, and the email that closed. The full path written back to HubSpot on the Company and every Contact.

The reports HubSpot can't build

Ask a question. Get an answer.

Attribution's MCP integration connects Claude, ChatGPT, or Gemini directly to your attribution data. Every ad dollar bound to the person who clicked, every touchpoint deduplicated across channels, every HubSpot contact rolled up to its parent company account. Ask a question in plain English. Get an answer, the receipts, and a follow-up.

Claude · Attribution MCP
Which channels should I scale next quarter? And where within each channel is money getting wasted?
Three channels worth scaling: Google Non-brand (8.0x, 1.5 mo payback), LinkedIn (5.2x, 2.3 mo), and Google Brand (15.4x but already maxed on search volume). But the LinkedIn number hides something: one creative is doing the work while two are dragging the channel down. Here's the breakdown.
Channel
Spend
Customers
CAC
ROAS
Payback
Google Brand
$8,400
27
$311
15.4x
0.8 mo
Google Non-brand
$22K
34
$647
8.0x
1.5 mo
LinkedIn Ads 3 ads hidden
$24K
13
$1,853
5.2x
2.3 mo
LinkedIn breakdown by ad creative
"State of B2B Attribution" whitepaper
Sponsored Content
$7,400
10
$740
10.1x
"Beyond Last Click" webinar invite
Sponsored Content
$9,900
2
$4,950
1.7x
"Compare vs HubSpot" carousel
Document Ad
$6,800
1
$6,800
1.2x
Meta Ads
$12K
3
$4,100
1.8x
11.7 mo
The finding HubSpot can't show you
The LinkedIn channel average is $1,853 CAC. But the whitepaper ad is doing all the work at $740 CAC, while the webinar invite ($4,950) and the comparison carousel ($6,800) are cancelling out its gains. Kill the bottom two, reallocate to the whitepaper, and LinkedIn's blended CAC drops to $740 without changing total spend. HubSpot's attribution stops at the channel, so this spread is invisible in a HubSpot dashboard.
Claude · Attribution MCP
Look up Acme Corp and show me their full journey to closed-won.
Mid-market scenario
Found Acme Corp. One $48K closed-won deal, 4 visitors across 3 HubSpot contacts, 22.9x ROAS on $2.1K in attributed ad spend, 62 days from Lead to Closed Won. Here's the full journey with HubSpot deal stage progression.
$48K
Revenue
$2.1K
Ad Cost
22.9x
ROAS
62
Days to Close
HubSpot Deal Pipeline
Lead
Jan 12
MQL
Jan 26
SQL
Feb 14
Opp
Mar 1
Closed Won
Mar 15
Marketing Touchpoints
Jan 12 Blog: 'Attribution for B2B' Organic
Jan 19 Clicked 'B2B Guide' ($0.82 CPC) LinkedIn Ad
Jan 26 Pricing page viewed Direct
Feb 3 'Data Export Tool' ($1.24 CPC) Google Ad
Feb 14 Webinar: 'Beyond Last Click' Content
Feb 21 Pricing page viewed Direct
Touchpoints by Channel
Direct
4 visits
LinkedIn
2 visits
Google
1 visit
Organic
1 visit
Content
1 visit
The finding HubSpot can't show you
Three HubSpot contacts at Acme Corp, different Original Sources, connected by company domain into one account journey. $2.1K in attributed ad spend across LinkedIn and Google, bound to the right stakeholders. Full deal stage progression from HubSpot's pipeline alongside every marketing touch. HubSpot's native attribution would show this as three separate contacts with three separate sources, and the $48K deal would credit whatever touched last.

Why HubSpot's own attribution doesn't solve this

HubSpot is great. Just not for attribution.

HubSpot pulls campaign-level spend from Meta, Google, and LinkedIn, but it counts the same contact three times if they clicked three campaigns. Nothing is deduplicated. It does not roll contacts up to accounts, because attribution reports are contact-level. It does not offer multi-touch revenue attribution on Pro or Starter, because that feature is gated to Marketing Hub Enterprise. These are real limits, and they are why HubSpot customers buy Attribution.

What you need
HubSpot alone
HubSpot + Attribution
See ROAS and CAC that match the bank account
No
HubSpot pulls campaign-level spend from Meta, Google, and LinkedIn, but the same contact clicking three campaigns counts as three conversions. No deduplication. No TikTok, Microsoft, Reddit, or other networks. ROAS looks inflated, same as platform-reported numbers.
Yes
Pulls spend from a dozen-plus ad platforms, binds each dollar to the real person who clicked, deduplicates across the full journey. Numbers reconcile to closed-won revenue.
Multi-touch revenue attribution
Enterprise only
Revenue attribution requires Marketing Hub Enterprise, which starts around $3,600/month. Pro and Starter do not include it. Even on Enterprise, the report counts contact interactions, not ad dollars, so it cannot calculate true ROAS.
Yes
Five multi-touch models (first, last, linear, time-decay, position-based) available on every plan including Starter at $49/month.
Track anonymous journey before form fill
Partial
HubSpot cookies track sessions before a contact is created, but only touches inside the HubSpot ecosystem (HubSpot forms, pages, UTM'd traffic). Third-party ads and referrers get attributed to 'Direct' often.
Yes
Full anonymous visitor tracking across devices and sessions. Ad clicks are captured even when UTMs are missing, because Attribution auto-tags every ad network.
Account-based: roll up multiple contacts to one deal
No
HubSpot attribution reports are contact-level. If a developer clicks the first ad and a CFO signs the contract, HubSpot sees two separate contact journeys with no revenue tie between them.
Yes
Account-based attribution binds all contacts in a HubSpot company to one unified account journey. The developer's ad click gets credit for the CFO's deal.
Customize models for PLG / trial businesses
No
HubSpot attribution models are fixed. There is no way to exclude post-signup direct traffic, which dilutes paid channels with repeat login visits.
Yes
Cutoff event logic: four configuration modes (include all, exclude direct, include direct until cutoff, exclude all after cutoff). Purpose-built for trial and PLG funnels.
CAC payback cohort analysis
No
HubSpot's revenue attribution report shows total attributed revenue, not when the spend breaks even by channel cohort over time.
Yes
Cohort report shows cumulative ROAS week-by-week by channel. Look-forward window credits campaigns for deals that close months later.
Export raw data to Snowflake / BigQuery
No
HubSpot can sync aggregated contact and deal data to a warehouse through Operations Hub, but it does not have user-level ad spend, deduplicated conversions, or raw attribution touchpoints to export. The data you would warehouse is the same aggregate reporting HubSpot shows in its own dashboards.
Yes
Native export to Snowflake, BigQuery, and Redshift on the Enterprise plan. Raw visit-level and user-level data, deduplicated conversions, ad spend bound to individual visitors. Finance can audit every number back to source.
Ask questions in plain English (AI / MCP)
No
HubSpot Breeze AI answers questions about HubSpot CRM data. It cannot answer attribution questions that require external ad spend, because HubSpot does not have that data.
Yes
Native Model Context Protocol (MCP) integration. Connect Claude, ChatGPT, or Gemini via OAuth and ask any attribution question. 60+ purpose-built endpoints.

HubSpot Marketing Hub Enterprise pricing and feature gating per HubSpot's published pricing and docs as of 2026. Check knowledge.hubspot.com for current availability.

Pipeline questions, answered in seconds

Stop building dashboards. Start asking questions.

Attribution's MCP integration gives HubSpot marketers direct conversational access to attribution data. Every question below is a real query a HubSpot customer can ask Claude, ChatGPT, or Gemini once Attribution is connected via OAuth.

True CAC by HubSpot lifecycle stage
"What is our CAC for customers created last quarter, broken out by channel and deal size?"

Claude pulls cost, conversion, and deal data together, calculates CAC by channel, and segments by HubSpot deal amount tiers so you can see whether small deals are subsidizing the big ones.

Which forms and landing pages drive revenue
"Of our HubSpot forms, which ones produced contacts that became customers worth more than $10K ARR?"

Claude maps HubSpot form submissions to downstream Lifecycle Stage changes and revenue, so you know which lead-gen assets are actually qualifying for real pipeline.

Spot channel saturation early
"Plot our Google Ads spend against customers acquired over the last 6 months and tell me if we're hitting diminishing returns."

Claude runs the saturation curve on your own data, not platform-reported data, and tells you the point at which adding another dollar to Google stops producing another customer.

Deal stalled? Check the journey
"Show me every marketing touch for Acme Corp across their HubSpot contacts, and tell me what's changed in the last 30 days."

Claude pulls the company-level history across all associated HubSpot contacts, flags recent touches, and identifies whether the account has gone quiet or is still being nurtured.

Reallocate budget for next quarter
"Based on CAC, payback, and ARR growth, give me a reallocation plan that moves $10K/month from underperforming channels to scalable ones."

Claude ranks channels by payback efficiency, identifies which have room to scale, and returns a reallocation plan with expected impact. You get a second opinion from a numerate analyst.

Prove marketing ROI to finance
"Build a CAC, LTV:CAC, and payback summary for the last 90 days of HubSpot customers, ready to hand to the CFO."

Claude compiles the numbers, shows the underlying data, and produces a defensible report. Every metric traces back to a specific HubSpot contact, deal, and ad spend record.

OAuth connection. Data stays in your Attribution account. Works with Claude, ChatGPT, Gemini, or any MCP-compatible AI assistant. No warehouse add-on required.

Get started

Attribution's HubSpot plans

Start at $49/month. Upgrade when you're ready. Enterprise is custom for teams running account-based attribution and warehouse export.

Starter
$49 /month

Save 16% with annual billing

Start 14-Day Trial

Early-stage teams tracking basic metrics across Meta and Google.

Includes
HubSpot native integration
Up to 1,000 MTUs
1 user seat
First Touch, Last Touch, Linear
Meta and Google Ads connectors
Email support
Enterprise
Custom

Inquire to learn more

Contact Us

HubSpot teams with account-based and warehouse-first tracking needs.

Everything in Pro, plus
Custom MTU limits
Custom seats
Full model customization (cutoff events, lookback)
Account-based attribution
Multi-project / workspace support
Data warehouse export (Snowflake, BigQuery, Redshift)
Offline event ingestion
Salesforce integration
Managed onboarding and custom support tier

Transparent overage pricing: $10 per 1,000 MTUs, $1 per 1,000 events. Published on the pricing page.

Frequently asked questions

HubSpot attribution, answered.

Multi-touch attribution for HubSpot users ranges from $49/month to $50,000+ per year depending on the tool. HubSpot's own multi-touch revenue attribution is a Marketing Hub Enterprise feature starting around $3,600/month (plus a $7,000 onboarding fee). Dedicated attribution platforms like Attribution start at $49/month (Starter) and $399/month (Pro, $335/month billed annually) for SMB and mid-market HubSpot customers, with Enterprise pricing custom. Dreamdata's paid plans start around $750/month and scale past $2,499/month. HockeyStack starts around $1,399/month. Adobe Marketo Measure is enterprise-priced. For most SMB HubSpot customers, a dedicated attribution tool at $49 to $399/month gives you more reporting depth (user-level CAC, account-based attribution, cohort payback, ROAS across a dozen ad networks) than HubSpot Enterprise itself.

HubSpot's attribution reports often do not match ad platform numbers because HubSpot does not deduplicate conversions across campaigns and does not bind ad spend to individual visitors. If one contact clicks three different ads before converting, HubSpot counts three conversions, which inflates ROAS the same way Meta, Google, and LinkedIn inflate ROAS in their own dashboards. On top of that, HubSpot pulls spend at the campaign level, not the user level, so you cannot calculate true cost per customer for any specific deal or ad creative. Attribution solves this by binding every ad dollar to the real person who clicked, deduplicating conversions across every touchpoint and channel, and rolling the result up to HubSpot contacts, deals, and companies. The output is a set of numbers that reconcile to your closed-won revenue and your bank account.

The best attribution tool for HubSpot depends on your business stage, sales motion, and budget. For SMB and mid-market HubSpot customers ($1M to $50M revenue), Attribution is the strongest fit because it starts at $49/month, works on every HubSpot tier (Starter through Enterprise), and provides user-level CAC, ROAS, cohort payback, and account-based attribution that HubSpot's native reporting cannot produce. For pure B2B mid-market and enterprise with long sales cycles and heavy ABM motions, Dreamdata is a competitive choice at $750 to $2,499+ per month. For very large enterprises running Salesforce alongside HubSpot, Adobe Marketo Measure (formerly Bizible) is purpose-built but enterprise-priced. HubSpot's own multi-touch revenue attribution (Marketing Hub Enterprise, around $3,600/month) is a last-touch-plus report that works for HubSpot-native journeys but does not deduplicate conversions or calculate true user-level ROAS.

Yes. HubSpot gates its multi-touch revenue attribution report to Marketing Hub Enterprise (around $3,600/month plus a $7,000 onboarding fee), which most SMB HubSpot customers do not have. Attribution provides full multi-touch attribution on every HubSpot tier, including HubSpot Starter and Professional, starting at $49/month. Attribution's Starter plan includes first-touch, last-touch, and linear models; the Pro plan at $399/month adds time-decay; Enterprise adds position-based and full model customization including cutoff event logic for PLG funnels. All Attribution plans work via OAuth with any HubSpot edition (Free, Starter, Professional, Enterprise).

Attribution's HubSpot plan is best for B2B, B2C, and SaaS companies using HubSpot as their CRM who need marketing ROI metrics that reconcile to closed-won revenue: deduplicated channel-level CAC, ROAS, payback, and LTV:CAC. Typical Attribution customers on the HubSpot plan are SMB and mid-market businesses running paid acquisition across Meta, Google, LinkedIn, TikTok, or Microsoft Ads, where the attribution question has shifted from "which contacts filled which forms" to "which channels are paying for themselves." Attribution's HubSpot Starter plan is $49/month for teams tracking basic metrics across Meta and Google. The Pro plan is $399/month ($335/month billed annually) for growth-stage teams expanding spend and channel mix. Enterprise is custom for teams that need account-based attribution, warehouse export, and advanced model customization.

Attribution connects to HubSpot through a secure OAuth flow that sets up in under 30 seconds. Once connected, Attribution automatically tracks HubSpot Contact and Lead Lifecycle Stage changes, Deal Stage changes (including Closed Won with revenue), HubSpot Forms submissions (on HubSpot Landing Pages and on any page where Attribution's tracking snippet is installed), and HubSpot Live Chat interactions. Attribution also writes attribution data back into HubSpot as custom contact and deal properties: first channel, last channel, and customer path. Revenue is tracked on Closed Won Deals using the Amount field. HubSpot Engagements (Calls, Emails, Meetings, Tasks) are not currently supported due to HubSpot API limitations; see docs.attributionapp.com for the full integration reference.

Attribution uses HubSpot's contact, lead, and deal data to track how individual users (and their associated company accounts) move through lifecycle stages. Every Lifecycle Stage transition becomes a time-series event on the customer journey. Every Deal stage change becomes a conversion event, and Closed Won Deals contribute their Amount to attributed revenue. You can choose which custom lead, contact, and deal objects to sync. Attribution also tracks HubSpot Form submissions and HubSpot Live Chat when they happen on HubSpot Landing Pages, or on any page where Attribution's tracking snippet is installed with the HubSpot Forms and Live Chat options enabled.

The four marketing reports every HubSpot customer should be running are: (1) CAC and payback by channel, segmented by HubSpot Lifecycle Stage, so you can see which channels produce customers that pay for themselves the fastest; (2) channel performance by HubSpot Deal Stage, showing Contact created, MQL, Opportunity, and Closed Won counts by channel with attributed revenue; (3) the cohort report, showing cumulative ROAS week-by-week for each channel so you know exactly when spend breaks even; and (4) the customer journey report, which renders the full anonymous-to-Closed-Won path across every HubSpot contact associated with a company account. HubSpot's native reporting can produce approximations of reports 1 and 2 at the Enterprise tier. Reports 3 and 4 are not possible in HubSpot at any tier. Attribution produces all four on every plan, accessible through the dashboard and through conversational queries via the MCP integration with Claude, ChatGPT, or Gemini.

Yes, on the Enterprise plan. Attribution rolls up individual HubSpot Contact journeys under their parent HubSpot Company, so when multiple stakeholders at one account each touch different marketing channels, Attribution binds all of those journeys into one unified account view. The paid campaigns that acquired the first developer at Acme Corp get credit for the deal the CFO at Acme Corp signed, because both contacts sit under the same Company record in HubSpot. The cohort report and look-forward window also operate at the account level. HubSpot's native attribution is contact-level only and cannot roll up touchpoints to the account, which is a significant limitation for B2B customers with multi-stakeholder buying committees.

Attribution's MCP integration is a native, purpose-built Model Context Protocol connection that lets Claude, ChatGPT, Gemini, or any MCP-compatible AI assistant query your Attribution data directly via OAuth. For HubSpot customers, this means you can ask natural-language questions like "what's our CAC by channel for customers created last quarter" or "which HubSpot forms produced the most revenue" and get structured answers with tables, charts, and recommendations from your live HubSpot and Attribution data. Attribution exposes more than 60 purpose-built endpoints: channel performance, cohort analysis, paths, company lookups, and raw conversion and revenue data. Attribution's MCP is not a data-warehouse passthrough, so it does not require a paid warehouse add-on, SQL, or IAM setup to work.

Attribution and Dreamdata both offer B2B attribution with HubSpot integrations, but differ on price, setup, and scope. Attribution's HubSpot plan starts at $49/month (Starter) and $399/month (Pro), with pricing published on the site. Dreamdata's paid plans start around $750/month (Activation Starter) and scale to $2,499/month or more, with pricing not published and annual contracts required. Dreamdata is designed primarily for B2B mid-market and enterprise; Attribution serves SMB through enterprise and is equally useful for B2C and PLG businesses. Attribution's MCP integration is native and works on every plan; Dreamdata's data-warehouse access is gated to higher tiers. Attribution publishes overage pricing ($10 per 1,000 MTUs, $1 per 1,000 events); Dreamdata does not. Both platforms support account-based attribution and HubSpot sync. The decision usually comes down to price point, time-to-value, and whether you need published pricing or a custom quote.

Yes. Attribution offers five multi-touch attribution models (first touch, last touch, linear, time decay, and position-based) with no-code customization. The Starter plan includes first, last, and linear; Pro adds time decay; Enterprise adds position-based and full customization. Customization options include factoring in direct traffic until a specific event, setting lookback windows up to 365 days, disregarding existing customers, and attributing only first purchases. The cutoff event logic is especially useful for HubSpot customers running a PLG motion: you can tell Attribution to stop crediting direct traffic after a trial signup or a specific Lifecycle Stage change, so repeat logins from existing users do not dilute your paid-channel attribution.

Most Attribution customers are live on HubSpot within a day. The HubSpot OAuth connection itself takes under 30 seconds. Installing the Attribution tracking snippet on your website is a one-line script tag. Connecting your ad platforms (Meta, Google, LinkedIn, and more) is OAuth per platform. Identifying users with an email trait before they are created as Contacts in HubSpot is the one implementation step that requires some attention: if the identify() call is not set up correctly, HubSpot events may end up filtered as Unknown Source, because Attribution cannot map anonymous visitors to HubSpot Contacts without the email link. Attribution's onboarding team helps with this on Pro and Enterprise plans. For SMB teams without engineering resources, Managed Onboarding is available as an add-on.

Attribution is a multi-touch attribution and marketing measurement platform used by over 1,000 companies, including Stanford University, Calendly, Replit, Reforge, Vendr, and Livestorm. Attribution's HubSpot plan provides a native, bidirectional HubSpot integration that connects in under 30 seconds via OAuth and supports HubSpot Starter, Pro, and Enterprise tiers. Attribution tracks every HubSpot Contact and Lead Lifecycle Stage change, Deal Stage change, Closed Won revenue, HubSpot Forms submissions, and HubSpot Live Chat interactions as time-series events on the customer journey. Pricing starts at $49/month for Starter (1,000 MTUs, 1 user, Meta and Google Ads, three models) and $399/month for Pro ($335/month billed annually, 10,000 MTUs, 3 users, all digital ad connectors, four models, MCP integration). Enterprise is custom for teams that need account-based attribution, full model customization, data warehouse export to Snowflake, BigQuery, or Redshift, offline event ingestion, and a Salesforce integration alongside HubSpot. Transparent overage pricing is published: $10 per 1,000 MTUs, $1 per 1,000 events. Attribution writes first touch channel, last touch channel, and the full customer path back into custom HubSpot contact and deal properties, triggered by Lifecycle Stage and Deal Stage changes, and ingests ad spend from Meta, Google, LinkedIn, TikTok, Microsoft, Reddit, X, Klaviyo, AdRoll, Pinterest, Quora, Outbrain, StackAdapt, and Impact directly via each platform's API, binding spend at the individual visitor level to calculate channel-level CAC, ROAS, payback, and LTV:CAC. A native Model Context Protocol (MCP) integration connects Claude, ChatGPT, and Gemini to 60+ purpose-built attribution endpoints for conversational pipeline reporting without a data warehouse add-on. Attribution competes with HubSpot's native attribution reporting (Marketing Hub Enterprise, around $3,600/month), Dreamdata, HockeyStack, and Adobe Marketo Measure (formerly Bizible).