A PT practice can export the day's billing lines, compare minutes against units with spreadsheet rules, then have AI read each session note against what was billed and flag mismatches before the claim goes out. A biller reviews every flag. AI flags, it never picks codes, and each payer's own rules decide what is correct.
Code lists are easy to find. The harder and more valuable step comes just before submission: catching the mismatch between what the therapist wrote and what the claim says, while it is still cheap to fix. A denied line costs a resubmission, a phone call or a write-off. A flagged line costs a minute of someone's attention.
Two kinds of check, and why they need different tools
Claim errors fall into two groups, and mixing them is the commonest reason these projects disappoint.
The first group is mechanical: units that do not match minutes, a missing modifier, a duplicated line, a date of service outside the approved window, a signature missing. These have a right answer that can be written as a rule. A spreadsheet applies rules perfectly and for free. Asking a language model to do arithmetic on 200 lines is slower and sometimes wrong.
The second group is meaning: the note says the therapist spent most of the session on gait training and balance, but the billed lines are all manual therapy; the note describes a re-evaluation but no evaluation line was billed; the note says "patient left early" while the line shows a full hour. These need reading, and reading is what AI does well. So the sound design is rules first, AI second, a person last.
| Check | Best tool | Why |
|---|---|---|
| Minutes against units for timed entries | Spreadsheet formula | Pure arithmetic against a payer table |
| Duplicate lines on one date of service | Spreadsheet formula | Exact matching |
| Date of service inside the authorised window | Spreadsheet formula | Date comparison |
| Missing signature or note not finalised | Export filter from practice software | A status field, not a judgement |
| Note content against billed lines | AI reading, human decision | Needs understanding of free text |
| Patterns across denied claims | AI summary, human check | Many reason texts to group |

