BACK TO BLOG
TOOL HOW-TOOctober 26, 20267 min read

How to Use Usermaven to Tie HubSpot Deals to Paid Campaigns

JH

By Joris van Huët

Enterprise Interim CMO & Marketing Leader · 15+ years · 50+ orgs

Published

2026-10-26

The short answer: if your B2B deals live in HubSpot and close within 180 days of the first ad click, Usermaven can credit each closed-won amount to the Google, Meta, LinkedIn or Microsoft ad that touched it, but only for clicks that carried its ad_id parameter (Google Ads guide), and the price is quoted after a demo (pricing page, checked on 26 October 2026). The steps: install the script and choose a privacy mode, identify people at signup, connect the ad accounts with Usermaven's templates, connect HubSpot, make closed-won a conversion goal, read Paid Ads attribution under two models, test the chain once, and let an assistant draft the weekly readout through MCP.

Disclosure: I may earn a commission through some links on this site. It does not change what this page says.

Before you connect anything:

  1. Attribution starts the day the template does. The Google Ads guide says conversions that happened before the ad_id parameter arrived cannot be attributed to campaigns afterwards. For example, with the template live on 3 November and a 60-day average cycle, closed-won reports describe paid campaigns fully from about 2 January, 60 days later.
  2. The HubSpot records you already keep. An email address on every contact and a primary contact on every deal, because the HubSpot guide matches on email and links deals through that contact.
  3. The comparison that says it worked. For last quarter's closed-won deals, Usermaven's first-touch channel beside the source HubSpot recorded for the same deals. Where they differ, you have the questions for the next pipeline review.

Every ad platform reports the deals it touched, and together they claim more deals than sales closed. Usermaven shares one deal among the touches instead. What the product does and costs is in the Usermaven glossary entry; the CRM side is covered in the HubSpot entry.

What you need

  • A Usermaven workspace, set up after a demo; the pricing page publishes no self-serve plan.
  • Admin access to the ad accounts: Google Ads (or its manager account), Meta, LinkedIn or Microsoft Ads.
  • A HubSpot user who can authorise an app, and a developer who can add one identify call to the signup flow.

1. Install the script and choose a privacy mode

Copy the tracking script from Workspace Settings, Setup into the head of the marketing site and of the app, with autocapture on (installation guide). The same guide recommends pixel white-labeling on your own domain, so ad blockers drop fewer events. Adding data-privacy-policy="strict" switches to cookieless tracking, but the cookieless guide warns that attribution works better with cookies; in cookie mode it recommends consent for EU and UK visitors. For this job, cookie mode with a consent banner is the documented route.

2. Identify people at signup

When someone signs up or logs in, call usermaven('id', { id: ..., email: ... }) from the front end. That single call joins their anonymous visits, including the UTMs of the first ad click, to a known profile, as step 3 of the HubSpot guide explains. If identification has to happen on the server, pass the browser's anonymous_id with the first identify call, or the two histories stay apart.

3. Connect the ad accounts

Go to Workspace Settings, Integrations, click Connect Google Ads, sign in with an admin account, approve the permissions and select only the ad accounts that send traffic to this workspace's sites. Wait until the status reads Synced (Google Ads guide). Meta, LinkedIn and Microsoft Ads connect the same way, each with its own guide linked from Paid Ads Attribution.

4. Put the templates on every ad

In Google Ads, set an account-level tracking template:

{lpurl}?utm_source=google&utm_medium=ppc&utm_campaign={campaignid}&utm_term={keyword}&utm_content={creative}&ad_id={creative}&um_campaign_id={campaignid}&um_cl={gclid}

The template guide marks ad_id as the parameter attribution depends on and um_campaign_id as the one Performance Max needs. Keep Google's auto-tagging on and set the same time zone in Google Ads and Usermaven. On Meta the key parameter is ad_id={{ad.id}}; the guide lists the full string for each network.

5. Connect HubSpot

Under Workspace Settings, Integrations, choose HubSpot and authorise it. The first sync of history takes a few hours; after that HubSpot data syncs once a day. The integration only reads: companies, contacts, deal pipelines, deals, email events and engagements, and it never edits your records (HubSpot guide).

