Customer acquisition
Cost per lead is the wrong number to optimize for
Leads at half the price can mean booked appointments at twice the price. Find the ad doing that in your account

Cost per lead (CPL) is your ad spend divided by the number of leads you got in the same period. The number is easy to work out and easy to push down. That makes it a dangerous number to run a business on.
A lead is a filled-in form. The money arrives 3 steps later, once that person has booked an appointment, shown up and signed. Count all the way there and you see what your ads cost per sale, and which ad brings the sales in.
With 5 numbers from last month, you can work out what a booked appointment costs you.
Calculate cost per lead: the same formula gives cost per customer
Ad spend / number of leads = cost per lead. Swap the denominator for new customers and the same formula gives you your cost per customer:
| Metric | Formula |
|---|---|
| Cost per lead | ad spend / leads |
| Cost per booked appointment | ad spend / booked appointments |
| Cost per kept appointment | ad spend / kept appointments |
| Cost per customer (CPA) | ad spend / new customers |
Each row divides by a smaller number than the row above it, so the figure climbs with every step down. The bottom row tells you whether the ads pay.
Use the same period for every number, last month for example, and count the leads from the ads you paid for. 2 things make the figure hard to compare between months and between agencies:
- What you count as a lead. The ad platform also counts a form with a wrong number, an inquiry from an area you don't cover and the person who wants the job done at half price. Count qualified leads: the ones that match the service you sell, the area you cover and a timeline you can deliver on.
- Which costs you include. The ad budget is the floor. Add the agency fee, the production and the time it takes to call people back, and you get a more honest figure.
Cost per lead can drop without a single new customer
Widen the audience, cut the form down to one tap or put a discount price in the ad, and your cost per lead falls. The number of booked appointments in your calendar can stand still the whole time.
Say campaign A brings in leads at half the price of campaign B (made-up numbers). A books 1 in 10 of its leads, B books 4 in 10. Then each booked appointment from B costs half as much as one from A, even though B's leads cost twice as much.
Steer by cost per lead in that example and you move the budget to the campaign that books half as many appointments per dollar.
The same thing happens inside the ad platforms. Send only leads back to Meta and Google, and the algorithm goes looking for more people who fill in forms. So we judge every ad on what its leads become: booked, kept and closed.
A lead has 3 steps to go before you get paid
Each step, to booked appointment, kept appointment and customer, has its own rate, so you can improve them one at a time.

- Lead to booked appointment. Reply time and qualification decide this one. A lead is never warmer than the minute it sends the form, phone still in hand.
- Booked appointment to kept appointment. Some people forget the time, or find someone else while they wait. Reminders help, and notes from the first call tell the person taking the appointment what the customer asked about.
- Kept appointment to customer. The person who takes the appointment and follows up decides it. For our clients, whoever answers the phone gets call scripts, and every Wednesday we drill the objections with the real calls on the table.
In our system, a new lead in most industries gets a call within seconds of opting in, 7 days a week. Dental clinics are the exception: there the first touch is a text in under 5 minutes, and then a person follows up.
Harvard Business Review's 2011 article The short life of online sales leads found that "most companies are not responding nearly fast enough" to inquiries from the web.
Tag every lead with the ad it came from, in your CRM or your calendar. Then you can see which ad brought in each new customer.
The booking rate decides what a lead is worth in your industry
The same price per lead is cheap if many people book and expensive if few do. The booking itself looks different from one industry to the next, and the money arrives at a different point after it.
Home improvement: the survey is your booked appointment
For a roofing, building or energy company, the chain runs: lead, survey or home visit, quote, signed job. The survey is your booked appointment, and the quote is a step of its own. Count how many visits turn into a quote and how many quotes turn into a job.
At Nordiska Takbehandlingar (roof treatment, Sweden), a qualified lead costs 230 SEK, about $23, and 55% of leads reach a booking.
This is how we build the whole chain, from the ad to the booked survey, in our home improvement lead generation. If you buy requests from a portal today, count the same way per job won: what Servicefinder costs a company.
A dental clinic needs a cost per booking for each treatment
At a dental clinic the unit is the consultation, and each type of treatment needs its own cost per booking. Lump a check-up and an implant case into one number and both campaigns look wrong.
A patient who wants implants sends an inquiry, books a consultation, comes in, gets a treatment plan and says yes or no. Measure the cost per kept consultation and per accepted treatment plan.
That's why we report Tor Dental's results in consultations.
50
The whole flow is in our marketing for dental clinics, and in the guide on how to get new dental patients.
At aesthetic clinics the value comes after the first treatment
At an aesthetic clinic, a new patient is worth more than their first treatment. The value sits in the plan after it, so the chain has one more step: inquiry, consultation, first treatment and the plan after.
The ad report shows clicks, the practice management system shows treatments, and nobody connects the two. Connect them and you see which ad brings in patients who come back. At Biohackr Health we report the result in consultations too.
~70
A discounted first visit can lower your cost per lead. For injectables in Sweden, a highlighted discount can also turn the ad into drug advertising: what the rules allow when advertising Botox in Sweden. Before you keep the offer, measure how many of those patients say yes to the plan. This is how we run marketing for aesthetic clinics.
Work out your cost per booked appointment with 5 numbers
Pull these numbers for last month:
- Ad spend, all channels
- Number of leads
- Number of booked appointments from those leads
- Number of appointments that happened
- Number of new customers
Divide the ad spend by numbers 2 to 5, one at a time. Then work out the rates between the steps: booked divided by leads, kept divided by booked, customers divided by kept. The lowest rate shows where your chain leaks most.
Run your own numbers
What does a new customer cost you?
A worked example with made-up figures, not benchmarksExample figures, not benchmarks. Replace them with your own
-
$3,000
-
100Cost per lead$30
-
40%Cost per booked appointment$7540 booked appointments
-
75%Cost per kept appointment$10030 kept appointments
-
30%Cost per new customer$3339 new customers
-
$1,500Gross profit per ad dollar$4.50$13,500 in gross profit
What should a lead cost? Work back from what a customer is worth
Start with what a new customer is worth to you in gross profit, over the whole time they stay a customer. Multiply that by the share of kept appointments that become customers. The result is the most a kept appointment can cost before the ads lose money.
If your cost per kept appointment sits under that ceiling, the campaign pays, whatever a lead costs. Multiply the ceiling by the share of leads who book and the share of bookings who show up, and you have the ceiling per lead.
Run the same sum per campaign and per ad. The account average hides the ad that drags it down.
Make Google and Meta stop chasing the wrong kind of leads
Google and Meta go looking for more people who do whatever you report back and tell them to optimize for. Report booked appointments and point the bidding at them, and they have something better to aim at than a filled-in form.

