CONNECTIONS / HubSpot / HubSpot to LinkedIn Offline CAPI
LinkedIn credit that outlasts the HubSpot deal cycle.
Pixel windows expire in weeks; a HubSpot deal can take quarters. Hashed business email is the bridge, joining the eventual closed-won back to the LinkedIn ad that started the thread.
- ● hubspot → linkedin.offline_capi :: live
- > event Deal closed-won value=96,500 USD
- hash sha256(business_email)
- route linkedin.offline_capi conversion=closed_won
- ✓ delivered · pipeline attributed
WHAT THIS ENABLES
HubSpot to LinkedIn Offline Conversions API
HubSpot to LinkedIn Offline Conversions API joins a closed HubSpot deal to the LinkedIn campaign that sourced it using hashed business email, an identifier that holds up across B2B cycles no pixel window survives.
- Campaign credit on LinkedIn that arrives whenever the deal does, even quarters later.
- LinkedIn's bidding working from actual deal outcomes rather than a count of form submissions.
- One more destination added to an offline pipeline already delivering to other ad platforms.
The click, the conversion, and the credit.
The conversion happens off LinkedIn, away from any pixel. Here is how HubSpot closes the loop.
Built for the teams that own the number.
B2B advertisers who built a stage feed once and see no reason LinkedIn should miss out on it.
From kickoff to verified events.
-
Connect
A private app token covering deals, plus the one contact property that matters here: business email.
-
Map
Closed-won paired with a matching LinkedIn offline conversion definition inside the mapper.
-
Deliver
Posting to LinkedIn's Conversions API, with dedupe protecting against a record synced twice.
What changes when the CSV goes away.
| Capability | Manual CSV upload | Datahash |
|---|---|---|
| Reporting | Offline sales sit in a separate export, reconciled by hand. | Revenue counted in the same Offline CAPI reporting as web conversions. |
| Deduplication | A re-uploaded file risks counting the same conversion twice. | Deduped delivery, so a resent record never counts as a second conversion. |
| Match visibility | Match quality is a guess until the numbers look off. | Match rate reported per upload, tied to the source event set that produced it. |
| Effort and latency | An analyst exports and uploads on a manual cadence. | Server-side and automatic the moment HubSpot records the event. |
What Offline CAPI actually receives.
- ● signals :: event payload
- > POST /conversionEvents source=hubspot.deal
- conversion "urn:lla:llaPartnerConversion:512309"
- conversionHappenedAt 1783976700000
- user.userIds [{ idType: "SHA256_EMAIL", idValue: "5f0a83…" }]
- ✓ accepted · conversionValue 96500 USD
Adjacent moves on the same stack.
from HubSpot
HubSpot to Google OCI
HubSpot to Google Offline Conversion Import keeps a captured GCLID pinned to the HubSpot…
Learn morefrom HubSpot
HubSpot to Google Store Sales
HubSpot to Google Store Sales turns closed-won deals and their contact records into Store…
Learn moresame use case
ActiveCampaign to LinkedIn Offline CAPI
ActiveCampaign to LinkedIn Offline CAPI: Signals reads your ActiveCampaign contacts and…
Learn moregeneric
LinkedIn Offline CAPI
Datahash routes offline outcomes, like closed deals from your CRM, to LinkedIn with hashed…
Learn moreAsked on almost every call.
Our LinkedIn-sourced HubSpot deals close many months after the click. Does that still attribute?
It does. The join key is a hashed business email, which does not age. Pixels and cookies expire on their own clocks; an email hash computed at close matches the same hash LinkedIn computed at click, whether two weeks or two quarters have passed. The one requirement is consistency: the contact's business email at close needs to be the address LinkedIn saw originally.
Can we send an earlier HubSpot deal stage to LinkedIn, or only closed-won?
Yes, any stage in the pipeline can map. Closed-won stays the anchor because it is the outcome LinkedIn's bidding predicts, but a long B2B cycle starves the model between wins, so many teams also map a mid-pipeline deal stage, contract sent or negotiation for example, to keep signal arriving while closed-won volume accumulates.
Does the business email have to be the contact's primary HubSpot email property?
Not necessarily. Most workspaces map the primary email property since it is the one kept current, but a secondary work-email field can be used instead if that is genuinely where the business address lives. LinkedIn only ever receives a hash of whichever property is chosen, so swapping the source property later is a mapping change, not a rebuild.
NEXT STEP