AI for Mental & Behavioral Health Clinicians
Capable · M3 · lesson 3 of 24 · queued
Preview — browse every lesson free. Enroll to mark lessons complete, open partner links and save your progress. Login & enroll →
CPT Coding Decisions: 90791, 90832, 90834, 90837, Family Codes, and Add-Ons
📖
now learning

CPT Coding Decisions: 90791, 90832, 90834, 90837, Family Codes, and Add-Ons

15 min

The session ran 56 minutes. Maria knows it, her calendar knows it, and at 9:54 PM the only question that matters is which box to check: 90834 or 90837. Pick 90834 and she leaves roughly thirty dollars on the table for work she actually did. Pick 90837 and she joins the population Optum's high-utilization audit program has been mining since 2022, where the difference between a paid claim and a recoupment letter is one sentence in the note. CPT coding for psychotherapy is not bookkeeping; it is the place where your clinical record, your billing record, and a payer's audit algorithm intersect. By the end of this lesson you will be able to code a 56-minute session correctly and defensibly, choose among 90791, 90832, 90834, 90837, the family codes 90846 and 90847, group code 90853, and the psychiatric add-ons, document the time-in-session rationale that survives a UnitedHealthcare 90837 audit, and know exactly which of these decisions AI can support and which one only you can make.

The Code Set: One Map of the Psychotherapy Codes

Start with the map, because every coding decision in this chapter hangs off it. 90791 is the psychiatric diagnostic evaluation, the intake code, billed once at the start of treatment (some payers allow re-billing after a long gap or major clinical change; check the plan). The individual psychotherapy codes are time-banded: 90832 covers 16 to 37 minutes, 90834 covers 38 to 52 minutes, and 90837 covers 53 minutes and beyond. Notice what those bands mean: there is no "30-minute code," "45-minute code," and "60-minute code" in the way clinicians casually speak. A 38-minute session is a 90834. A 52-minute session is a 90834. A 53-minute session is a 90837. The band boundaries, not the scheduled appointment length, decide the code.

The family codes split on one question: was the identified patient in the room? 90846 is family psychotherapy without the patient present (you meet with the parents of your adolescent client to work on the family system); 90847 is family psychotherapy with the patient present (the adolescent joins). Both are about treating the identified patient through the family system, which is why your note must tie the family work back to the patient's treatment plan even when the patient is absent. 90853 is group psychotherapy, per member, per session. And 96127, covered carrier by carrier with per-date-of-service limits, pays for brief emotional and behavioral assessment, the PHQ-9s and GAD-7s your measurement-based care workflow already administers.

The psychiatric add-ons matter even if you are not a prescriber, because you share clients with people who use them. When a psychiatrist or PMHNP delivers psychotherapy in the same encounter as an evaluation and management (E/M) service, the therapy time is billed with add-on codes 90833 (roughly the 30-minute band), 90836 (45), or 90838 (60) on top of the E/M code such as 99214 or 99215. The critical mechanic: the time counted for the psychotherapy add-on must be separate from the time counted for the E/M work. Double-counting the same minutes in both buckets is one of the most common psychiatry billing errors, and an auditor checks for exactly that arithmetic.

The 56-Minute Session, Walked End to End

Now the worked decision. Maria's 3:00 client arrived at 3:04. Therapy began at 3:06 after two minutes of scheduling talk, and the clinical work ran until 4:02, when Maria spent three more minutes booking the next appointment and walking the client out. The calendar block says 60 minutes. The face-to-face encounter says 58. The psychotherapy says 56. Which number codes the session?

The 56. Time in session means time spent delivering psychotherapy, and that is the defensible standard: not the appointment block, not the calendar entry, not the time the client was physically in the building. Scheduling chatter, payment processing, and walking to the door are not psychotherapy. Fifty-six minutes of psychotherapy clears the 53-minute floor for 90837, so 90837 is the correct code, and undercoding it to 90834 is not the safe play it feels like: systematically billing below the documented service distorts your claims profile too, and it donates money for work performed. The right answer is to bill 90837 and document it so the code defends itself.