The Complete Excel Course with AI Integration
From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.
By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner
Buy nowThe time-entry rules table (build this before touching AI)
Timed entries are where small practices lose most. Many payers convert minutes to units in 15-minute blocks with a threshold, and they differ on whether units are worked out per service or from total timed minutes. Do not trust a general article, including this one, for your payers' rule: open each payer's published policy and copy what it says into a table.
For illustration, imagine a practice whose main payer uses total timed minutes with 15-minute units, a first unit from 8 minutes. That policy would produce this lookup.
| Total timed minutes | Units allowed (illustrative payer) |
|---|---|
| 0 to 7 | 0 |
| 8 to 22 | 1 |
| 23 to 37 | 2 |
| 38 to 52 | 3 |
| 53 to 67 | 4 |
Put your real table on its own sheet with three extra columns: the payer, the date you read the policy and a link or document name. Untimed services such as an evaluation need their own list so the formula does not try to convert them to units. A rule without a source and a date will eventually flag good claims and let bad ones through.
One Tuesday's 22 billing lines, checked end to end
An illustrative practice with three therapists exports 22 billing lines for one day from its practice software. Patient names are replaced by a reference number; the session note text has identifiers removed. A column called MinutesRecorded comes from the timer or the therapist's entry, and UnitsBilled from the claim.
First, the spreadsheet. A formula looks up total timed minutes for each patient-day in the table above and compares it with total units billed. In the example it flags four patient-days.
| Ref | Timed minutes | Units allowed | Units billed | Result |
|---|---|---|---|---|
| P-0412 | 40 | 3 | 3 | Match |
| P-0417 | 34 | 2 | 3 | Over by 1 |
| P-0433 | 52 | 3 | 3 | Match |
| P-0439 | 20 | 1 | 2 | Over by 1 |
| P-0441 | 38 | 3 | 2 | Under by 1 |
| P-0452 | 6 | 0 | 1 | Over by 1 |
Three over, one under. Notice the under-billed line: a good check flags money left on the table as readily as money at risk. The biller opens each flagged record and finds out why. P-0417 turns out to be a timer left running; the therapist confirms 28 minutes, so two units is correct and the claim line is fixed down. P-0441 is the reverse: the timer shows 38 minutes but only two units reached the claim. The therapist confirms the session did run 38 minutes, so the third unit is added and the confirmation is noted in the record. No one adjusts time to make a number fit.
That is the point where rules end and AI starts. The other records matched on units, but a match on units does not prove the note supports the lines. For those, the biller pastes the line details and the de-identified note into the prompt below.
You are checking a physical therapy practice's claim lines against the
session note before submission. You do not choose or suggest billing
codes and you never suggest adding time or services. Flag mismatches in
BOTH directions: billed but not documented, and documented but not billed.
For each record, answer:
1. Does the note describe each billed service? Quote the phrase that
supports it, or write NONE FOUND.
2. Does the note describe any intervention that has no billed line?
3. Does the note contain anything that conflicts with the minutes
(for example "left early", "session cut short")?
4. Is the note signed and dated on the date of service? (Say if you
cannot tell.)
Give a verdict per record: OK, REVIEW or MISSING DOCUMENTATION, with
one sentence of reason. Do not rewrite the note.
Record format: reference | minutes | billed services | note text
[paste records here]
An illustrative response for two records:
P-0455 | REVIEW
Billed: therapeutic exercise (3 units), manual therapy (1 unit)
Note supports: exercise ("progressed resisted knee extension, 3 x 12").
Manual therapy: NONE FOUND in the note.
No conflict with minutes.
P-0460 | OK
Billed: gait training (2 units). Note: "gait training with a frame
over 12 m, cues for step length, 25 minutes". Signed on the date.
The biller now asks the therapist about P-0455. Either the manual therapy happened and the note needs an addendum written by the therapist, or it did not happen and the line comes off. The AI settled neither; it found the question.
Reading flags without letting them become a push to bill more
Any billing tool can quietly turn into a revenue pump. If a prompt rewards "found missing services", staff learn that the model likes more billed lines. Three habits keep the check honest.
- Two-direction prompts. The prompt above asks for billed-but-undocumented first, because that is where audit exposure lives.
- A monthly direction count. In the flags sheet, tally how many flags would lower a claim and how many would raise it. A practice where 90 per cent of flags point up should look at itself.
- Therapist confirmation for any change. Time and services only change when the treating therapist confirms what happened, in writing in the record. A biller never edits a clinical fact.
The tutorial on human review for AI work without slowing down describes the same principle for other tasks: the model proposes, a named person decides, and the decision is recorded.
Documentation match: the five patterns the model finds well
With a few hundred reviewed records you will see the same families of mismatch. Knowing them lets you word the prompt to look for them and train the team to prevent them.
| Pattern | Example, illustrative | What the fix usually is |
|---|---|---|
| Billed, no supporting text | Note describes exercise only; manual therapy is on the claim | Therapist addendum or line removed |
| Copied-forward note | Three consecutive notes with identical wording and numbers | Therapist rewrites to reflect that day |
| Minutes that do not fit the session | Note says "patient arrived 20 minutes late", billed 60 minutes | Correct minutes from therapist |
| Intervention without a goal link | Treatment described, plan of care goal not referenced | Add the link in the note |
| Missing re-evaluation context | Progress change described but no re-evaluation recorded | Therapist confirms whether one was done |
The copied-forward pattern deserves a note. Practice software makes it easy to carry a previous note into a new one, and payers and auditors look for it. AI is good at spotting near-identical text across several notes for one patient. Ask for it explicitly: "Flag any record whose note text is more than 80 per cent identical to the previous visit for the same reference." Treat 80 per cent as a rough prompt, not a threshold with legal meaning.
Finding denial patterns in a month of rejections
Pre-submission checks reduce denials; they do not remove them. The second use of AI is reading what came back. Export the month's denied lines with the payer's reason text, drop identifiers, and ask for groups.
Below are de-identified denied claim lines with the payer's stated
reason. Group them into themes. For each theme give a name, the line
numbers, a count, the payer(s) involved, and the preventable step on
our side if one is evident from the text. Do not guess at causes the
text does not support. List lines that do not fit any theme.
[paste lines: number | payer | service | units | reason text]
Say a month produces 31 denials. The illustrative themes: 11 for authorisation not on file or visits exceeded, 8 for documentation not supporting the timed units, 5 for missing or mismatched insurance details, 4 for a timely-filing issue and 3 unclassified. As with any AI grouping, check the counts yourself; 11 + 8 + 5 + 4 + 3 is 31, and a total that does not match means the model dropped lines. The first theme points to your visit tracking, covered in tracking prior authorisations and approved visits with AI. The third usually starts at the front desk, where the AI receptionist for referral and insurance questions can capture details properly the first time.
A weekly routine that takes under an hour
Consistency beats cleverness. A small practice can run this once a week, before the main submission run.
- Export (5 minutes). Billing lines for the week, plus note text with identifiers removed.
- Run the rules sheet (5 minutes). Paste into the template; the formulas flag units, duplicates and dates.
- Resolve mechanical flags (10 minutes). Ask therapists about any minutes you cannot explain.
- Run the note-against-line prompt (10 minutes). In batches of about 15 to 20 records so the output stays readable.
- Review verdicts (15 minutes). Open every REVIEW and MISSING DOCUMENTATION record; spot-check three OK records per therapist.
- Log outcomes (5 minutes). Record each flag, what was found and whether the claim changed.
The spot-check in step 5 is how you learn whether the model misses things. If two of nine spot-checked OK records turn out to have problems, tighten the prompt or shrink the batch size before relying on it.
De-identifying billing lines before the note check
Billing text is patient health information, and the safest design never sends it in recognisable form. Use a reference number from your practice software in place of names; remove dates of birth, addresses and phone numbers; check the note text for names of relatives or employers. Use a business plan whose terms say content is not used for training (ChatGPT Business and Claude Team both say so on their pricing pages, checked November 2026) rather than a personal account, and read your own data-protection duties or ask your adviser before starting. The guide to patient data and AI for small practices has a short pre-paste checklist you can copy into your routine.
If you already use an AI scribe, ask its vendor what it offers inside its own system, since keeping data within one tool is better than copying it out. The comparison of AI scribes for physical therapy and the overview of clinic software with built-in AI show what some products already include.
Handling several payers without a rules table per person
A practice with one dominant payer can get away with a single lookup. Most have three or four, and the rules diverge in small, expensive ways: one converts per service, another from total timed minutes; one wants a modifier on a certain line, another does not. The tidy solution is one column in the rules sheet called Payer, with the lookup keyed on payer plus total minutes. Add a short Notes column for the odd rule that does not fit, such as "needs a progress note every tenth visit".
Take an illustrative three-payer practice. Payer A uses the total-minutes method above. Payer B counts each service separately, so a 10-minute exercise block and a 10-minute manual block each earn one unit, while Payer A would give two units for 20 total minutes. Payer C pays a flat amount per visit and has no unit rule at all. Running the same 22 lines through one sheet, the Payer B patients would show false flags on the total-minutes rule. Keying the lookup on payer removes those false alarms, and false alarms are what make staff stop reading flags.
Before adding a payer, ask for its current published billing or provider manual and read the timed-service section. Write the rule in plain words in the notes column, with the date. When the AI note check runs, include the payer name in each record so you can see whether flags cluster on one payer; a cluster is usually a rule you have misread, not a therapist problem.
Eligibility changes and re-evaluations: two upstream slips
Not every billing error starts with the therapist. Two more illustrations show where the check can reach back.
A patient who changed insurer mid-plan
A patient's insurer changes in the third week of a plan of care. The old policy number sits in the practice system and three claims are rejected for eligibility. In the denial grouping, those three lines appear as one theme with identical reason text. The fix is outside AI: re-verify eligibility at the first visit of each month. The model's contribution was making the pattern visible in a minute rather than in a quarter's complaints. Add a recurring eligibility check to the front-desk list and the theme should vanish from next month's grouping.
An evaluation billed on a follow-up day
A note headed "Re-evaluation" has no evaluation line on the claim, and the minutes were billed as treatment. The model flags documented-but-not-billed. The biller asks the therapist, who confirms a full re-evaluation did take place and writes the addendum themselves. Whether it can be billed on that date depends on the payer's rules for how often a re-evaluation is allowed, so the biller checks that policy before changing anything. Had the policy said no, the claim would have stayed as billed, and the flag would still have been worth raising because it surfaced a note-template problem.
Stale rules, vague quotes and other ways flags mislead
- The rules table goes stale. A payer changes its unit policy and your sheet keeps flagging correct claims. It shows up in the data as a sudden spike in "over by 1" flags on one payer. Fix: date every rule; review quarterly and whenever a payer notice arrives.
- The model approves things it cannot see. The note says "exercise" in one word and the model calls it supported. Fix: require a quoted phrase for each billed service, and treat a vague quote as REVIEW.
- Flags are ignored. A busy week, a long list, nobody opens it. Fix: one named person owns the list and the weekly slot; unresolved flags hold the claim.
- Therapists feel policed. If the check arrives as a list of faults, notes get defensive. Fix: share monthly pattern results, not individual league tables, and use findings to improve the note template.
Three numbers to compare after eight weeks
Pick three numbers before you start and write them down: first-pass acceptance rate, denials for documentation reasons per month and days from visit to payment. Run the check for eight weeks and compare. Say the practice's illustrative baseline was 31 denials a month out of roughly 560 submitted lines. If documentation-related denials fall from 8 to 3 and nothing else changed, that is a sensible sign. It is not proof, since payer mix and staffing move too, so keep notes on anything else that changed in the period.
Also count minutes. Track how long the weekly routine takes against the time previously spent on resubmissions and calls. If it takes 50 minutes a week and removes five hours of rework a month, it has paid for itself; if not, simplify it.
What this does not do
This check is not a medical coding service. It does not decide which services were performed, set fees or replace a certified biller's knowledge of your payers. It does not interpret clinical meaning, and it cannot tell you whether care was medically necessary. It also does not remove your duty to verify payer rules directly: every threshold in this tutorial is illustrative. Used as a flagging layer with a person in charge, it catches the dull, expensive slips before a payer does.
Questions before you add AI to claim checking
Can AI decide which code to bill?
It should not. Code selection is a clinical and billing judgement that rests with the treating therapist and your biller, under each payer's policy. Use AI to flag lines where the note and the billed line disagree, then let a person decide what is correct.
Do I need to send patient names to the AI?
No. Export lines with a patient reference number, not names, and paste only the fields a check needs: minutes, units, codes, note text with identifiers removed. Use a business plan whose terms say content is not used for training, and check your own data-protection duties first.
How do I stop the check nudging staff to bill more?
Tell the model to flag mismatches in both directions, under-billing and over-billing, and never to suggest adding time or services. Review the flag list for direction each month. If flags only ever point upwards, the prompt or the process needs changing.
What does this cost to run?
The check itself needs a spreadsheet you already own and a business-plan chat seat, which on ChatGPT Business is $20 a user a month billed annually or $25 monthly, with a two-user minimum. The real cost is about 30 to 60 minutes a week of a biller's or manager's time reading flags.
How often should the rules be updated?
Review the rules table whenever a payer announces a policy change and at least quarterly. A rule written from last year's policy will flag correct claims and miss wrong ones. Date every rule and note where you read it.
Further reads
- How Physiotherapists Use AI to Write Treatment Notes Faster — Clearer notes upstream make the documentation match easier.
- Therapy Practice Management Software: What the AI Add-Ons Cost — See what practice software AI add-ons cost before building your own.
- AI Receptionist for Physiotherapy Clinics: Cost and Booking Setup — Capture insurance and booking details correctly at the first call.
- AI Tools for Physiotherapy Clinics: What Each One Actually Does — Map where billing checks sit among other clinic AI tools.
- Is an AI Scribe Worth It for a Small Private Clinic? — Whether a scribe pays for itself in a small private clinic.
- AI Denial Management for Medical Billing: Group, Appeal, Track — Export your remits, group denials by reason code, draft appeals with AI and track outcomes on one sheet, with a worked month in numbers.
- Best AI to Help With PT Documentation: Avoiding Cloned Notes — Use AI for PT documentation without cloned notes: what auditors look for, a per-visit detail checklist, prompts and a therapist review step.
- Medical Billing AR Follow-Up: Prioritise Aged Claims With AI — Turn an aged AR report into a ranked daily work queue, payer call scripts and consistent notes, using AI on de-identified data only.
- Medical Billing Client Onboarding: Contracts, Access, AI Reports — A medical billing company's onboarding sequence for a new practice, from contract and BAA to access, enrolment checks and the first report.
- Using AI for Medical Billing: Spot Missed Charges From Visit Notes — A weekly reconciliation that finds delivered-but-unbilled services, with the spreadsheet step, the AI step and the owner's review.
- AI Use in Physical Therapy: Which Uses Need Clinician Sign-Off — A clinic owner's ladder for AI in physical therapy: which uses run alone, which need a clinician to sign, and which stay human.
- AI for ABA Therapy Practices: Seven Admin Jobs and Three to Keep Human — Seven admin jobs an ABA practice can give to AI, three that stay with the BCBA, and the business associate agreement check before any client data moves.
- Will Payers Accept AI-Written Physical Therapy Documentation? — Payers judge the note, not the tool: what reviewers look for, and the review, signature and audit-trail routine that makes AI drafts safe.
- AI Tools and AI Development: The Complete 2026 Guide — the AI hub, including every tutorial in the AI-for-business series.
Sources: ChatGPT Business pricing page (openai.com) and Claude pricing page (claude.com), both checked 4 November 2026, for seat prices and no training on business content by default. Payer billing rules differ and change, so every threshold in the examples is illustrative and must be replaced with your payers' current published policy.