How DSOs measure dental marketing ROI per practice

How DSOs measure dental marketing ROI per practice: count new patients from Dentrix, Eaglesoft or Open Dental, account for chair capacity, and share no PHI.

By The Countlift team · · 8 min read

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.

1 in 4+
dentists up to 10 years out of dental school were affiliated with a DSO in 2024.Source: American Dental Association Health Policy Institute, The U.S. Dentist Workforce, 2025

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”.

Agree these definitions across every PMS before comparing practices
DecisionRecommended choiceWhy
What counts as newFirst completed visit at the practiceBooked-but-no-show patients inflate the count and vary by office
Which dateDate of first visit, with booked date as a second series if you have itAds move bookings first and visits later
Transfers between your practicesExcludeA patient moving offices isn’t new to the DSO
ReactivationsReport separatelyRecall campaigns and new-patient ads aim at different people
Specialty starts (ortho, implants)Separate countDifferent 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.

What leaves the practice-management system: counts onlyPatient names, birth dates, procedures, insurance details and appointment times stay locked inside the practice-management system. A report counts new patients by practice and week, and only a green table of practice ID, week and count is exported for marketing measurement.COUNTS LEAVE THE PRACTICE. PATIENT DATA DOESN’T.INSIDE YOUR PMSDentrix · Eaglesoft · Open DentalPatient namesBirth datesProcedures and notesInsurance detailsAppointment timesSTAYS HERECOUNTby practiceby weekWHAT LEAVESIDWEEK OFNEWP-0703-0218P-0703-0921P-1203-0215P-1203-0917
The aggregation happens inside your practice-management system. What leaves it is a practice ID, a date and a count.

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.

Extra new patients per $1,000 against days to the next new-patient slotIllustrative. Eight practices. The six green practices with a new-patient slot within 3 to 10 days add between 4.7 and 9 extra new patients per thousand dollars of added spend. The two amber practices booked 24 and 28 days out add 1.0 and 0.7.EXTRA NEW PATIENTS PER $1,000 OF ADDED SPENDILLUSTRATIVE02468103+ WEEKS OUTExtra demand becomesa longer wait, notmore patientsP1P2P3P4P5P6P7P807142128DAYS TO NEXT AVAILABLE NEW-PATIENT APPOINTMENT →Open time: worth fundingBooked out: fix capacity firstTypical response
Illustrative. Extra new patients per $1,000 at eight practices, plotted against days to the next available new-patient slot. Past about three weeks, extra spend adds almost nothing.

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.

Illustrative. 12-week totals; expected counts come from each practice’s twin
PracticeNext new-patient slotExpectedActualExtraCost per extra new patient
Practice 13 days21627054$111
Practice 24 days20425248$125
Practice 35 days19223442$143
Practice 48 days22826436$167
Practice 59 days18021030$200
Practice 610 days16819628$214
Practice 724 days2402466$1,000
Practice 828 days2162204$1,500
All eight1,6441,892248$194
  1. Extra new patients. 1,892 actual − 1,644 expected = 248.
  2. Cost. $48,000 ÷ 248 ≈ $194 per extra new patient.
  3. 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.
  4. ROI. 248 × $400 = $99,200. ($99,200 − $48,000) ÷ $48,000 ≈ 107%.
  5. 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.

Extra bookings arrive quickly; extra first visits arrive weeks laterIllustrative. During a 12-week campaign, extra new-patient bookings (grey dashed) rise within two to three weeks and stop soon after the campaign ends. Extra first visits (green) follow the same shape about three weeks later, so the amber hatched share of them lands after the campaign has ended.EXTRA NEW PATIENTS PER WEEK · ONE METROILLUSTRATIVE0102030CAMPAIGN · WEEKS 1–12KEEP READINGMissed if you stopreading at week 123-week lag1481216WEEKS →Extra first visits (by visit date)Extra bookings (by booked date)Visits after week 12
Illustrative. Extra bookings show up within days of the spend; extra first visits trail them by a few weeks. Keep reading for at least four weeks after the campaign ends.
  • 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.

Keep reading

IndustriesHow to measure gym marketing ROI by club (joins, not leads)How to measure gym marketing ROI by club: count joins from ABC Fitness or Mindbody, strip out January, value each member, and find the clubs worth funding.9 min read · Read guide →IndustriesHow to choose feeder markets for hotel advertisingHow to choose feeder markets for hotel advertising: rank cities by room nights per household, plan for booking windows, and test CTV against matched holdouts.9 min read · Read guide →IndustriesHVAC marketing attribution for booked jobs, not callsHVAC marketing attribution for booked jobs, not calls: count jobs in ServiceTitan, Jobber or Housecall Pro, net out the weather, and judge LSA on real work.9 min read · Read guide →MethodologyHow MarketTwin™ worksThe method behind every Countlift read: comparable locations, twin markets, intervals and placebo checks.Read the method →

See which of your markets your ads actually move.

Your first location report is free at any size. No card, no customer records.