What does that documentation look like? The note states the actual psychotherapy start and stop times or the total psychotherapy minutes: "Session conducted 3:06 PM to 4:02 PM; 56 minutes of psychotherapy provided." It is specific to this session, not a template line that reads "53+ minutes" on every note in the chart, because an auditor who sees the identical time phrase on forty consecutive notes concludes the times are boilerplate, not measurement. And the content of the note has to be congruent with an hour of therapy: a 90837 note with two thin sentences of content invites the question of what filled those 56 minutes. This is where the payer rule of this chapter bites hardest: the time-in-session minutes are the verifiable detail AI cannot supply. An AI scribe can format the note, structure the interventions, and tighten the language. It cannot know that therapy started at 3:06 instead of 3:00, and if you let it infer time from the calendar, it will write "60 minutes" into a note for a 56-minute service, manufacturing a discrepancy you then sign.

The appointment time is what your calendar says. The time in session is what you delivered. Only the second number is billable, and only you know it.

Why Optum Audits 90837, and What the Algorithm Sees

Understand the audit pressure, because it explains the documentation standard. Optum's 90837 program has been one of the most aggressive high-utilization audit efforts in commercial behavioral health since 2022. The logic is statistical: 90837 reimburses more than 90834, so a clinician whose claims profile shows a markedly higher share of 90837 than the network average gets flagged, sometimes receiving a letter that reads less like an audit notice and more like an invitation to start billing 90834. The algorithm sees percentages, not clients. It does not know that your caseload is trauma-heavy and that EMDR processing sessions legitimately run long. It sees that you bill 90837 at 95 percent while the network mean sits far lower.

Three points of orientation for that moment. First, billing 90837 frequently is not wrong if the service was delivered and documented; there is no rule capping how often a clinician may provide 53-plus minutes of therapy. Second, the audit is won or lost in the notes, before it ever begins: session-specific time documentation, clinically substantive content matched to the duration, and a modality named in the note. "Provided EMDR processing of index trauma, phases 4 through 6" supports a long session in a way "provided supportive therapy" never will. Third, do not change your coding behavior to dodge the algorithm if the clinical reality supports 90837; do change your documentation behavior immediately if your notes could not currently prove the time. A chart full of accurate 90837 claims with vague notes loses an audit that a chart of identical claims with timed, modality-specific notes wins.

Where does AI fit? Exactly here, and carefully. An AI scribe that timestamps from the actual recording (session audio begins and ends) produces a duration that reflects the encounter, which is closer to the truth than the calendar but still needs your confirmation: the recording may include the scheduling chatter that is not psychotherapy. Tools like Mentalyc, Upheal, and the AI features inside SimplePractice and TherapyNotes can scaffold the note's structure and prompt you for time fields. The workflow that survives audit is: you state the psychotherapy minutes, the AI writes them into the structured field, and you verify the number before signing, every time. An AI that defaults the time field from the appointment length is a recoupment generator.

Family Codes: The 90846 vs 90847 Decision

The family-code decision is binary but the documentation around it is not. Bill 90847 when the identified patient participates in the family session; bill 90846 when you conduct family psychotherapy without the patient present. Both codes typically reference a 50-minute service, and both require that the family work serve the identified patient's treatment: the patient's diagnosis is the diagnosis on the claim, and the note must connect the family intervention to the patient's treatment plan goals. A 90846 note that reads like a consultation with worried parents, untethered from the adolescent's plan, is a denial waiting for a reviewer.

Common traps, worth naming because they recur in audits. Couples therapy where the "couple" is the unit of treatment but the claim rides on one partner's diagnosis: payable under 90847 when one partner is the identified patient with a covered diagnosis and the conjoint work treats that condition, but the note has to say so. Billing 90847 for a session where a family member briefly joined the last ten minutes of an individual session: no; the code describes a family psychotherapy service, not a cameo. Billing 90846 and an individual code for the same client on the same day: payer-specific and frequently restricted; check edits before assuming. And the AI-specific trap: a scribe summarizing a session with multiple voices will sometimes attribute clinical content to the wrong speaker or blur who was present. The presence list (who was in the room, for which minutes) is another verifiable detail only you can certify, and it is precisely the fact that decides between 90846 and 90847.

Prolonged Services: The Post-2023 Rules Your Biller May Have Missed