In Google Ads this is called offline conversion import. Google's help page on offline conversions tells you to save the click ID from the ad along with the lead's details. When the person later converts offline, "by signing a contract, for example", you give that click ID back to Google Ads (read October 2026).
If you don't import offline conversions today, the same page recommends starting with enhanced conversions for leads instead.
At Meta the same thing is called the Conversions API for CRM. Meta's developer page on the integration says a connected CRM and the Conversion Leads performance goal "may yield higher quality leads" that are "more likely to convert" (read October 2026). For now, that performance goal only works with Meta's own lead forms (Instant Forms).
Clinics have one more rule to follow at Meta. Its help page About prohibited information says the names of your events, conversions and Custom Audiences "must not reflect, imply or be based on any prohibited information". Health information is on that list, and the examples include "Medical procedures, treatments and testing" (read October 2026). Give your events neutral names, like Lead and Schedule, and keep the treatment out of the URLs you send along.
Open Google Ads and Meta and check which event your campaigns get back and optimize for. If it says a filled-in form, more forms is what you're paying for.
Straight answers to common questions
What is a good cost per lead?
A good cost per lead gives you a cost per customer below what that customer is worth to you. Work backwards from the customer's value and the shares who book, show up and buy, and you have your own ceiling. The same price per lead can be profitable in one business and lose money in another.
How do I calculate cost per lead?
Divide your ad spend for a period by the number of leads from the same period, and include the same costs every month. Then swap the denominator for booked appointments or customers to see the rest of the chain.
What is the difference between cost per lead and cost per acquisition?
Cost per lead divides ad spend by the number of forms, cost per acquisition (cost per customer) by the number of people who bought. The difference is everything that leaks on the way: leads who never booked, appointments that never happened and quotes that never became jobs. One campaign can have the account's lowest cost per lead and its highest cost per customer.
What counts as a qualified lead?
A lead that matches what you sell: the right service, the right area, a timeline you can deliver on and a phone number that works. Set the criteria before the campaign starts and keep them fixed, so your cost per lead compares from one month to the next.
Why aren't my leads booking?
Check 3 things: how fast the lead gets a reply, whether the ad's offer matches what you say on the call, and how many times you try to reach someone who doesn't answer. Start with the reply time, because you can read it in your CRM.
How do I lower my cost per lead?
Widening the audience, cutting the form down or putting a discount in the ad lowers it fastest, and can leave your bookings where they were. Lower your cost per booked appointment instead: reply while the lead still has the phone in hand, qualify on the first call, and judge each ad on the bookings it brings.
How fast should I contact a new lead?
While the person still has the phone in their hand, even on a Saturday evening. With us, a new lead in most industries gets a call within seconds of opting in, 7 days a week. Dental clinics are the exception: there the first touch is a text in under 5 minutes, and then a person follows up.