Offline conversions from HubSpot workflows
Send offline conversions with the real deal amount.
Add one step to a HubSpot deal or contact workflow. It sends each deal's real amount to Google Ads, Meta, Microsoft Ads and Reddit, so their bidding learns which clicks bring revenue.
Works with HubSpot Professional and Enterprise plans that include workflows. First 10 companies: Pro free until the marketplace listing, then $79 a month instead of $129.
"The Use the Deal amount option is no longer available." HubSpot's Google Ads help page,
TRIGGER
Deal stage is Closed won
ACTION
Send conversion
LedionClosed won
Value: Amount$48,000 USD
RESULT
- googlesentsending$48,000
- metasentsending$48,000
- microsoftsentsending$48,000
- redditsentsending$48,000
THE PROBLEM
HubSpot's Google Ads events no longer send the deal amount.
| HubSpot built-in (Oct 2026) | |
|---|---|
| Google Ads | One fixed value |
| Meta | Lead ad contacts only |
| Microsoft and LinkedIn | One value you type in |
| No conversion events |
HubSpot's Google Ads help page, updated October 12, 2026, says: "Native Google Ads lifecycle stage conversion events use a fixed value. The Use the Deal amount option is no longer available." Its advice: "Choose a representative amount, such as your average deal size, rather than each deal's actual revenue."
None of HubSpot's events fire on a deal stage.
For real values, the help page says "a developer can build a custom setup using HubSpot workflows and Google's Offline Conversions API." Since June 15, 2026, new integrations can't upload through that API. They use Google's Data Manager API. Ledion is that custom setup, built on the Data Manager API. It also sends to Meta, Microsoft Ads and Reddit.
If your deals are about the same size, a fixed value works. Ledion is for deals that aren't.
WHY VALUES MATTER
Bidding learns from the numbers you send it.
Too few closed deals to bid on? Send a ladder: SQL and opportunity with stage values, each to its own conversion action, then Closed won with the amount.
Google's help page on Maximize conversion value, read October 22, 2026: "Before you can use Maximize conversion value bidding, you'll also need to set up conversion tracking with transaction-specific values."
HubSpot built-in, Google
Ledion
One fixed value
Each deal's amount
Both add up to $93,000. Bidding sees the split.
HOW IT WORKS
Three steps. About 15 minutes per network.
01
Connect your ad accounts.
Google Ads, Meta, Microsoft Ads and Reddit. LinkedIn is next.
- Active
Google Ads
123-456-7890
- Active
Meta
dataset "Website"
- Active
Microsoft Ads
"Northwind US"
- Needs reconnect
Reddit
pixel t2_ab12cd
Illustration 02
Define a conversion once.
"Closed won" goes to your Google conversion action, Meta event, Microsoft goal and Reddit event. Change where it goes without touching a workflow.
Closed won
Once per recordUSD
- Google AdsClosed won (import)
- MetaClosed wonCRM event
- Microsoft AdsOffline: Closed won
- RedditPurchase
Illustration 03
Add Send conversion to a contact or deal workflow.
Map the value to Amount and the currency to the deal currency. That's it.
Send conversion
LedionConversion
Closed wonValue
Deal: AmountCurrency (ISO code, e.g. USD)
Deal: CurrencyIllustration
RECIPES
Closed won is one recipe. Here are three more.
Send earlier stages, each with its own value.
SQL and Opportunity each get their own conversion with a default value, and their steps leave Value empty. Closed won sends the Amount.
Example values
Lifecycle stage is Sales Qualified Lead
Send conversion
LedionSQL
Value: empty, so the default$2,000 USD
- googlesent$2,000
Lifecycle stage is Opportunity
Send conversion
LedionOpportunity
Value: empty, so the default$8,000 USD
- googlesent$8,000
Deal stage is Closed won
Send conversion
LedionClosed won
Value: Amount$48,000 USD
- googlesent$48,000
Send recurring revenue.
Map Value to an MRR or ARR property and Currency to the deal's currency. Each deal goes out in its own currency.
TRIGGER
Deal stage is Closed won
ACTION
Send conversion
LedionNew subscription
Value: ARR€14,400 EUR
Currency: Deal currency
RESULT
- googlesent€14,400
- metasent€14,400
- microsoftsent€14,400
- redditsent€14,400
Keep each result on the deal.
Add an Edit record action after the step and copy one of its outputs, like Ledion status, into a deal property.
TRIGGER
Deal stage is Closed won
ACTION
Send conversion
LedionClosed won
Value: Amount$48,000 USD
RESULT
- googlesent$48,000
- metasent$48,000
- microsoftsent$48,000
- redditno match
ACTION
Edit record
Ledion statusDeal: Conversion statuspartial
Not sure which one fits? I'll set it up with you on a 20-minute call.
Join the betaInside HubSpot
It all lives in HubSpot. There's no new tool to log in to.
See every send.
Kept for 90 days.
- 14:32Deal 4127 · Closed won$48,000Google Ads sent · Meta sent · Microsoft Ads sent · Reddit sent
- 14:05Deal 4119 · Closed won$21,5003Google Ads sent · Meta sent · Microsoft Ads sent · Reddit: no click ID, email or phone on the contact.
- 13:48Contact 8821 · SQL$2,0002Google Ads didn't recognize the click ID (wrong account or too old).
- 11:20Deal 4102 · Closed won1€18,200Google Ads sent · Meta sent · Microsoft Ads sent · Reddit sent
- 09:57Deal 4096 · Closed won$64,000Google Ads sent · Meta sent · Microsoft Ads sent · Reddit sent
- 1Each record keeps its own currency. Deal 4102 went to every network in euros.
- 2A failed send says why, in words. Here Google Ads didn't recognize the contact's click ID.
- 3No match on Reddit. The contact had no click ID, email or phone, so Ledion didn't send it there.
Know which leads can be matched.
Click ID coverage per network, with the fix for each gap.
- Google84%
- Meta71%
- Microsoft46%1Install the capture script
- Reddit92%
- 1Only 46% of paid leads carry a Microsoft click ID. The fix is under the bar: install the capture script.
RESULTS
Know what happened to every conversion.
Step runs
Ledion sends the conversion to each network it goes to.
All answered
Each network's result (sent, failed, too old or no match) goes back to the workflow and into Activity.
About 9 h
A temporary error gets 7 attempts over about 9 hours.
30 min to 24 h
Ledion asks Google for its verdict and shows it in Activity.
Connection breaks
Ledion emails your alert list, so sends don't stop without anyone knowing.
Outputs
- Ledion status
- partial
- Google Ads result
- sent
- Meta result
- sent
- Microsoft Ads result
- sent
- Reddit result
- no_match
MATCHING
A lead without a GCLID can still match.
- Click ID plus contact details
- The click ID goes with hashed email and phone, and the lead ID from Meta Lead Ads. When the contact has them, Google and Meta also get the hashed name with country and postal code. Meta gets city and state too, all hashed.
- Deal workflows
- Ledion reads click IDs, email and phone from the deal's associated contacts. No GCLID property on the deal, and no workflow to copy it.
- Tracking health
- The share of your paid leads that carry each network's click ID.
- A free capture script
- One script tag saves Google, Meta, Microsoft and Reddit click IDs into hidden fields on your HubSpot forms. Every plan includes it.
What Ledion keeps
Kept
- your setup
- encrypted tokens
- 90 days of send results
- HubSpot record IDs
- daily counts
- your team's alert emails
Never kept
- email addresses
- phone numbers
- names
- addresses
- ad click IDs
Not even hashed.
WHAT YOU GET
Send any deal or lifecycle stage as an offline conversion.
- Any contact or deal trigger
- Deal stages, lifecycle stages, custom events, property changes and list membership.
- Real values
- Amount, MRR, ARR, LTV or any number property, in each record's currency.
- Every network from one step
- One conversion goes to Google Ads, Meta, Microsoft Ads and Reddit. No workflow per network.
- Counted once
- Re-enrollments and retries don't count twice. Temporary errors get 7 attempts over about 9 hours.
- No stored contact data
- Email, phone and click IDs are read when the step runs and sent, never stored. Email and phone are hashed first.
COMPARISON
HubSpot's built-in sync vs Ledion
| HubSpot built-in (Oct 2026) | Ledion | |
|---|---|---|
| Triggers | Lifecycle stage change, form submission or page view | Any contact or deal trigger |
| Value | One fixed value per event, or none | The record's real amount and currency |
| Meta lifecycle events | Lead ad contacts only | Website-form leads too (for measurement) |
| No conversion events | Conversions API | |
| Where you see each result | Error messages only | Activity, and an output per network |
Keep using HubSpot's ads tool for reporting and audiences. Ledion only handles conversions.
BUILD VS USE
HubSpot's advice is to build it yourself. Here's the list.
Building it yourself
- API upgrades
- Logs
- Event IDs
- Retries
- Matching rules × 4
- Sign-in × 4
- Cloud project
Ledion
Building it yourself
- 01Custom code and webhook actions in workflows, which need Data Hub Professional
- 02Google Cloud access to the Data Manager API (Google closed its old upload API to new integrations in June 2026)
- 03Sign-in and token handling for four networks
- 04Different email and phone rules per network before hashing. Get one wrong and fewer conversions match
- 05Meta and Reddit take events up to 7 days old
- 06Google and Microsoft take conversions up to 90 days after the click
- 07Event IDs, so retries don't count twice
- 08Retries, backoff, and an alert when a token stops working
- 09A new Meta API version about every four months
- 10A log that says what failed and why
Ledion
- Install from HubSpot
- Connect your ad accounts
- Add one step to a workflow
- Free for one network and 100 sends a month
NETWORKS
Offline conversions for Google Ads, Meta, Microsoft Ads and Reddit.
- Google AdsData Manager API. Click ID plus hashed email and phone, and the hashed name with country and postal code when the contact has them (enhanced conversions). Clicks up to 90 days old.Details →
- MetaConversions API (Facebook CAPI), as a CRM event or a standard event, with click ID, lead ID and hashed contact details. Events up to 7 days old.Details →
- Microsoft AdsOffline conversions for Microsoft Advertising (Bing), with click ID, plus email and phone on goals with enhanced conversions. Up to 90 days, within the goal's conversion window.Details →
- RedditConversions API, with click ID, browser ID, hashed email and phone, and a hashed contact ID. Events up to 7 days old.Details →
- LinkedIn (next)Next on the list. Pro includes it when it ships.Details →
More networks when customers ask for them. Tell me which one you need: santi@ledion.io
PRICING
A flat monthly price per HubSpot account.
Start free with one network. Pro covers every network for $129 a month. Every new install starts with 14 days of Pro. See all plans →
- Free $0
- Starter $49
- Pro $129
- Scale $299
Founding partners
First 10 companies: Pro free, with no card, until Ledion is listed on the HubSpot App Marketplace, then $79 a month instead of $129 for as long as you stay.
FAQ
Before you join.
Which HubSpot plans work?
Do I need a developer or Google Tag Manager?
Can Ledion change my campaigns or budgets?
Will this double count with HubSpot's conversion events?
What happens when a network rejects a conversion?
What does Ledion store, and what does it ask permission for?
How is this different from Zapier?
My sales cycle is longer than 90 days. Does that work?
We only close a few deals a month. Is this worth it?
Most of my leads have no GCLID. Will anything match?
I run ads for several clients. How does that work?
Who's behind Ledion?
Join the beta.
I'm onboarding the first companies one at a time. You get a direct install link and a 20-minute setup call if you want one. First 10 companies: Pro free, with no card, until Ledion is listed on the HubSpot App Marketplace, then $79 a month instead of $129 for as long as you stay.
Thanks. I'll email you within one business day with an install link.
Got it, thanks. I'll read these before I send your install link.
While you wait: in Google Ads, create an "Import from clicks" conversion action. A new one needs 4 to 6 hours before its first upload. Read the setup guide →