Here is the trap that snares psychiatric practices and the therapists who read old coding guides: the legacy prolonged-service codes 99354 and 99355 are deleted. They are no longer valid for outpatient psychiatry, full stop. If a template, a cheat sheet, or an AI assistant suggests 99354 for a long E/M visit in 2026, it is reciting an outdated codeset, and a claim built on it will be rejected or, worse, paid in error and recouped later.

The replacement structure splits by payer. For Medicare and payers that follow Medicare rules (including many Medicare Advantage plans), the prolonged outpatient E/M add-on is G2212, a CMS-created per-15-minute code that applies only after the maximum time of the primary E/M code (99205 for new patients, 99215 for established) has been exceeded by at least 15 minutes. For non-Medicare commercial payers using the CPT codeset, the add-on is 99417, a per-15-minute prolonged code applied once the time threshold of the primary E/M has been met. The two codes have different trigger arithmetic, which is exactly the kind of detail that quietly destroys claims: G2212 starts counting from beyond the maximum time of the E/M, 99417 from the threshold. Most behavioral health carriers follow the CPT convention and want 99417; Medicare and select MA plans want G2212. A practice billing both populations needs both rules in its charge logic, and an AI assistant asked "what prolonged code do I use" must be told which payer before its answer means anything.

For the non-prescribing therapist, the practical takeaways are two. First, your psychotherapy codes are not E/M codes: a 70-minute therapy session is still 90837; there is no prolonged add-on stacking on psychotherapy-only services for time beyond 53 minutes in routine outpatient billing. Second, when you coordinate with the psychiatrist or PMHNP on a shared client, understanding G2212 versus 99417 makes you a better collaborator and a sharper reader of the shared record, because their documentation of separated E/M and psychotherapy time is the same discipline as your time-in-session line.

What AI Can and Cannot Do in the Coding Decision

Draw the boundary precisely, because "AI-assisted coding" is sold loosely and audited strictly. What AI does well: explain the code definitions and time bands on demand; structure a note so the elements supporting the code (time, modality, interventions, response) each appear; check a draft note against the code on the claim and flag mismatches ("note documents 45 minutes but claim says 90837"); maintain your personal coding decision tree as a reusable prompt; and summarize payer-specific rules you paste in from the provider manual. That last point matters: a general model's training data contains outdated CPT guidance, including the deleted 99354/99355, so payer rules must be supplied to the model, not requested from its memory.

What AI must never do: pick the code. The code selection is a clinical-billing attestation that rides on facts only you hold: the actual psychotherapy minutes, who was present, what modality you delivered, whether the family work served the identified patient's plan, whether E/M and therapy time were separated. Every one of those is a verifiable detail an auditor can test against the record, and every one is invisible to the model unless you assert it, at which point the model is formatting your decision, not making one. The practical rule for a group practice policy: AI may verify congruence between note and code; the clinician selects the code; any AI-flagged mismatch is resolved by the clinician before the claim goes out. Jordan's 25-clinician practice in Sacramento learned this the cheap way: a congruence check in the note workflow catches the 90834-note-on-90837-claim error at signing, which costs thirty seconds, instead of at audit, which costs the recoupment plus the extrapolation across two years of claims.

And keep the risk guardrail in view even here, in billing territory: coding pressure must never reshape clinical truth. If the AI observes that "extending sessions past 53 minutes would increase revenue," that is an optimization model talking about your treatment frame. Session length is a clinical decision made for clinical reasons; the code follows the service, never the reverse. The moment the tail wags the dog, you have a compliance problem and a clinical one.

The Decision Tree You Can Defend

Assemble the whole lesson into the tree you will actually use at 9:54 PM. Question one: what service was this? A first diagnostic evaluation is 90791. Individual psychotherapy goes to question two. Family psychotherapy: patient present is 90847, patient absent is 90846, and the note ties the work to the identified patient's plan either way. Group is 90853. A brief validated instrument administered and scored may add 96127 where the carrier covers it, within per-date limits.

