ICD-10 Codes for Obesity and BMI (E66, Z68)

Obesity coding in ICD-10 comes in pairs. Every code in the E66 family carries an instruction to add the body mass index code (Z68.-) when the BMI is known — and the two halves follow different documentation rules about who is allowed to record what. Getting the pair right, and the paperwork behind it, is most of the job.

The rule that defines obesity coding: E66 travels with Z68

Category E66 (overweight and obesity) carries an instructional note to use an additional code to identify the body mass index, if known — from Z68.1–Z68.45 for adults or Z68.5- for pediatric patients. So a complete obesity claim is usually two codes: the E66 diagnosis, plus the Z68 code that matches the documented BMI.

CodeDescription
E66.9Obesity, unspecified
Z68.33Body mass index [BMI] 33.0-33.9, adult

The pair works in one direction only. The E66 code can stand alone when no BMI is documented — but a Z68 code can never stand alone, because BMI codes are secondary-only and require an associated diagnosis.

The E66 family: choosing the diagnosis half

CodeDescription
E66.01Morbid (severe) obesity due to excess calories
E66.09Other obesity due to excess calories
E66.1Drug-induced obesity
E66.2Morbid (severe) obesity with alveolar hypoventilation
E66.3Overweight
E66.811Obesity, class 1
E66.812Obesity, class 2
E66.813Obesity, class 3
E66.89Other obesity not elsewhere classified
E66.9Obesity, unspecified

E66.01 is the default for documented morbid or severe obesity — the Alphabetic Index sends “morbid obesity” straight there, and the “due to excess calories” in the code title does not require separately documented etiology; E66.09 covers excess-calorie obesity without the severity language, and E66.9 is the fallback when the note says only “obesity.” E66.1 (drug-induced) carries its own instruction to add an adverse-effect code from T36–T50 (fifth or sixth character 5) identifying the drug. E66.3 (overweight) is a distinct, codeable diagnosis — not a softer synonym for obesity.

The class codes — new since October 1, 2024

E66.811, E66.812, and E66.813 code obesity documented by class. The official descriptors say only “Obesity, class 1/2/3” — the familiar BMI ranges (class 1 = 30.0–34.9, class 2 = 35.0–39.9, class 3 = 40 and above) are the standard clinical staging, not part of the code titles. Code the class the provider documents; don't translate a BMI value into a class yourself. E66.89 covers other specified obesity that fits none of the above.

E66.2: when obesity affects breathing

E66.2 covers morbid (severe) obesity with alveolar hypoventilation — including obesity hypoventilation syndrome (OHS) and Pickwickian syndrome. ICD-10-CM places an Excludes1 note under E66.01 pointing at E66.2: the two are never coded together. If the hypoventilation is documented, E66.2 replaces E66.01. Search the lookup tool for the full family.

The BMI half: adult ranges vs. pediatric percentiles

Adults (age 20 and older): Z68.1–Z68.45

Adult BMI codes track the measured value. From BMI 20 through 39.9 they move in one-unit steps (Z68.20 through Z68.39, where the last digit mirrors the ones digit of the BMI); at 40 and above the bands widen.

CodeDescription
Z68.1Body mass index [BMI] 19.9 or less, adult
Z68.25Body mass index [BMI] 25.0-25.9, adult
Z68.30Body mass index [BMI] 30.0-30.9, adult
Z68.41Body mass index [BMI] 40.0-44.9, adult
Z68.45Body mass index [BMI] 70 or greater, adult

Pediatrics (age 2–19): percentile codes, not values

Children's BMI is age-relative, so the pediatric codes are built on percentiles from the CDC growth charts — and the severe-obesity tiers (Z68.55, Z68.56) arrived in the same October 2024 update as the class codes.

CodeDescription
Z68.51Body mass index [BMI] pediatric, less than 5th percentile for age
Z68.52Body mass index [BMI] pediatric, 5th percentile to less than 85th percentile for age
Z68.53Body mass index [BMI] pediatric, 85th percentile to less than 95th percentile for age
Z68.54Body mass index [BMI] pediatric, 95th percentile for age to less than 120% of the 95th percentile for age
Z68.55Body mass index [BMI] pediatric, 120% of the 95th percentile for age to less than 140% of the 95th percentile for age
Z68.56Body mass index [BMI] pediatric, greater than or equal to 140% of the 95th percentile for age
The age line is 20, not 18. Adult Z68 codes are for persons 20 years of age or older; the pediatric percentile codes cover ages 2–19. A 19-year-old takes a percentile code, even when the chart reports a numeric BMI.

Who documents what

A BMI number alone is not an obesity diagnosis. A chart showing BMI 41 does not support E66.01 unless the provider documents the diagnosis. The BMI value can come from any clinician; the E66 code cannot. When the number and the diagnosis don't line up, query — don't infer.

The guidelines split the pair's documentation requirements. BMI is one of the exceptions where code assignment may be based on documentation from clinicians who are not the patient's provider — a dietitian or nurse recording the BMI is enough to assign the Z68 code. But the associated diagnosis (overweight, obesity) must be documented by the patient's provider. BMI codes are also secondary-only: assign them when there's an associated, reportable diagnosis documented by the provider, never as a first-listed code. And when the record shows fluctuating BMI values during the encounter, the guideline says to code the most severe value.

Obesity in pregnancy: O99.21- comes first

