Case study · Behavioral health
The ten second run
Five facilities. One operations lead. A day and a half of retyping, every week, to turn attendance logs into a billing census. This is what the audit found and what replaced it.
The operation
A network at the size where the spreadsheet breaks.
Attendance was marked daily at each facility. Money was billed by an outside company working from a census workbook. Between those two systems sat one person, retyping.
Once a week he transposed every facility's logs into the census, verified each line against the clinical record, and cleared the billing company's flags from the last cycle. Then seven people met on Monday and Tuesday to hunt discrepancies live, out loud, in a meeting.
That transposition took over a day, every week. Not because anyone was slow. Because it is hundreds of client-days carried by hand between two systems that do not talk.
The audit
Five checks, and one thing that was not an error at all.
The checks came from sitting with the operations lead and asking what actually goes wrong, then writing one for each answer.
| Check | What it catches |
|---|---|
| Unbilled attendance | Delivered and documented, never entered into the census |
| Billing above documentation | A census line the clinical record cannot support |
| Threshold days | IOP under 3 hours, PHP under 5, where the rate collapses |
| Level-of-care conflicts | Step-ups and step-downs that may have outrun authorization |
| Identity mismatches | Wrong-client entries, and services on discharged clients |
The finding that mattered most was a missing column
The facility attendance log carried no medical record number. Only a name. So every week, the link between a delivered service and its billing episode was made from one person's memory.
Every identity mismatch traced back to that. Not to carelessness. To a template that never had the field. One added column closed the whole class of error, permanently, at no cost.
Nobody had seen it because nobody had ever looked at all four facilities in the same file on the same day. That is what an audit is for.
The engine
Ten seconds. 943 client-days.
The system reads a full facility month, 27 day tabs and 943 client-days, drafts the census from the raw attendance logs, and runs all five checks against it. That takes about ten seconds.
What it produces is not a verdict. It is a short list of client-days worth a human look before claims get built. In the pilot it also did something I was glad to see: it recognised the week that had not been entered yet as work in progress, rather than flagging it as hundreds of errors. A tool that cries wolf on incomplete data gets switched off in week two.
Anonymized · Behavioral health network
What changed
Before
- One person retyping the census for over a day, weekly
- Seven people hunting discrepancies out loud every Monday
- Errors found after the billing company, or after a denial
- Under-threshold days quietly paying a fraction of full rate
- Four more facilities coming, scaling only by hiring
After
- The census drafts itself. The job is review and approve
- Each director arrives with their list. The meeting is a checklist
- Caught the same week, while the chart can still be fixed
- Repeat patterns surface per client, for the site director
- Every facility, same ten seconds. Headcount flat
The line I did not cross
What was left to people.
The system does not bill. It does not approve. It does not decide whether a flag is a real error, because very often it is not. A short session can be legitimate. A clinician can have a reason that exists nowhere in the data.
- Clinical judgment stays with the directors. A client repeatedly under threshold is an engagement conversation, not a billing correction.
- Billing judgment stays with the operations lead. He remains the final approver of every line. The engine drafts, he decides.
- When in doubt, hold rather than bill. An unbilled documented day can be billed late. A wrongly billed day becomes a clawback.
In a network billing commercial insurance and Medicaid, a system that submits on its own is a liability with a countdown on it. The value was never removing the human. It was giving the human all of it at once, in the same week.
Honest status
Where this stands.
Proven: the engine runs on real client data. The ten seconds, the 943 client-days, the five checks and the root cause are from actual runs, not a projection.
In progress: the pilot covered one facility and one month. Rollout across all four outpatient sites, the scheduled overnight runs and the leadership dashboard are phased work underway.
Not claimed: a recovered-dollars figure. Measuring that honestly needs a full billing cycle after go-live with rework tracking in place. When there is a real number it will appear here. Until then the mechanism is on the five leaks page with the arithmetic, so you can run it against your own volume instead of trusting mine.
Run the same five checks on your own month.
The one page checklist this audit starts from. Every check in order, with space to write what you find. One facility, one completed month.
One email with the checklist, then occasional notes on operations systems. Unsubscribe whenever. I do not share your address.
Recognise the shape?
Two to twelve locations, one person holding the census together, and a denial rate nobody can fully explain. Start with a free thirty minute call. Nothing to prepare, no data to send.