Why clicks and cost per lead mislead
Clicks, click-through rate and cost per lead are easy to move and easy to report. None of them tell you whether paid search is making the business money.
A cheaper lead is only good news if it turns into a customer at the same rate. In SaaS it often doesn't: the cheapest sign-ups tend to come from students, job seekers and people looking for something free. If Google is told every sign-up is a win, it will find more of those, and cost per lead falls while cost per customer rises.
So I keep clicks and CTR in the appendix. They're useful for diagnosing an account, not for judging it. The account is judged on what it costs to win a customer, what that customer is worth, and how long the money takes to come back.
The four numbers, defined
Paid CAC is what paid search cost, divided by the new paying customers it brought in. Use media spend for bidding targets. For board reporting, add management fees and tools to get a fully loaded figure, so the channel isn't flattered.
Blended CAC is all sales and marketing cost divided by all new customers, from every channel. It's the check on paid CAC: if paid CAC improves while blended CAC gets worse, paid search may be claiming customers who would have arrived anyway, usually through brand searches.
LTV (lifetime value) is the gross margin a customer earns before they churn. Revenue alone overstates it, because hosting, support and payment fees come out of every dollar. Dividing by monthly churn gives the expected lifetime in months.
LTV:CAC says how many times a customer repays their acquisition cost. 3:1 is the common benchmark for a healthy, scalable channel.
Payback period is how many months of gross margin it takes to earn the CAC back. It's the number I use to decide whether to scale, because it captures cash as well as profit. A great ratio with a 30-month payback can still starve a company of cash.
For annual plans, use the monthly equivalent of the contract, and remember cash arrives up front, which shortens real payback. For freemium and lifetime plans, measure cost per paid upgrade against what an upgrade is worth, rather than per sign-up.
Setting targets before launch
Targets come before campaigns. Before we work together, I look at your sign-up to paid rate, customer lifetime value and target payback, and compare them with what clicks cost for your keywords. That shows what the campaigns need to hit to be profitable, and how realistic it is.
- 1. Set a maximum CAC.Take the lower of LTV ÷ 3 and your payback ceiling (monthly gross margin × the months you're willing to wait). Many SaaS companies use 12 months; well-funded companies sometimes accept longer.
- 2. Work back to cost per trial or demo.Multiply the maximum CAC by your trial-to-paid or demo-to-close rate. That's the most you can pay for each trial or demo.
- 3. Work back to cost per click.Multiply the cost per trial by your click-to-trial rate. Compare that with real CPCs for your keywords. If the category costs well above it, paid search won't pay back on today's funnel, and I'll say so before you spend anything.
- 4. Agree the targets in writing.Usually cost per trial or demo, cost per paying customer and months to payback. Reports are written against those same numbers.
For Rezi, I agreed a breakeven cost per paid upgrade up front and only added budget once non-brand search converted consistently below it. Read the Rezi case study.
Tracking from click to closed-won
None of this works unless Google Ads can see revenue. Most accounts I audit count every sign-up or form fill as a conversion, and stop there. The fix is to connect each click to what happened next.
- Capture the click ID.Store the GCLID (and UTM parameters) on the user or lead record at sign-up, so every later event can be matched back to the click that started it. The free UTM builder and dataLayer push generator help with the tagging side.
- Product-led: send trial, paid and MRR events.From your app or billing system (Stripe, for example), send trial started, first payment and its value back to Google Ads.
- Sales-led: import CRM stages as offline conversions.From a CRM such as HubSpot or Salesforce, upload MQL, SQL, opportunity and closed-won as separate conversion actions, each with a value, as the lead moves through the pipeline.
- Choose what Google bids to.Only the stage closest to revenue with enough volume is set as primary. The rest stay secondary, so they show in reports without steering bids.
In one B2B SaaS account, passing the GCLID into user records and syncing funnel events back to the ad platforms is what made it possible to scale non-branded search on payback. See the $3,664 new MRR case study.
Bidding to pipeline value
Once stages flow back, each one gets a value equal to what it's worth on average: the revenue it eventually produces, multiplied by how often it gets there. Google can then bid more for searches that lead to opportunities and less for those that only fill forms.
As an illustration only: with a $12,000 average annual contract, a 30% opportunity-to-won rate and a 50% SQL-to-opportunity rate, an opportunity is worth $3,600 and an SQL $1,800 to bid against.
Early on there's rarely enough revenue data for automated bidding to learn from, so new accounts often start on manual bids and tight, high-intent keywords. Once paid-customer or pipeline conversions arrive steadily, I move to conversion-value bidding with a target that matches the CAC and payback agreed at the start.
For a B2B communication SaaS, rating each new sign-up and uploading the rating to Google Ads let me see which keywords produced real business customers. After a few months of that data, cutting the keywords behind low-rated sign-ups took high-rated sign-ups from 82 to 175 in a month, with cost per sign-up down 55%. Read the pipeline quality case study.
How I report it
Reports lead with trials, demos, paid customers, new MRR and payback by campaign. Clicks and CTR are there if you want them.
- Brand and non-brand on separate lines.Brand clicks are cheap and convert well, so blending them in hides how everything else performs.
- Pipeline quality, not lead volume.For sales-led products: how many leads became SQLs and opportunities, and the cost of each stage, by campaign and keyword theme.
- Payback by cohort.Customers are grouped by the month they were acquired, and each cohort's gross margin is tracked against what it cost, month by month, until it has paid back. That shows whether recent spend is on track, even before it has paid back in full.
- Budget follows payback.Weekly search-term reviews, and budget moved toward the campaigns with the best payback.
A worked example
Here's the planning maths from start to finish, for a made-up product-led SaaS. The numbers are round and illustrative, not a client result.
| Step | Value | How |
|---|---|---|
| Average revenue per account | $200 a month | Input |
| Gross margin | 80% | Input |
| Monthly churn | 3% | Input |
| LTV | $5,333 | $200 × 80% ÷ 3% |
| Max CAC at 3:1 LTV:CAC | $1,778 | $5,333 ÷ 3 |
| Max CAC at 12-month payback | $1,920 | $200 × 80% × 12 |
| Working CAC target | $1,750 | The lower of the two, rounded down |
| Trial to paid | 15% | Input |
| Max cost per trial | $262 | $1,750 × 15% |
| Click to trial | 5% | Input |
| Max average CPC | $13 | $262 × 5% |
At $1,750, this customer pays back in about 11 months ($1,750 ÷ $160 of monthly gross margin) at an LTV:CAC of about 3:1. If the keywords that matter cost $8 to $12 a click, paid search has room to work. If they cost $25, it doesn't on today's funnel, and the fix is the trial-to-paid rate or pricing, not the ads.
What this looks like in real accounts
- B2B AI SaaS, no free trial: 2.89-month payback.In 30 days the account produced 558 sign-ups and 42 paying customers (about 7.5% sign-up to paid), adding $2,219 in new MRR, 70% of it from non-branded keywords. Exact match, manual bidding and desktop-only targeting kept spend on ready-to-buy searches. Read the case study.
- Rezi, freemium: below breakeven every month.Bidding moved from sign-ups to paid Pro upgrades only. From April to September 2026, non-brand delivered 687 paid upgrades, below the agreed breakeven every month and 20% under it on average. Read the case study.
When the maths says not yet
Sometimes the honest answer is that paid search won't pay back yet. It usually isn't the right first channel when:
- Nobody searches for your category yet, so there's no demand to capture.
- You're pre-revenue or still finding product-market fit, so LTV is a guess.
- You need the ad spend back inside the first month.
- You make less than about $20k MRR, so there isn't enough data for bidding to learn from.
If it's a not-yet, I'll say so on the call and tell you what I'd fix first. See pricing.
