Four ICD-10 families cover the five IV iron drugs on this site: D50.0, D50.8 or D50.9 for plain iron-deficiency anemia (IDA); D63.1 for anemia in chronic kidney disease, always paired with an N18.x CKD stage code; D63.8 for anemia in another chronic disease, paired with the code for that disease; and E61.1 paired with an I50.x heart-failure code, which supports only Injectafer’s 2023-added heart-failure indication and nothing else on this page. Venofer’s label is CKD-specific, so D63.1 is its load-bearing code; Injectafer, Feraheme and Monoferric cover both general IDA and CKD; INFeD’s label is general IDA only. There is no national coverage determination for IV iron and no single national LCD — coverage runs payer by payer.
The code you need depends on which drug, which label indication, and which diagnosis the chart actually supports — not on “iron deficiency” as a single idea. Read the table by row, matching the drug being billed to its own labeled indications before picking a code family.
| Drug | HCPCS | Labeled indication(s) | ICD-10-CM code(s) |
|---|---|---|---|
| Venofer (iron sucrose) | J1756 | IDA in chronic kidney disease | D63.1 + N18.x |
| Injectafer (ferric carboxymaltose) | J1439 | IDA intolerant of/unresponsive to oral iron, or non-dialysis CKD; iron deficiency in heart failure (NYHA II/III) | D50.0/.8/.9 or D63.1 + N18.x; E61.1 + I50.x (heart failure only) |
| Feraheme (ferumoxytol) | Q0138 (non-ESRD) / Q0139 (ESRD) | IDA intolerant of/unresponsive to oral iron, or CKD | D50.0/.8/.9; D63.1 + N18.x |
| Monoferric (ferric derisomaltose) | J1437 | IDA intolerant of/unresponsive to oral iron, or non-hemodialysis dependent chronic kidney disease (NDD-CKD) | D50.0/.8/.9; D63.1 + N18.x (NDD-CKD stages) |
| INFeD (iron dextran) | J1750 | IDA where oral iron is unsatisfactory or impossible | D50.0/.8/.9 |
D50.0 is IDA secondary to (chronic) blood loss — menorrhagia, a GI bleed, a documented source. D50.8 is other iron-deficiency anemias, for a specified cause that does not fit D50.0. D50.9 is IDA, unspecified, for a documented IDA with no cause charted. The bare category code D50 is not billable on its own; one of the three child codes is required. This family is the correct choice whenever the chart supports iron-deficiency anemia without a CKD or heart-failure angle — INFeD’s entire labeled indication, and the default branch for Injectafer, Feraheme and Monoferric.
D63.1 (anemia in chronic kidney disease) is the load-bearing code for Venofer, whose label covers CKD-related IDA and nothing broader, and one of two paths for Injectafer, Feraheme and Monoferric. It is also never billed by itself: CKD anemia only means something once the stage of the kidney disease is on the claim too.
“For such conditions, the ICD-10-CM has a coding convention that requires the underlying condition be sequenced first, if applicable, followed by the manifestation. Wherever such a combination exists, there is a ‘use additional code’ note at the etiology code, and a ‘code first’ note at the manifestation code.” — Source §I.A.13, ICD-10-CM Official Guidelines for Coding and Reporting, FY 2026
The FY2026 and FY2027 Tabular Lists apply that convention to this exact pairing: D63.1 itself carries the instructional note “Code first underlying chronic kidney disease (CKD) (N18.-).” The sequence is fixed, not a payer’s diagnosis-pointer preference — the CKD stage code goes first on the claim, D63.1 second.
N18.1 through N18.5 cover CKD stages 1 through 5 by severity, and N18.3 (stage 3) is a category, not a billable code by itself — it requires a fifth character: N18.30 (stage 3 unspecified), N18.31 (stage 3a) or N18.32 (stage 3b). N18.6 is end-stage renal disease requiring chronic dialysis, and N18.9 is CKD of unspecified stage — use N18.9 only when the chart genuinely does not document a stage, not as a default.
D63.8 covers anemia in a chronic disease other than cancer or CKD — inflammatory bowel disease is the common example, paired with a K50.x (Crohn’s disease) or K51.x (ulcerative colitis) code for the underlying condition. The same pattern as D63.1 applies, and the sequence is just as fixed: the FY2026 Tabular List carries a “Code first underlying disease” note at D63.8, and D63.8 itself sits in an “in diseases classified elsewhere” category, which the Guidelines say is never permitted as the first-listed or principal diagnosis. The disease code driving the anemia (K50.x, K51.x, or whatever the chart documents) goes first on the claim; D63.8 goes second, describing the anemia.
Injectafer is the only drug on this page with a labeled indication that is not anemia at all. Its label states the indication as:
“iron deficiency in adult patients with heart failure and New York Heart Association class II/III to improve exercise capacity.” — Source: Injectafer (ferric carboxymaltose) FDA label, Indications and Usage
That indication is coded E61.1 (iron deficiency), not a D50 or D63 code, because the FDA-approved use treats iron deficiency itself as the target, with or without anemia present. E61.1 has to be paired with a billable I50.x code — I50.1, I50.20–I50.23, I50.30–I50.33, I50.40–I50.43, I50.810–I50.89, or I50.9 — naming the type of heart failure; the bare category codes I50.2, I50.3 and I50.4 are not billable and are a documented denial pattern on this exact claim. This pairing supports Injectafer alone: Venofer, Feraheme, Monoferric and INFeD carry no heart-failure indication on their labels, so E61.1 with I50.x does not belong on a claim for any of them. The heart-failure indication was approved June 2023.
“Iron deficiency without anemia” is the nuance that trips up this family: E61.1 by itself, with no heart-failure code, does not support Venofer, Feraheme, Monoferric or INFeD — those labels are anemia labels, and payers generally expect an anemia diagnosis (a D50 or D63 code) rather than E61.1 alone before they pay the claim. Documentation that supports whichever diagnosis is billed commonly includes a ferritin and transferrin saturation (TSAT) value from a recent visit, and, for the oral-iron-first labels, a note that oral iron was tried and failed or was not tolerated or was medically inappropriate — each label uses its own wording for that requirement, and a payer’s medical policy may ask for it explicitly or may not; treat it as what supports the diagnosis on the chart, not as a universal prerequisite this page can state for every payer.
CO-50 (“these are non-covered services because this is not deemed a medical necessity”) on an iron infusion claim almost always means the ICD-10 on the line is not one the payer’s policy recognizes for that drug — a D50.9 on a claim for a payer that requires the CKD pairing for that drug, or an I50 category code instead of a billable child code, or E61.1 alone where an anemia code was expected. The fix is matching the diagnosis actually documented to the drug’s own labeled indications in the table above, not appealing the denial with the same codes. There is no national coverage determination for IV iron and no single national LCD that binds every MAC, so the specific list of accepted codes is payer-specific: check the Medicare coverage pages for the drug being billed, or run the diagnosis through the app’s Coverage Check before the claim goes out.
D63.1, anemia in chronic kidney disease, paired with an N18.x stage code — Venofer’s label is specific to IDA in CKD, so a D50.x code without the CKD context does not match what the drug is FDA-approved to treat, even though some payers cover it off-label.
D50.0, D50.8 or D50.9 for plain iron-deficiency anemia, or D63.1 paired with an N18.x stage code for non-hemodialysis dependent chronic kidney disease (NDD-CKD). Monoferric’s label carries no heart-failure, pediatric or hemodialysis indication, so E61.1 and I50.x do not belong on a Monoferric claim.
Not on this site’s read of the labels. E61.1 (iron deficiency without stating anemia) matches Injectafer’s heart-failure indication specifically. Venofer, Feraheme, Monoferric and INFeD are labeled for iron-deficiency anemia, so their claims need a D50 or D63 anemia code rather than E61.1 alone.
CO-50 on this family usually means the specific ICD-10 on the line is not one the payer’s policy recognizes for that drug, not that the diagnosis is wrong on the chart. A bare I50.2/.3/.4, a D50.9 where the payer’s rule wants the CKD pairing, or E61.1 with no heart-failure code are the three patterns that produce it; matching the code to the drug’s labeled indication in the table above is the fix, not a new appeal with the same codes.
Quoted passages are reproduced from the cited federal publications; everything else is our reading of them. The methodology by which we resolve source disagreements is described in the Methodology.