Question two, for individual therapy: how many minutes of psychotherapy did you deliver, by your own timekeeping? Sixteen to 37 is 90832. Thirty-eight to 52 is 90834. Fifty-three or more is 90837. Write the session-specific minutes or start and stop times into the note before you think about the code; the number decides, and the number must live in the record. Question three: does the note's content match the code's weight? A 90837 needs substance proportionate to an hour: modality named, interventions described, client response captured. Question four, for prescriber colleagues: is there an E/M component? Then the psychotherapy rides on 90833, 90836, or 90838 with time separated from the E/M minutes, and any prolonged service uses G2212 for Medicare-rules payers or 99417 for commercial CPT payers, never 99354 or 99355. Question five, always: would this claim survive the auditor reading only the note? If the note alone cannot prove the code, fix the note before the claim leaves the building.

The Applied Problem: Your Coding Decision Card and Congruence Prompt

The artifact for this lesson is a two-part Coding Decision Card: a one-page decision tree for your own reference, plus an AI congruence-check prompt that runs against every note before signing. Step one: build the card. Open a blank page and write the five questions from the decision tree in your own words, with the time bands stated exactly (90832: 16-37; 90834: 38-52; 90837: 53+), the family-code split (90847 patient present, 90846 patient absent, both tied to the identified patient's plan), and the prolonged-services line for your prescriber colleagues (99354/99355 deleted; G2212 Medicare rules after the E/M maximum is exceeded by 15+ minutes; 99417 commercial CPT after the threshold). Add one line in red at the bottom: "The code follows the service. Time in session, not appointment time."

Step two: build the congruence prompt and save it where your notes are signed. The text: "You are a documentation congruence checker, not a coder. Below is a draft progress note and the CPT code selected by the clinician. Check only: (1) does the note state session-specific psychotherapy start/stop times or total minutes, and do those minutes fall within the selected code's band (90832: 16-37, 90834: 38-52, 90837: 53+); (2) does the note name the modality and at least two interventions; (3) is the documented content proportionate to the duration; (4) for 90846/90847, does the note state who was present and connect the work to the identified patient's treatment plan. Output a pass/flag list. Do not suggest a different code. Do not estimate or supply any time value." The two prohibitions in the last lines are the spine of the prompt: the model checks congruence; it never codes and never invents minutes.

Step three: run it on your last five notes, without mercy. Expect flags; most clinicians find at least one note where the time line is templated rather than session-specific, or where a 90837 note is thinner than its hour. Fix the documentation pattern going forward (not retroactively rewriting old notes, which creates its own integrity problem, but correcting the habit). Done looks like this: a printed card by your desk, a saved prompt in your signing workflow, and five recent notes where the minutes are session-specific, the modality is named, and the note alone would carry the code in front of an auditor. That is the position from which an Optum 90837 letter becomes an administrative chore instead of a financial event.

Key Takeaways

  • The time bands decide the code: 90832 covers 16-37 minutes, 90834 covers 38-52, and 90837 covers 53 and up. A 56-minute session is a 90837, and undercoding it is neither required nor truly safe; it donates revenue and still distorts your claims profile.
  • Time in session, not appointment time, is the defensible standard. Bill the psychotherapy minutes you delivered, document session-specific start/stop times or totals in the note, and never let an AI tool default the time field from the calendar block.
  • Optum's 90837 high-utilization audit program, among the most aggressive in commercial behavioral health since 2022, flags claims profiles statistically. The defense is built in the notes before the letter arrives: session-specific times, named modality, and content proportionate to the hour.
  • Family codes split on presence: 90847 with the identified patient, 90846 without, and both require the note to tie the family work to the identified patient's treatment plan. Who was in the room is a verifiable detail only the clinician can certify.
  • The prolonged-service codes 99354 and 99355 are deleted. Medicare and Medicare-rules payers use G2212, applied only after the maximum time of 99205/99215 is exceeded by 15-plus minutes; commercial CPT payers use 99417 after the primary E/M's time threshold. The trigger arithmetic differs, and AI assistants trained on old codesets will get this wrong unless you supply the current rules.
  • AI verifies congruence; the clinician selects the code. The minutes, the presence list, the modality, and the E/M time separation are facts only you hold, and the congruence-check prompt that flags note-code mismatches at signing costs seconds while preventing recoupments that extrapolate across years.
  • The code follows the service, never the reverse. Session length is a clinical decision; any workflow, human or AI, that nudges treatment toward a reimbursement band is a compliance and clinical failure at once.