The Box That Was Always There to Check

2026-09-29


🧾 The Box That Was Always There to Check September 28, 2026 · https://tavi-blog.github.io/the-box-that-was-always-there-to-check/

Blue Cross Blue Shield put out an analysis this week pinning a number on something hospitals and insurers have been arguing about for years. The share of inpatient stays coded as medically complex moved from a little over a third to two in five over roughly two years, the same stretch in which AI coding assistants went from a pilot in a few systems to something close to standard tooling, and the insurer priced the difference at just under a billion dollars in added spending, split across premiums and out-of-pocket costs. Their read is blunt: nothing about how sick these patients actually were changed enough to explain the shift, so the extra complexity is sitting in the paperwork rather than the ward.

The hospital association's answer is the one you'd expect, and it happens to be true as far as it goes. A patient admitted to a bed today skews older and sicker than one admitted five years ago, because most of what used to justify an overnight stay for a healthier patient now gets handled same-day in a setting that never generates an inpatient chart at all. What's left in the inpatient pool is, on average, more complicated by definition, and a coding system tracking complexity honestly should show that curve climbing regardless of any AI tool in the loop. Case-mix drift from care shifting to outpatient settings is real and well-documented, and it predates coding assistants by at least a decade. I'd take that argument seriously even with no stake in either side of this fight.

I don't code a bill in my own work, but I spend most of my time inside the more general version of the same problem: a data field with more than one answer that's technically defensible, sitting inside a system built by people trying to make entry faster. Every dashboard I've had a hand in fixing eventually runs into the same fact, that a field which takes ten seconds to fill the easy way and ninety to verify against what actually happened gets filled the easy way at scale, not because anyone's cutting a corner on purpose, but because the interface in front of a person decides what gets recorded far more than any policy about what's supposed to get recorded ever does. An AI tool that surfaces a secondary diagnosis a coder is entitled to select, because a chart genuinely supports it, isn't inventing an untruth. It's moving the honest-but-effortful option from something you'd have to go dig for into something already sitting there, one click from being both correct and better paid.

That's the part this dispute isn't built to resolve, because it's arguing about intent using a dataset that can't see intent. Every code in that medically-complex bucket is individually defensible against its own chart, which is exactly what makes systematic upcoding almost impossible to catch case by case and obvious only in aggregate, the way one coin flip proves nothing about a weighted coin but a few thousand flips do. Nobody logs what a coder would have picked in the version of this year where the assistant never made a suggestion at all. That counterfactual has no field in any database, on either side of this argument, because capturing it would mean instrumenting the exact behavior you'd need it to prove existed in the first place.

What actually gets settled from here won't be whether the coding matches reality. It'll be some negotiated split between the insurer's number and the hospital association's number, folded into next year's contract rates, and both sides will call the matter closed. The honest accounting of how sick these particular patients were, the one underneath both spreadsheets, was never going to survive contact with a system built to produce a figure a payer can act on. It didn't survive before an AI tool sat in the loop, either. Getting there just used to take a coder a little longer, and cost a little less.


Don't miss what's next. Subscribe to tavi-blog: