Skip to content
Parley Consulting
← all work

Modular buildings · Part of Davro Group

Maxi Space

Click → contractEvery ad click traceable to revenue.

The problem

Google Ads could see form fills, but not which enquiries became signed contracts. Campaigns were optimising for leads, not revenue, and the sales data that mattered lived in HubSpot where the ad platform couldn't see it.

What we built

  • A closed-loop offline conversion system between Google Ads and HubSpot.
  • When a visitor arrives from an ad, their Google click ID (GCLID) is captured and stored.
  • On form submission, a custom serverless API creates the HubSpot deal with the GCLID attached, routing it to the right pipeline stage depending on the form. GTM captures UTM parameters in parallel.
  • When a deal is marked closed-won, a HubSpot workflow creates a task holding the deal ID, GCLID and deal value.
  • A custom polling API checks for new tasks, validates the GCLID and uploads the conversion with its real value to Google Ads, with response verification.
  • Built with error handling, data validation, scheduled failure detection, secured endpoints and encryption throughout.
  • Proposals continue to run through HubSpot's native Proposify integration, which now sits inside a fully tracked journey.
▸ The closed loop: from ad click to closed-won conversion. · click to zoom

The result

Click → contract

Every ad click traceable to revenue.

Real deal values

Sent to Google Ads, not lead counts.

3 custom APIs

HubSpot, polling and Google Ads.

Tools used

  • Google Ads API
  • HubSpot API
  • Custom serverless APIs
  • Google Tag Manager
  • Proposify (native integration)

Got a job like this one?

Book a workflow audit