HubSpot & Calendly
Closed-won deals become revenue, MQLs and form contacts become leads, Calendly bookings become scheduled demos — with sensible default rules you can edit.
Sales-led revenue doesn't flow through a checkout, so it can't be measured there. The CRM connections close that gap: deals and meetings become conversions, attributed to the ad that started them, by the same email join as everything else.
HubSpot
Connect HubSpot and we read your portal's actual structure — your pipelines, your stages, your lifecycle values — and generate mapping rules from it. The defaults:
- Every Closed Won stage, in every pipeline → a revenue conversion, valued at the deal's amount and forwarded as
Purchase. - MQL and SQL lifecycle changes → a
Leadconversion. - New contacts from HubSpot form submissions → a
Leadconversion.
The lead rules are gated to form-sourced contacts only — imports, manual adds, workflow-created and API-created contacts never become leads, whether on creation or on a lifecycle change. A list upload can't flood your campaigns with fake conversions.
Every rule is visible under Integrations, on the HubSpot connection, and can be switched off; they're rules, not magic. If your pipeline uses a custom stage as its real "won" moment, you adjust the rule rather than your sales process.
Two behaviors worth knowing:
- Deals closed before the amount is entered wait. A rep marks a deal Closed Won, fills in the number an hour later — common. The conversion is recorded immediately but held from forwarding until the amount lands, so a $0 conversion never trains your campaigns.
- HubSpot forms also identify the visitor on your site, automatically — see Identifying users. The contact, the visitor, and the ad click connect without any wiring.
Calendly
Connect Calendly and every booked meeting becomes a Schedule conversion — the mid-funnel signal ad platforms use to optimize toward people who show up, not just people who click.
Bookings resolve by the invitee's email — the same join as every other source, so the demo connects to the ad click through the identity. Reschedules are recognized and never counted as a second booking.
When the deal closes months after the click
This is where SaaS attribution usually falls apart, and where the email join holds: the click, the demo, and the closed deal can be months apart and on different devices, and they still connect. On the report's lifetime attribution window the revenue is credited no matter the gap (shorter windows are a view you choose, not a limit on the data). The only hard limit is on the ad-platform side: a conversion older than a platform's acceptance window is attributed in Attributely but no longer sent back to the platform.