6. Make closed-won the conversion goal

Every deal stage a contact enters arrives as a deal_stage event with the deal's properties attached, so deal_stage_closed_won carries the amount. In the attribution report click Create Conversion Goal, choose that event and set a dynamic value from the amount; dynamic values are available for custom events like this one (attribution guide). Set the default currency first, under Workspace settings, Miscellaneous.

7. Read Paid Ads attribution two ways

Open Attribution, Paid Ads. By Conversion Date answers which ads influenced the deals closed in a period, looking back across your window; By Spend Date answers what a period's spend went on to produce, looking ahead (Paid Ads Attribution). Select first touch and last touch together and read the Campaigns tab: attributed ROAS is the attributed value divided by spend under each model. A campaign that leads under one and vanishes under the other is opening or closing journeys, not both.

8. Test the chain once

Follow the verification in the HubSpot guide: open the site in a private window through a UTM-tagged link, sign up, create a deal for that contact in HubSpot, wait for a sync, then find the person in Contacts Hub: one timeline should run from anonymous page views to the deal_stage events.

9. Let an assistant draft the weekly readout

In Claude's connector settings, add the remote MCP server https://mcp.usermaven.com/mcp, sign in, pick the workspace and approve the read scopes only, declining create and update (MCP guide). Then ask: "Which campaigns generated the most paying customers last month?"

The human check: before the answer reaches a budget meeting, a person opens Paid Ads with the same model and dates, confirms the top three campaigns, and opens two credited deals in HubSpot to see that they are real, closed and correctly valued. The assistant drafts; a person signs off.

Mistakes the guides warn about

  • No ad_id on the click. Usermaven cannot tie the conversion to the ad, and the gap is permanent.
  • Deals without a primary contact. They appear in reports linked to no user (HubSpot guide).
  • UTMs not attached to users. The same guide calls this an identity stitching problem: step 2 did not fire at signup.
  • Judging too soon. The HubSpot guide's setup section says daily syncs, while its troubleshooting section still mentions every three hours; give a new deal a full day.

A model is not a cause

Every model in Usermaven shares out credit for deals that happened. None of them says which deals would have closed without the ad. Usermaven's homepage is built on the claim that last-click reporting starves the channels that open a journey, so a dashboard that moves credit toward early touches is the product making its own case, and the HubSpot comparison from the list above is how you hold it to that case.

The free test of cause is a holdout. Pause one campaign in one country or one segment for six weeks, keep it running elsewhere, and compare new opportunities in HubSpot between the two; a model cannot fake that difference. For the wider argument, see marketing attribution in the enterprise. If you later want that comparison run continuously across every channel rather than once, a causal attribution product such as Causality Engine does it; disclosure: I founded it.

FAQ

How far back can Usermaven credit a deal?

The attribution guide offers a lookback of 30 to 180 days, and the Google Ads guide also names 180 days. The homepage mentions a 365-day window, so confirm on the demo which applies to your plan.

Do I need cookies for attribution?

Not strictly, but the cookieless guide says attribution and segmentation work better in cookie mode, and for that mode it recommends collecting consent from EU and UK visitors.

Can the MCP connection change anything in Usermaven?

Only if you grant write scopes. Creating funnels, goals, segments or dashboards always asks for your approval first, and you can decline write access at sign-in, per the MCP guide.

TAGS
UsermavenMarketing AttributionHubSpotPaid AdsB2B SaaSMCP

ABOUT THE AUTHOR

I am Joris van Huët, an enterprise interim CMO. 15+ years, 50+ organizations, including ING, P&G, Nestlé, BNP Paribas, WeTransfer and Vinted. I take on innovation projects (venture building, design sprints), agentic marketing (setting up and running AI agents) and hands-on multi-channel work. See the track record.

I wrote and published this with AI assistance, and I answer for it. Claims about my own experience are limited to the track record above, and a statistic links to its source or is labelled as an example. I sell interim and fractional CMO work, which is why this site exists. How this site is written.

Senior marketing execution

A senior operator doing the work: campaigns, channels, CRM and AI agents, live from day one.