HANK CODES codes office and outpatient E/M visits in the 99202-99215 family. The autocoder reads the visit note and extracts the evidence that decides the level. A deterministic engine then computes the level from that evidence. The autocoder never uses AI judgment to pick a level.

## What the autocoder extracts

The autocoder pulls four things from the visit note:

1. The medical decision making elements: problems addressed, data reviewed and analyzed, and risk of complications.
2. The total time of the visit, but only when the note states it explicitly.
3. New patient or established patient status.
4. Telehealth modality, and any procedure performed at the same encounter.

Every determination must carry a verbatim quote from the note, and the autocoder checks each quote against the chart text. A determination with no verifiable quote is dropped from leveling, and the **E/M Evidence Excluded - Missing Verbatim Citation** alert fires. A dropped element can make the level lower than the documentation supports, so check that alert against the note.

## How the level is computed

The engine uses the standard two paths and takes the higher supportable level:

- The decision making path, which needs two of the three decision making elements.
- The total time path, which needs an explicitly documented total time.

When the two paths support different levels, the autocoder raises **MDM and Time Support Different Levels**. When one element bin or one documented minute would change the answer, it raises **E/M Level Sits at a Decision Boundary**. When the level rests on documented time alone, it raises **E/M Level Rests Solely on Documented Time**.

The engine also refuses to guess. If fewer than two decision making elements are determinable and no usable total time exists, no E/M line is built and the **No E/M Level Supportable From Documentation** alert lists the reasons. The autocoder never assigns 99211 on its own, because 99211 has no decision making or time basis.

Each level ships with a leveling audit record. It holds the evidence, the quotes, the path used, and the code table year, so you can defend the level.

## New patient and established patient

The autocoder selects the new patient family (99202-99205) or the established patient family (99211-99215) from evidence in the note. A documented prior visit with the same specialty in the same group practice within the previous 3 years indicates an established patient. A "new patient" or "establish care" header counts as evidence of a new patient. When the status cannot be derived, the engine reports no supportable level rather than choosing one.

## A chart with no visit note

Office E/M coding needs a visit note. By default the autocoder accepts an office visit note, a history and physical note, or a progress note. If the chart carries none of these, the autocoder refuses the request instead of guessing. It returns an empty claim, records the refusal reason and the note types it found, and raises the **E/M Coding Request Refused - No Qualifying Encounter Note** alert. Your facility configuration controls the accepted list through `qualifyingEncounterNotes.anyOf`. Contact your Hank representative to change it.

## Procedures at the same visit

When the note documents a procedure at the same encounter, the autocoder raises **Same-Day Procedure Alongside E/M Visit (Modifier 25 Review)**. A procedure with an explicitly documented CPT becomes its own line. A procedure without a documented CPT appears in the alert text only. The autocoder suppresses nothing on its own. By default it never appends modifier 25; the `emPolicy.mod25Aggressiveness` setting controls that, and your Hank representative can change it.

Prolonged service codes are not produced in this version. When documented time reaches prolonged territory, the **Prolonged-Service Time Documented But Not Billed** alert asks your coding lead to review it.

## How this reaches you

What happens next depends on how your organization consumes HANK CODES. In HANK Claim Maker, a HARDSTOP alert places the claim in the review queue your administrators configured for it. Organizations that consume the coding API directly decide in their own workflow which alerts pause a claim, who reviews them, and when a claim is released.

For the full list of E/M alerts, their types, and their default severities, read the [E/M Alert Reference](/hank-codes/alerts-and-review/em-alerts-reference).
