Last updated: November 2026

Purpose: This page explains how to choose and order ("stack") ICD-10 diagnosis codes in your charting note so claims are accurate and not denied. It includes a reference table of code combinations that payers commonly reject.


Quick Answer

The diagnosis codes on a claim should describe what happened at that specific visit. List the main reason for the visit first, add only the current conditions that affected care at that visit, and do not combine codes that contradict each other or that ICD-10 rules say generally should not be reported together. Payers see the diagnosis codes, not your charting note, so the codes have to tell the story of the visit on their own.

<aside>

Example: A claim lists F11.21 (in remission), F11.20 (uncomplicated), and F11.23 (with withdrawal) for the same visit. The payer denies it because the patient cannot be in remission and in withdrawal at the same visit. The correct claim lists one opioid dependence code that matches what the note documents for that day. If the note documents withdrawal, use F11.23. If the note documents remission, use F11.21.

</aside>


Why Diagnosis Codes Matter on a Claim

Diagnosis codes are how the payer understands the visit. When a claim is reviewed, the payer sees the ICD-10 diagnosis codes and the CPT code, not the charting note.

Stacking means the set of diagnosis codes listed together on one claim and the order they appear in.


How to Choose and Order Diagnosis Codes

1. List the main reason for the visit first

The first-listed diagnosis is the condition chiefly responsible for the visit. For a MAT follow-up, that is usually the opioid use disorder code. For a medication management visit for depression, that is the depression code.

2. Add only current conditions that affected care at this visit

Add secondary codes for conditions that exist at the time of the visit and that you assessed, treated, or that affected your care decisions. Do not add conditions that are resolved or that were not part of the visit.

3. Use one code per condition, at the level your note supports