We were on a call a few months back with a client's sales ops lead, and she said something that stuck with us: "Our list isn't decaying, it's just... aging out from underneath us." That's a better way to describe what happens with physician contact data than anything we'd write in a slide deck. Nobody deletes the record. Nobody flags it as bad. It just quietly stops matching reality while everyone keeps mailing to it.
Physician mobility is one of those things that everyone in healthcare sales nods along to when you mention it, but very few teams have actually priced into their process. A doctor finishes a fellowship and joins a group practice for eighteen months, then gets recruited by a hospital system, then two years later that system gets acquired and half the physicians scatter to different affiliated clinics. None of that shows up as a dramatic event in your CRM. It shows up as silence — declining open rates, a rep who says "I think this guy left," and a record that nobody has the authority or the appetite to touch.
Why This Isn't Like B2B Turnover Anywhere Else
People compare physician list decay to sales rep or exec turnover in other industries, and honestly the comparison undersells it. When a VP of Marketing changes jobs, LinkedIn tells you within a week, your intent data tools pick up the new company domain, and half your outreach stack has some kind of job-change trigger built around it. Physicians don't generate that kind of digital exhaust. Many of them don't update LinkedIn for years. Their new affiliation might not hit NPI registries or state board databases for months, and even then those sources often reflect billing arrangements, not where the physician is physically seeing patients on a given Tuesday.
We've also noticed physicians tend to maintain more than one active affiliation at a time in ways that confuse simple "last known practice" fields. Someone doing outpatient work three days a week at one clinic and covering hospitalist shifts at a health system isn't a data anomaly — that's just modern practice structure, especially post-COVID as more physicians pursue hybrid arrangements or split appointments across employer entities. A contact record built around "current practice = single value" was never designed for that reality, and it shows the moment you try to route outreach based on it.
The Quiet Compounding Effect
What makes this expensive isn't any single bad record. It's the compounding. Say a mid-sized specialty group has genuine turnover of somewhere around fifteen to twenty percent of its physicians moving, retiring, or changing affiliation in a given year — which is not an unusual range for certain specialties, particularly in competitive metros where health systems are actively recruiting. If your list refresh cycle is annual, or worse, ad hoc whenever someone notices a problem, you're not looking at fifteen percent staleness by year two. You're stacking that decay on top of the previous year's uncorrected decay, plus whatever new moves happened, plus the practices that dissolved entirely and got replaced by new entities with new tax IDs and new front-desk staff who have never heard of the doctor you're asking for.
We saw this play out concretely with a regional cardiology group that had, on paper, twelve affiliated locations in a client's CRM. When we went through it manually, three of those locations had been consolidated into a single larger facility eighteen months earlier, two physicians had left for a competing system entirely, and one location still listed a physician as the primary contact who had, according to the front desk, "retired sometime last year, maybe." Sales reps had been calling that number periodically the entire time, occasionally leaving voicemails, occasionally getting a callback from whoever happened to be covering the desk that week. Nobody had escalated it as a data problem because each individual call just looked like a normal cold outreach dead end, not a systemic list failure. That's the insidious part — bad data doesn't announce itself, it just makes every downstream number look slightly worse than it should, and everyone assumes it's a messaging problem or a targeting problem before anyone thinks to check whether the underlying contact even still works there.
What Actually Holds Up
The teams that handle this reasonably well aren't the ones with the fanciest enrichment stack, they're the ones who've accepted that physician contact data has a shelf life measured in months, not years, and built their cadence around that assumption rather than fighting it. That means treating affiliation as a field that gets actively re-verified on a rolling basis — not a giant annual data cleanse that becomes stale again by the following spring, but something closer to continuous spot-checking layered with whatever verified sources you can pull, whether that's state licensing boards, hospital credentialing updates, or direct outreach confirmation. It also means building workflows that can tolerate ambiguity, so a rep isn't stuck treating "practice affiliation: unknown, last confirmed six months ago" as a fatal flag but rather as a normal, expected state that just changes how the account gets approached.
This is part of why we think about physician data at NPLUS Global less as a static asset to be purchased once and more as something that has to be maintained the way you'd maintain any perishable inventory — with the expectation that a meaningful chunk of it is going stale in the background right now, today, while nobody's watching.
None of this is a solvable-once problem. Physicians are going to keep moving between employed and independent models, keep splitting time across sites, keep getting swept up in mergers that reshuffle affiliations overnight. The list you built in January is not the list you have in July, even if nobody told you so. The only real defense we've found is treating that turnover as the default condition of the data rather than the exception you occasionally have to clean up after.
Ready to see what we can build for your ICP?
Send us your ICP — sample in 2–3 hours, full delivery in 48–72 hours.
Request a free sample →