Customer Impact
← All results
Kaizo Tracking & conversion measurement

One conversion that counts: Kaizo measures every booked demo

For a SaaS company with a demo-led sales process, only one conversion really counts. We built the measurement around that single step, from the button on the website to the contact in HubSpot, and let Google Ads bid on it.

Result Google Ads bids on demos
Client
Kaizo
Sector
B2B SaaS
Role
GTM, GA4, Google Ads, Meta & HubSpot
Result
One primary conversion
The problem

Demo requests ran through an embedded calendar that analytics could not see, and some CTAs sent visitors off the domain. Google Ads had no clean signal to learn from.

What we did

A dedicated event for the booked demo, one primary conversion in Google Ads, a funnel where every CTA leads to a measurable Kaizo page, and CRM fields that add up.

The result

GA4, Google Ads, Meta and HubSpot speak the same language: a booked demo. Leads, MQLs and customers stay visible as secondary signals.

The challenge

The most important step was the hardest to measure

Kaizo sells through demos. Anyone who wants to see the software fills in a form and then picks a time slot in an embedded calendar. Exactly that step fell outside analytics: a calendar in an iframe sends no page view to GA4, and a form submission does not yet tell you whether someone actually goes on to book a meeting.

Around that measurement there were more leaks. Some CTAs sent visitors to an external marketplace, where GA4 no longer follows them. Older CTAs depended on a script that ad blockers can stop. Customer case studies, the pages with the highest buying intent, did not have a demo CTA yet. And in HubSpot, one answer from the demo form landed in a duplicate property that nothing read.

What we built

The tracking architecture, step by step

01

A dedicated event for the booked demo

On the demo page, demo_booked fires once, at the moment the form is complete and the calendar opens. A second event, calendly_scheduled, goes through the data layer to GA4 as soon as the prospect actually confirms a time slot. That also shows who drops off between form and calendar.

02

Key event in GA4, conversion in Google Ads

Through Google Tag Manager, demo_booked is a key event in GA4 and a conversion action of the Book appointment type in Google Ads. Both systems measure the same event.

03

The same demo as a conversion in Meta

The Meta pixel runs through the same Google Tag Manager container and receives the same booked demo as its conversion. Google Ads and Meta now optimise on exactly the same event, so you compare both channels on what counts.

04

One primary conversion

The booked demo is the only primary conversion. The GA4 event for the demo button, the form submission and the HubSpot stages lead, MQL and customer are secondary: visible in the reports, without steering the bidding.

05

Every CTA to a measurable page

No CTA sends visitors to an external marketplace anymore. A new CTA block with two choices, demo or contact, sits in the page as a plain link: visible to GA4 and resistant to ad blockers. Every case study got a demo CTA.

06

CRM data that adds up

The duplicate HubSpot property was traced, with a fix in the right order so no demo request loses its answer. Along the way we found that the HubSpot Forms API silently ignores a field that is not on the form, with a normal success response. So we test every field with a real submission.

07

The click ID in the CRM

HubSpot stores the Google click ID on the contact. That is the basis for sending lifecycle stages and deals back to Google Ads as offline conversions, so bidding eventually learns from pipeline and not just from requests.

Why this way

The choices behind the setup

In Google Ads only primary conversion actions are used for bidding; secondary actions are for observation. Smart Bidding therefore optimises for whatever you set as primary. One clean primary conversion, close to revenue, gives the algorithm a clear goal, while soft signals stay visible without muddying what it learns.

An event in the data layer lets Google Tag Manager fire the right tags the moment the interaction happens, even when that interaction takes place in an embedded calendar. That is why we push the demo events to the data layer ourselves, instead of guessing from page views.

In GA4 you turn such an event into a key event, to measure the actions that matter to your business and evaluate the channels that lead to them. That way GA4 and Google Ads compare the same event.

For the step after the demo, the click ID is the key. Google recommends to save click IDs along with the lead information and send them back when that lead converts later. How to set that up is in storing the gclid in your CRM.

What changed

From measuring on hope to measuring by design

Booked demo in analytics Before: invisible, inside an embedded calendar After: dedicated event when the calendar opens
Primary Google Ads conversion Before: no single clear goal After: the booked demo only
CTAs to an external marketplace Before: visitors left the domain After: every CTA leads to an own page
CTA technology Before: dependent on a script After: plain link, resistant to ad blockers
Customer case studies Before: no demo CTA After: every case with a demo CTA
The result

Numbers you can steer on again

One goal

Google Ads bids on the booked demo, not on page visits

Fully visible

every CTA leads to a page GA4 can measure

Pipeline-ready

click ID in HubSpot as the basis for offline conversions

The new Google Ads account structure runs on this measurement. Every campaign learns from the same event sales cares about, and marketing and sales look at the same number. Want to review your own setup the same way? Start with the conversion tracking audit checklist.

Frequently asked questions

What marketers ask us about this setup

Why only one primary conversion in Google Ads? +

Because Smart Bidding optimises for whatever you set as primary. At Kaizo that is the booked demo. Leads, MQLs and form submissions remain visible as secondary conversions, but do not steer the bidding.

Do you measure the demo at the form or at the calendar confirmation? +

Both, as separate events. demo_booked fires when the form is complete and the calendar opens; calendly_scheduled follows when the prospect confirms a time slot. That also shows who drops off between form and calendar.

Why do CTAs to an external site not count? +

As soon as a visitor leaves the domain, GA4 no longer sees them. Let every CTA lead to an own page first, and measure there.

Can HubSpot lose form fields without an error? +

Yes. Through the Forms API, a field that is not on the form is ignored, with a normal success response. Test every field with a real submission.

How do you connect Google Ads to real pipeline? +

Store the Google click ID in your CRM, keep lifecycle stages up to date and send them back to Google Ads as offline conversions.

Further reading

Get started on your own tracking

Read more

Kaizo: full-funnel growth for a SaaS scale-up

→

Does Google Ads know where your revenue comes from?

We build your measurement around the conversion that really counts for your sales, from website to CRM. Contact Tanguy.