Medicare billing
OT Evaluation Complexity Calculator
Grade the three components of the OT evaluation and we'll suggest the CPT code that matches — 97165, 97166, 97167, or 97168 for a re-evaluation. The result updates the moment every component is graded.
How OT evaluation complexity coding works
Since January 2017, Medicare has recognised four occupational therapy evaluation codes in place of the previous single 97003/97004 pair. The three initial-evaluation codes — 97165 (low complexity), 97166 (moderate complexity), and 97167 (high complexity) — are chosen by grading three components of the encounter, while 97168 is a flat re-evaluation code billed when an established plan of care needs to be updated.
The three components driving the tier are the occupational profile and client history, the assessments performed during the evaluation, and clinical decision making. The occupational profile component looks at the number of performance deficits identified during history taking: few deficits fits the low-complexity tier, several deficits fits moderate, and an extensive set of deficits fits high. The assessments component counts the number of performance deficits formally assessed during the encounter — roughly one to three deficits for low, three to five for moderate, and five or more for high. Clinical decision making is graded directly as low, moderate, or high based on the analytical complexity of the evaluation, which on the OT side includes the stability of the condition and the number of treatment options being weighed. Unlike the PT codes, there is no separate "clinical presentation" axis in OT evaluations; clinical decision making absorbs that consideration.
The decision rule that AOTA publishes, and that CMS reinforces in its MLN Matters guidance, is that every component must meet the criteria for a given tier in order to bill that tier. In practice, this means the overall complexity equals the minimum grade across the three components. If two components look high but one looks moderate, the encounter legitimately bills as moderate complexity (97166). The calculator above encodes this rule — the moment you pick a grade for every component, the suggested code appears and reflects the minimum across them. When a component makes the evaluation less complex than the rest of the picture suggests, the result card flags it as the limiting component so the documentation can speak to it directly.
Re-evaluations occupy a different code because their purpose is different. 97168 is not a tiered code; it is billed when a clinician performs a clinically indicated update to an established plan of care — for example, when the client has experienced a significant change in occupational performance, when there is new information that alters the plan, or when the plan needs material revision. CMS expects the re-evaluation note to document the reason for the re-eval and the resulting change to the plan of care; simply rechecking progress at a regular cadence is not a billable re-eval event. If you flip the encounter-type toggle to "re-evaluation" in the calculator, the component grades are ignored and the flat 97168 code is returned.
A few coding pitfalls worth avoiding. First, the evaluation codes are one-per-episode-of-care rather than one-per-visit; CMS does not allow billing both 97166 and 97165 for the same client on the same date. Second, the evaluation codes are untimed — they are not subject to the 8-minute rule, and time spent performing the evaluation is not what determines the tier. Third, documentation has to support the grades you select; a high-complexity code without narrative that explains why clinical decision making was complex is a common audit finding. Fourth, because OT clinical decision making absorbs stability-of-condition considerations, notes should explicitly describe the client's status and how it influenced the treatment options weighed. Finally, the "minimum across components" rule is easy to read but easy to forget in the moment — the calculator's limiting-component callout exists precisely so you can name the reason in your note before you submit the claim.
This tool paraphrases the AOTA code-selection resources and the CMS MLN Matters summary in plain language. It does not reproduce the AMA CPT descriptor paragraphs and it is not a substitute for reading the descriptors in your coding reference. For the authoritative text, consult the current CPT codebook and your local Medicare Administrative Contractor's guidance.
Sources: CMS MLN Matters, AOTA coding resources. Last reviewed 2026-04.
Frequently asked questions
How does Medicare decide which OT evaluation CPT code to bill?
CMS recognises three tiered codes for an OT initial evaluation — 97165 (low), 97166 (moderate), and 97167 (high) — plus 97168 for a re-evaluation. The tier is chosen based on three components: the occupational profile and history, the assessments performed, and clinical decision making. To bill a given tier, every component must meet the criteria for that tier.
Why does OT evaluation have three components when PT has four?
OT evaluation codes were written around three components by the AMA and CMS. Stability of the clinical presentation, which is a separate axis in the PT codes, is folded into clinical decision making on the OT side. That is why the OT calculator asks three questions and the PT calculator asks four.
What happens if one component is lower than the others?
The overall evaluation is capped at the lowest component grade. If two components look high and one looks moderate, the encounter bills as moderate complexity (97166). The calculator takes the minimum across the graded components rather than averaging them.
When should I use 97168 instead of a tiered code?
Use 97168 when re-evaluating an established OT plan of care — for example, when the client's occupational performance has changed in a way that requires the plan to be revised. Re-evaluations are not tiered by complexity; 97168 is a flat code. Document the reason for the re-eval and the resulting change to the plan.
Does this calculator submit a bill or change my Medicare charges?
No. The calculator is a decision aid that reflects the public CMS and AOTA guidance on code selection. It does not connect to your practice management system, does not submit claims, and does not guarantee payment. Always verify your coding against your current payer manuals and your organisation's compliance program.
Where do the component definitions come from?
From public CMS MLN Matters articles and AOTA code-selection resources. We deliberately do not reproduce AMA CPT descriptor paragraphs verbatim — the definitions here are paraphrased in plain language to stay within fair use of public educational materials.
Disclaimer: This calculator is a tool to help clinicians think through CPT evaluation coding and is nota substitute for clinical or billing judgment. CMS guidance and payer rules evolve; verify results against your current payer manuals and your organisation's compliance program before submitting a claim.