If you’re searching for information on diagnosing and coding anemia, you’re likely a coder, biller, or clinician trying to match the right ICD-10 code to the right clinical scenario. Here’s the short answer: anemia coding hinges on specificity. The default code D64.9 (anemia, unspecified) is technically valid, but it’s a red flag for auditors and often triggers claim denials. The more precisely you can document the type, cause, and severity of anemia, the more accurate — and reimbursable — your coding becomes.
This guide walks through the clinical definitions, diagnostic workup, and exact ICD-10-CM codes for every major anemia type. Whether you’re a hospitalist documenting a discharge summary or a coding specialist querying a provider, this is your reference.
What Counts as Anemia? Clinical Thresholds
The World Health Organization (WHO) defines anemia by hemoglobin concentration:
- Adult men: Hemoglobin < 13.0 g/dL
- Adult women (non-pregnant): Hemoglobin < 12.0 g/dL
- Pregnant women: Hemoglobin < 11.0 g/dL
- Children (6–59 months): Hemoglobin < 11.0 g/dL
Roughly 1.8 billion people worldwide have anemia, making it the most common blood disorder encountered in primary care and hospital medicine. But “anemia” alone doesn’t tell you much. The coding — and the treatment — depends entirely on the underlying cause.
ICD-10 Codes for Anemia: Quick Reference Table
This table covers the most commonly used ICD-10-CM codes for diagnosing and coding anemia in clinical practice:
| Anemia Type | ICD-10-CM Code | Key Diagnostic Clues |
|---|---|---|
| Iron deficiency anemia, unspecified | D50.9 | Low ferritin (<30 ng/mL), low serum iron, high TIBC |
| Iron deficiency anemia secondary to blood loss (chronic) | D50.0 | Documented GI bleed, heavy menses, post-surgical |
| Vitamin B12 deficiency anemia | D51.9 | Macrocytic (MCV >100 fL), low B12, hypersegmented neutrophils |
| Folate deficiency anemia | D52.9 | Macrocytic, low folate, normal B12 |
| Anemia of chronic disease (anemia in chronic kidney disease) | D63.1 | Low EPO, GFR <60, normocytic |
| Anemia in other chronic diseases | D63.8 | Associated with cancer, rheumatoid arthritis, HIV, etc. |
| Hereditary spherocytosis | D58.0 | Elevated reticulocytes, positive osmotic fragility |
| Sickle-cell anemia without crisis | D57.1 | Hb SS confirmed, no acute vaso-occlusive event |
| Aplastic anemia, unspecified | D61.9 | Pancytopenia, hypocellular bone marrow |
| Anemia, unspecified | D64.9 | Use only when cause is genuinely undetermined |
Why Specificity Matters When Coding Anemia
Using D64.9 as a catch-all is one of the most common coding mistakes in inpatient and outpatient medicine. Medicare auditors and commercial payers increasingly reject claims with unspecified codes when the clinical documentation supports a more precise diagnosis.
For example, if a patient has a ferritin of 8 ng/mL and a documented history of menorrhagia, coding D64.9 instead of D50.0 (iron deficiency anemia secondary to blood loss) misrepresents the clinical picture and may reduce reimbursement — particularly for IV iron infusion claims, which require a specific anemia diagnosis to justify medical necessity.
Additionally, anemia of chronic disease requires dual coding. You code the underlying condition first (e.g., C80.1 for malignant neoplasm) and then D63.8 as a secondary code. The anemia code in this category cannot be sequenced as the principal diagnosis.
The Diagnostic Workup That Drives Accurate Coding
Accurate coding starts with accurate diagnosis. Here’s the standard workup:
First-Line Labs (Order for Every Patient)
- Complete blood count (CBC) with differential — establishes hemoglobin, hematocrit, MCV, RDW
- Reticulocyte count — distinguishes underproduction from destruction/blood loss
- Peripheral blood smear — identifies morphologic clues (spherocytes, schistocytes, sickle cells)
Second-Line Labs (Based on MCV)
- Microcytic (MCV <80 fL): Ferritin, serum iron, TIBC, hemoglobin electrophoresis
- Normocytic (MCV 80–100 fL): Reticulocyte index, BUN/creatinine, CRP/ESR, LDH, haptoglobin
- Macrocytic (MCV >100 fL): Vitamin B12, folate, TSH, reticulocyte count, liver function tests
The mean corpuscular volume (MCV) is the single most useful value for narrowing the differential. A ferritin below 30 ng/mL is essentially diagnostic for iron deficiency, though in the setting of concurrent inflammation, a ferritin up to 100 ng/mL can still reflect true iron deficiency — something that should be documented to support the code selection.
Common Clinical Scenarios and Correct Codes
Scenario 1: Post-Menopausal Woman With Fatigue
Hgb 9.2 g/dL, MCV 72 fL, ferritin 6 ng/mL. Colonoscopy reveals a cecal mass. Code the anemia as D50.0 (iron deficiency anemia secondary to chronic blood loss) with the neoplasm coded separately. Do not use D63.8 here — the anemia mechanism is blood loss, not cytokine-mediated suppression.
Scenario 2: CKD Stage 4 Patient on Dialysis
Hgb 8.8 g/dL, MCV 88 fL, ferritin 350 ng/mL, low EPO level. Code N18.4 (CKD stage 4) as principal, with D63.1 (anemia in CKD) as secondary. This pairing justifies erythropoiesis-stimulating agent (ESA) therapy.
Scenario 3: Young Vegetarian With Macrocytic Anemia
Hgb 10.5 g/dL, MCV 108 fL, B12 of 95 pg/mL (low). Code D51.3 (other dietary vitamin B12 deficiency anemia). Folate is normal, ruling out D52.x codes.
Key Takeaways for Diagnosing and Coding Anemia
- Avoid D64.9 whenever possible. If the chart has lab values pointing to a cause, query the provider for a specific diagnosis.
- MCV drives the differential. Microcytic, normocytic, and macrocytic anemias have distinct coding pathways.
- Anemia of chronic disease requires dual coding — underlying condition first, anemia second.
- Document the mechanism, not just the lab value. “Anemia due to chronic blood loss from GI source” supports D50.0 far better than “anemia, low iron.”
- Ferritin interpretation depends on inflammation status. Note this in the chart to support coding decisions.
Frequently Asked Questions
What is the ICD-10 code for anemia not otherwise specified?
D64.9 is the ICD-10-CM code for anemia, unspecified. However, payers increasingly require specificity. If any lab data or clinical context suggests a cause, the provider should document it so a more precise code can be assigned.
Can you code anemia and iron deficiency separately?
No — if the anemia is caused by iron deficiency, you code D50.x, which captures both conditions. Adding a separate code for “iron deficiency” without anemia (E61.1) alongside D50.9 is redundant and can cause claim issues.
How do you code anemia when the patient has multiple possible causes?
Code the most clinically significant or best-supported cause as the primary anemia diagnosis. If a patient truly has two concurrent types (e.g., iron deficiency AND B12 deficiency), both can be coded — but the documentation must support each one independently with lab evidence.
When should a coder query the provider about anemia?
Query when the CBC shows hemoglobin below the WHO thresholds but the discharge summary says nothing about anemia. Also query when D64.9 is documented but the chart contains ferritin, B12, or folate results that point to a specific type. A well-crafted query can shift a claim from a nonspecific to a specific code, improving data quality and reimbursement.
Does acute blood loss anemia code differently than chronic?
Yes. Acute blood loss anemia is coded as D62 and applies to situations like trauma, surgery, or acute GI hemorrhage. Chronic blood loss anemia from ongoing sources (heavy periods, slow GI bleeds) falls under D50.0. The distinction matters clinically and financially — D62 can significantly impact DRG assignment in the inpatient setting.