Category E66 carries a code-first note for obesity complicating pregnancy, childbirth, and the puerperium (O99.21-). When an obese patient is pregnant and the condition is complicating the pregnancy, the O99.21- code leads, with the E66 code added — O99.21- has its own “use additional code to identify the type of obesity” instruction.

CodeDescription
O99.211Obesity complicating pregnancy, first trimester
O99.212Obesity complicating pregnancy, second trimester
O99.213Obesity complicating pregnancy, third trimester
O99.210Obesity complicating pregnancy, unspecified trimester
O99.214Obesity complicating childbirth
O99.215Obesity complicating the puerperium

One more pregnancy rule, and it's absolute: do not assign BMI codes during pregnancy. A pregnant patient's obesity is coded O99.21- plus E66.- — with no Z68 code at all.

Why this coding matters for risk adjustment

Obesity is one of the clearest examples of specificity carrying financial weight. In CMS's ICD-10-to-HCC mappings for Medicare Advantage (the V28 CMS-HCC model, which fully drives payment-year 2026 risk scores), morbid (severe) obesity — E66.01 and E66.2 — maps to a payment category, while unspecified obesity (E66.9) and overweight (E66.3) map to none. The class codes split the same way: class 3 (E66.813) risk-adjusts; classes 1 and 2 (E66.811, E66.812) currently don't. The BMI codes follow the same line: Z68.41–Z68.45 (BMI 40 and above) carry the same mapping — so the documented Z68 half of the pair is more than an audit courtesy, and a claim carrying both the diagnosis and the documented BMI is far easier to defend in a validation audit. That's never a license to inflate — it's a reason to code exactly what the provider documented, and to query when the clinical picture supports more specific language than “obesity.” Where documented, Z98.84 (bariatric surgery status) completes the picture.

Common obesity coding mistakes

  • Deriving the diagnosis from the BMI value. BMI 41 in the vitals does not make the patient morbidly obese for coding purposes — E66 codes require the provider's documented diagnosis. Query instead of inferring.
  • Dropping the Z68 code when the BMI is known. The “use additional code” note under E66 expects the BMI code whenever it's documented — and the pair is what stands up in an audit.
  • Reporting a Z68 code alone or first. BMI codes are secondary-only and need an associated, reportable diagnosis documented by the provider.
  • Using adult BMI codes for patients aged 2–19. Pediatric patients take the percentile-based Z68.5- codes, not the numeric adult ranges — and the adult codes don't start until age 20.
  • Missing the pregnancy switch. Obesity complicating pregnancy is led by O99.21- with E66 as the additional code — and no BMI code at all during pregnancy.

A worked example

Scenario. A 46-year-old is seen for weight management. The provider documents morbid obesity due to excess calories; the dietitian's note records a BMI of 43.2.
CodesE66.01Z68.41

The provider documented the diagnosis, so E66.01 (morbid obesity due to excess calories) is supported. The BMI comes from the dietitian — which is fine, because BMI is one of the guideline exceptions that may be coded from a non-provider clinician's documentation. A value of 43.2 falls in the 40.0–44.9 band, so Z68.41 is added as the secondary code, satisfying the “use additional code” note under E66.

What the note needs to document

  • The provider's diagnosis term — overweight, obesity, morbid (severe) obesity, or a class — in the provider's own documentation
  • The BMI value (any clinician may record it) for the Z68 code
  • The patient's age group — adult value codes at 20+, pediatric percentile codes at 2–19
  • Whether the patient is pregnant — O99.21- leads, and BMI codes drop out
  • Any cause or complication — a causative drug (E66.1) or alveolar hypoventilation (E66.2)

Frequently asked questions

When the note documents only “obesity,” the code is E66.9 (obesity, unspecified). More specific documentation moves you to E66.01 (morbid obesity due to excess calories), E66.09, or the class codes E66.811E66.813. Whichever E66 code applies, add the BMI code (Z68.-) when the BMI is documented.

E66.01, morbid (severe) obesity due to excess calories. If the provider documents alveolar hypoventilation with it (obesity hypoventilation syndrome or Pickwickian syndrome), use E66.2 instead — the two are never coded together. Add the matching BMI code when the value is documented.

When the BMI is known, yes — category E66 carries a “use additional code” note for the body mass index (Z68.-). The BMI value may be taken from any clinician's documentation (a dietitian's or nurse's note is fine), and the Z68 code is always reported as a secondary diagnosis.

No. The obesity or overweight diagnosis must be documented by the patient's provider — a BMI number in the vitals is not a diagnosis. BMI codes are also only assigned when there's an associated, reportable diagnosis documented by the provider. If the BMI suggests more than the note says, query the provider.

Obesity complicating pregnancy is coded from O99.21-, selected by trimester (O99.211 first, O99.212 second, O99.213 third), sequenced first per the code-first note under E66, with the E66 code added to identify the type of obesity. Do not assign BMI (Z68) codes during pregnancy.

E66.811 (class 1), E66.812 (class 2), and E66.813 (class 3), added to ICD-10-CM effective October 1, 2024. They let you code the clinical class the provider documents — code the documented class rather than deriving one from the BMI value yourself.

Code descriptions are from the CMS FY2026 ICD-10-CM release (public domain); coding conventions reference the ICD-10-CM Official Guidelines for Coding and Reporting. Educational reference only, provided as-is with no guarantee of accuracy or outcome — not a substitute for professional coding judgment. Always verify a code's active status for the date of service.
Last reviewed: July 11, 2026