DSOs measure dental marketing ROI per practice by counting new patients at each practice every week, estimating how many each would have seen without the extra spend, and valuing the difference against what was spent. The estimate comes from comparing practices where marketing changed with a matched set of practices where it held steady. All of it runs on counts. No patient records are involved.
The hard part isn’t the arithmetic. It’s getting consistent counts out of three different practice-management systems, knowing which practices are already full, and keeping protected health information out of the marketing team’s spreadsheets.
Why per-practice ROI is different for a DSO
A single-office practice can look at its schedule and roughly feel whether the new Google Ads campaign is working. A DSO can’t. Marketing is usually bought centrally, for a brand that spans dozens of offices, in markets where some practices have open hygiene columns and others are booked a month out. Call tracking and form fills are pooled. Acquired offices arrive with their own PMS, their own definitions and their own habits.
As more practices sit under one roof, the budget question shifts from “does marketing work?” to “which of our practices does it work for?” That second question needs a per-practice answer, and a brand-level cost-per-lead report can’t give it.
The numbers to pull from Dentrix, Eaglesoft or Open Dental
You need one number per practice per day or week: new patients. Optionally add production or collections for the same practice and period, so you can value the extra patients. Every major PMS can produce a new-patient count by location from its reporting module. Report names vary by version, so ask whoever runs reporting for “new patients seen, by practice, by week, as a total”.
| Decision | Recommended choice | Why |
|---|---|---|
| What counts as new | First completed visit at the practice | Booked-but-no-show patients inflate the count and vary by office |
| Which date | Date of first visit, with booked date as a second series if you have it | Ads move bookings first and visits later |
| Transfers between your practices | Exclude | A patient moving offices isn’t new to the DSO |
| Reactivations | Report separately | Recall campaigns and new-patient ads aim at different people |
| Specialty starts (ortho, implants) | Separate count | Different value, different lag, different campaigns |
Also pull a simple capacity signal per practice: days until the next available new-patient appointment, or the share of new-patient slots filled last month. Your scheduling team probably already tracks one of these. It will matter more than you expect.
Counts only: keeping PHI out of marketing measurement
Measuring marketing ROI per practice does not require patient-level data, and you shouldn’t share any. Run the count inside the PMS, export the total, and send only that. Never hand an agency or a measurement tool a patient list, even a “de-identified” one, to do the counting for you.
Your compliance team decides what is acceptable, so show them the exact file before anything is sent. A file of practice IDs, week-start dates and new-patient totals is a very different conversation from a patient export, and it usually goes quickly.
Chair capacity decides where dental marketing can pay
Here is the part most dental marketing reports skip. Ads create demand. Chairs convert it. If a practice’s next new-patient opening is three weeks out, extra demand mostly turns into longer waits, voicemails and patients who book elsewhere. The ad platform still reports the call. The practice sees no extra patients.
The practical rule: don’t spend acquisition budget on a booked-out practice until it adds a hygienist, a doctor day or extended hours. Fund the practices with open time instead, and revisit the full ones when capacity changes.
Worked example: ROI per practice for an eight-practice test (illustrative)
A 22-practice DSO raises search and paid social by $500 a week per practice for 12 weeks at eight practices in two metros: $6,000 per practice, $48,000 in total. The other 14 practices keep their usual spend and form the comparison.
| Practice | Next new-patient slot | Expected | Actual | Extra | Cost per extra new patient |
|---|---|---|---|---|---|
| Practice 1 | 3 days | 216 | 270 | 54 | $111 |
| Practice 2 | 4 days | 204 | 252 | 48 | $125 |
| Practice 3 | 5 days | 192 | 234 | 42 | $143 |
| Practice 4 | 8 days | 228 | 264 | 36 | $167 |
| Practice 5 | 9 days | 180 | 210 | 30 | $200 |
| Practice 6 | 10 days | 168 | 196 | 28 | $214 |
| Practice 7 | 24 days | 240 | 246 | 6 | $1,000 |
| Practice 8 | 28 days | 216 | 220 | 4 | $1,500 |
| All eight | 1,644 | 1,892 | 248 | $194 |
- Extra new patients. 1,892 actual − 1,644 expected = 248.
- Cost. $48,000 ÷ 248 ≈ $194 per extra new patient.
- Value. Suppose a new patient brings $1,000 in first-year collections and 40% of that is left after clinical labor and supplies (use your own figures). Each extra patient is worth $400.
- ROI. 248 × $400 = $99,200. ($99,200 − $48,000) ÷ $48,000 ≈ 107%.
- Without the two full practices. Practices 7 and 8 took $12,000 and added 10 patients. The other six took $36,000 for 238 patients: $151 each, and an ROI of (238 × $400 − $36,000) ÷ $36,000 ≈ 164%.
A brand-level report would have called this a $194-per-patient campaign and moved on. Per practice, it’s a strong campaign at six offices and a $12,000 leak at two. That difference is the whole reason to measure per practice.
Reading ROI when new patients book weeks ahead
Dental has a lag that restaurants don’t. Someone sees an ad in week two, calls in week three and sits in the chair in week five. If you measure on first-visit date and stop reading the day the campaign ends, you miss the patients the last few weeks of spend produced.
- Run a test for at least 8 weeks, and 12 if you can afford it.
- Keep counting for 4 weeks after the media stops.
- If your PMS can give you new-patient appointments by the date they were booked, use that as an early read and first visits as the final one.
Acquired practices, PMS migrations and de novos
Acquisitions break time series. The week an office moves from Eaglesoft to Open Dental, its new-patient count can jump or drop simply because the report counts differently. Mark the migration date, check the two weeks either side against the old system’s report, and keep the practice out of comparisons until the counts line up.
De novo offices have no history at all, so compare them with how your past de novos ramped, week by week from opening. Countlift’s Opening Lift view does this against an expected ramp built from your own openings. Without it, a new office’s natural climb looks like marketing lift.
If you want a deeper look at how to turn extra patients into a cost figure finance will accept, the guide to cost per incremental customer walks through it.
Common mistakes when DSOs measure marketing ROI
- Counting calls as patients. Calls include existing patients, insurance questions and people who never book.
- Funding full practices. The worked example’s two booked-out offices cost $1,000 and $1,500 per extra patient.
- Mixed definitions. One office counts booked appointments, another completed visits. The comparison is meaningless until they match.
- Reactivations in the new-patient count. A recall campaign can make a practice look like it grew.
- Stopping the read too early. Patients book ahead. Keep counting after the media ends.
- Sharing patient lists. Never send patient-level exports to an agency or tool to count for you. Count inside the PMS.
- Brand-level ROI only. A good blended number can hide two practices that should get nothing.
Questions people ask about dental marketing ROI
How do you calculate dental marketing ROI per practice?
Take extra new patients (actual minus what a matched set of steady-spend practices says the practice would have seen), multiply by the value of a new patient, subtract the spend that reached the practice, and divide by that spend. Use your own first-year collections and margin for the value, and the same method for every practice.
What is a good cost per new patient for a dental practice?
There isn’t a universal number, because it depends on what a new patient is worth in your markets and payer mix. Work out the value of a new patient from your own collections, then set the most you will pay for an extra one. Judge each practice against that, using extra patients rather than all new patients.
Do you need patient data to measure dental marketing?
No. You need a count of new patients per practice per day or week, and production if you want revenue. Run the count inside Dentrix, Eaglesoft or Open Dental and export only the totals. Countlift accepts only aggregate counts and never receives names, birth dates, appointments or treatment details.
How do you measure dental marketing when practices are full?
Track a capacity signal, such as days to the next new-patient appointment, alongside new patients. Practices with long waits will show little lift from ads because they can’t see more patients. That is a correct result, and it’s a reason to move budget to practices with open time.
How long should a DSO marketing test run?
At least eight weeks of spend, plus four weeks of reading afterwards, because new patients often book days or weeks before their first visit. Use at least six months of clean history before the test so each practice’s comparison is well fitted, and avoid starting during a PMS migration.
Per-practice ROI turns the marketing budget from a brand line item into a set of practice-level decisions. Count new patients, respect the chair, keep the data to totals, and the practices worth funding make themselves obvious.
Next step
Put your own locations through the comparison.
Your first location report is free at any size. Bring a CSV of weekly sales and spend, or connect your POS and ad accounts.
Written by The Countlift team at First Byte in The Woodlands, Texas. Questions or corrections? Email hello@countlift.com.