SaaS companies have a built-in attribution problem. Someone clicks a Google ad, signs up for a free trial, and converts to paid 14 days later during an in-app moment or a sales call. The Google Ads pixel saw the signup. It missed the conversion. ConversionLoop closes that gap by connecting your CRM or billing system to Google Ads offline conversions — so every trial that upgrades, every deal that closes, gets attributed to the ad that started it.


Most SaaS teams track the signup or trial start as their Google Ads conversion. That is the wrong event. The trial is cheap — converting to paid is the outcome that matters. When Smart Bidding optimizes on trial signups, it finds the audience most likely to sign up, not the audience most likely to pay. The fix is sending your actual paid conversion events — subscription created, deal closed, invoice paid — back to Google Ads as offline conversions.
Why the manual process breaks — and what changes when you automate it
ConversionLoop captures the GCLID at the top of the funnel and waits for your billing or CRM system to confirm the real conversion.
User clicks your Google ad. cl.js captures and stores the GCLID against their email.
User signs up for a free trial. Email is linked to the click.
14 days later, the user upgrades — Stripe fires a payment.succeeded webhook.
ConversionLoop matches the Stripe event to the original GCLID via stored email.
The subscription conversion is uploaded to Google Ads with the MRR value.
Smart Bidding now optimizes toward audiences that actually pay — not just audiences that sign up.
Follow these steps once. Everything after is automatic.
Trial StartedTop-of-funnel signal. Useful for volume, but not for value-based bidding.
Trial Converted to PaidPrimary conversion event. Upload from Stripe or billing system with MRR value.
MQL CreatedCRM event when a lead hits your marketing qualified threshold.
Deal Closed WonFor product-led growth with a sales assist layer. Upload from HubSpot or Salesforce.
Annual UpgradeHigh-LTV event. Uploading these helps ROAS bidding find expansion-ready accounts.
Google Ads supports up to a 90-day offline conversion attribution window. Set your conversion action window to 90 days in Google Ads to capture longer sales cycles. ConversionLoop uploads within seconds of the conversion — the window is controlled in Google Ads settings.
Yes. Create two separate conversion actions in Google Ads (one for monthly, one for annual) and map them separately in ConversionLoop. Annual subscriptions typically warrant a higher target ROAS given the LTV difference.
Yes. If users upgrade themselves in-app, Stripe fires the webhook. ConversionLoop uploads it to Google Ads. No sales involvement needed.


Stop optimizing on guesswork. Every invoice, treatment, and booking — tracked and attributed automatically.
Start free — 14 days on usNo credit card required · 10-minute setup · Cancel anytime