CPR West Covina Logo

$21 per booked student

Google Ads for CPR Training Companies

We run Google Ads for CPR training companies using the same structure we run on our own account, where a booked student costs $21 and the return on ad spend is 596%.

  • 01$21 per booked student on our own account
  • 02596% ROAS and 9.5% CTR
  • 03Found and fixed a 29% conversion under-report
4.9 from 300+ Google and Yelp reviews on our own CPR businessWe spend our own money in this account first

Assembly

How we run a CPR Google Ads account

Six steps, in this order. Nobody touches a bid until step 1 is finished.

6 steps

  1. Fix the tracking first

    No bid changes until the account can see real bookings.

  2. Split the buyers apart

    Healthcare students and workplace managers get separate campaigns.

  3. Build tight ad groups

    Mostly exact match, one course intent per group.

  4. Cover near-me and cities

    Shared phrase term plus two exact city keywords per group.

  5. Load the negative lists

    Online-only, free, and job-seeker traffic never gets a click.

  6. Feed sales back in

    Phone and walk-in bookings get uploaded against the click.

From our own account

Google Ads account showing cost per booked student
Our own Google Ads account, running at $21 per booked student.

Contents

What you get

In the box

  • 01Conversion tracking audit and repair before launch
  • 02Campaign rebuild by buyer, not by course name
  • 03Exact-match ad groups with matched landing pages
  • 04Near-me and city ad group structure
  • 05Shared negative keyword lists, maintained monthly
  • 06Responsive search ads written per course
  • 07Offline conversion import for phone and walk-in sales
  • 08Monthly report in cost per booked student, not clicks

Price

What it costs

Starting at

$500/month

Founder pricingFirst 10 clients · Prices rise Jan 2027

What’s included

  • 011 campaign
  • 02Conversion tracking
  • 03Monthly reporting

Anything beyond the starting build gets a real quote after a 15-minute call.

Prices go up in January 2027. Book before then and your rate is locked for as long as you stay a client.

Common assembly error

Good intent, bad plumbing

Without it

CPR search intent is unusually good. Someone typing BLS certification near me has a deadline, a manager asking for a card, and a class to attend this week. That is about as close to a buying signal as paid search gets. So when a CPR account performs badly, the traffic is almost never the reason.

What goes wrong is structure and measurement. One campaign holds every course, so BLS clicks and Heartsaver clicks share a budget and a bid. Broad match pulls in online-only certificates, free courses, and people looking for CPR instructor jobs. The landing page is the homepage. And the conversion action fires when someone clicks Book, not when they pay.

Then the owner looks at a cost per conversion that is too high, cuts the keyword that was actually working, and the account gets worse. In our own account the reported numbers were missing roughly 29% of real bookings. We were about to make decisions on data that was wrong in a direction we could not see.

How much should a CPR class cost per lead in Google Ads?

Ask for cost per booked student instead, because leads are easy to make cheap and hard to bank. On our own account we run around $21 per booked student at a 596% return on ad spend and a 9.5% click through rate. Those are our numbers on our own money, in our own market. Yours will differ with course mix, class price, and how competitive your metro is. What travels is the ratio: if your class sells for well over a hundred dollars and you are paying more than a third of that per booked seat, something structural is wrong, and it is usually tracking or match type before it is bidding.

Why are my CPR Google Ads so expensive?

Three causes, in order of how often we find them. First, broad match with no negative list, so you pay for online-only certification, free CPR class, and CPR instructor jobs at healthcare bid prices. Second, low ad relevance because one ad group covers four courses, so the ad cannot name what the searcher typed and quality score drags the cost up. Third, the homepage as the landing page, which converts worse and quietly raises what you can afford to pay. Expensive clicks are usually not an auction problem. They are a specificity problem, and specificity is free to fix.

How do I build near-me ad groups for a training business?

Near-me queries and city queries behave differently enough to deserve their own ad groups. Our structure per city is one shared phrase-match term plus two city-exact keywords, kept in a group of their own so the ad copy and the landing page can name that city. Location targeting alone does not cover this, because a person typing the city name is telling you something a radius setting cannot: they want to know you are actually there, and the ad that says the city wins the click. Keep the group small enough that one ad honestly matches every keyword in it.

Should CPR companies use Smart Bidding or manual CPC?

Not until the account can see the truth. Smart Bidding optimizes toward the conversions you feed it, so an account missing a quarter of its sales will confidently bid toward the wrong things. On our own account we keep a manual max CPC cap deliberately, because the expensive end of the auction converts worse for this business and the tracking has known gaps we are still closing. The account shows limited by bid strategy and that is a choice, not an oversight. Once offline conversions are flowing reliably and volume supports it, automated bidding becomes a real option. Order matters more than the setting.

How do phone bookings get counted in Google Ads?

By capturing the click ID at the moment the visitor lands and carrying it through to the sale. When someone calls instead of booking online, that sale exists in your payment processor and nowhere else, so Google never learns which keyword produced it. The fix is to store the gclid with the lead, match it to the completed payment, and upload it back as an offline conversion. It sounds like plumbing because it is. It is also the single change that most often makes a CPR account look profitable, since phone-heavy businesses are exactly the ones whose reported numbers understate reality.

Troubleshooting

CPR Google Ads questions, answered

What results have you actually produced?
On our own Google Ads account for our own CPR training company: $21 per booked student, 596% return on ad spend, and a 9.5% click through rate. We also found and fixed a roughly 29% conversion under-report in that account. Those are the numbers we stand behind, from a business we own.
What budget do I need to start?
Enough for the account to learn something in a month rather than a quarter. On the call we look at your class price, your metro, and current cost per click, and tell you the number honestly. If the math does not work in your market, we will say that instead of taking a retainer.
Do I keep ownership of my Google Ads account?
Yes. The account stays yours, we get access to it. If we ever stop working together, the campaigns, history, and conversion data stay with you. Agencies that build inside their own account are protecting themselves, not you.
How long before the ads improve?
Tracking fixes show up immediately, because bookings that were always happening finally get recorded. Structure changes usually need three to six weeks of data before cost per booked student moves in a way you should trust. We do not judge a rebuild on week one.
Do you run Performance Max for CPR companies?
Rarely as the main campaign. Search intent for certification is explicit, so exact-match search gets first claim on budget. Performance Max can be worth testing once search is saturated and tracking is clean, but it is not where we start.
Can you run ads if my booking widget is in an iframe?
We can, but the tracking will leak, because the click ID often does not survive into the iframe and the sale gets attributed to nothing. We usually move booking on-domain first. That is why our own booking pages render the widget natively instead of framing it.
Will you work with a competitor in my city?
No. We do not take two clients bidding on the same geography. Ask on the call and we will tell you straight whether your market is open.
What does Google Ads management cost?
Google Ads management starts at $500 a month. What you pay above that depends on ad spend, how many courses you run, and how much repair the account needs before it can perform. The tracking audit that comes first is free, so you see the state of your account before you commit to anything.

Need a hand

Get your ad account looked at

Book a 15-minute call. We open your account with you, read the search terms, and tell you where the money is going before we quote anything.

We work with CPR and certification training companies nationwide