Skip to main content
Exact Dx synthetic data · demonstration
Extended criteria (experimental). This is the broader ten-condition engine, kept as a secondary area. It shows ICD-10-CM codes and illustrative grouping effects for CDI staff. The primary surface is Before you sign (kidney, measurement only). All extended pages.

← All rules

Chronic kidney disease stage (eGFR, CKD-EPI 2021)

Rule ckd version 2026.11-1 · condition: Chronic kidney disease

Published source

KDIGO 2024 Clinical Practice Guideline for the Evaluation and Management of Chronic Kidney Disease (2024). Chapter 1, Table 1 (definition: abnormality for a minimum of 3 months) and Table 2 (GFR categories). https://kdigo.org/wp-content/uploads/2024/03/KDIGO-2024-CKD-Guideline.pdf · public page checked 2026-11-14

G1 >=90, G2 60-89, G3a 45-59, G3b 30-44, G4 15-29, G5 <15. G1 and G2 are CKD only with markers of kidney damage.

Also: National Kidney Foundation: CKD-EPI Creatinine Equation (2021) (2021). Race-free equation: 142 x min(Scr/k,1)^a x max(Scr/k,1)^-1.200 x 0.9938^age x 1.012 [female]; k 0.7/0.9; a -0.241/-0.302. link

Inputs

egfr_n
Number of pre-admission eGFR values within 2 years (inpatient values during acute illness are not used)
egfr_span_days
Days between the earliest and latest pre-admission eGFR values
egfr_early
Earliest pre-admission eGFR (mL/min/1.73 m2, CKD-EPI 2021)
egfr_late
Latest pre-admission eGFR (mL/min/1.73 m2, CKD-EPI 2021)

Thresholds

t.chronic_days
90
t.g2
60
t.g3a
45
t.g3b
30
t.g4
15

Derived values

Evaluated in order
NameExpression
chronicegfr_n >= 2 and egfr_span_days >= t.chronic_days
staging_egfrmax(egfr_early, egfr_late)
both_below_60egfr_early < t.g2 and egfr_late < t.g2
categorycase(staging_egfr >= t.g2, 'G1-G2', staging_egfr >= t.g3a, 'G3a', staging_egfr >= t.g3b, 'G3b', staging_egfr >= t.g4, 'G4', 'G5')

Outcomes

First true outcome wins; an unknown input makes an outcome unknown
OutcomeWhenStatusSupports
duration_not_shown
Fewer than two pre-admission eGFR values at least 90 days apart
not chronicinsufficient —
straddles_60
Pre-admission eGFR values fall on both sides of 60
not both_below_60 and min(egfr_early, egfr_late) < t.g2judgement —
g1_g2
eGFR 60 or above; CKD G1-G2 requires markers of kidney damage, which are not assessed here
staging_egfr >= t.g2judgement —
g3a
Two eGFR values >=90 days apart, both below 60; staging value {staging_egfr} (G3a)
category == 'G3a'supported N18.31 Chronic kidney disease stage 3a
g3b
Two eGFR values >=90 days apart, both below 60; staging value {staging_egfr} (G3b)
category == 'G3b'supported N18.32 Chronic kidney disease stage 3b
g4
Two eGFR values >=90 days apart; staging value {staging_egfr} (G4)
category == 'G4'supported N18.4 Chronic kidney disease stage 4
g5
Two eGFR values >=90 days apart; staging value {staging_egfr} (G5)
category == 'G5'supported N18.5 Chronic kidney disease stage 5
Dialysis dependence (end-stage renal disease, N18.6) is a clinical statement the rule does not infer.

ICD-10-CM specificity ladder (FY2026 CC/MCC status as a secondary diagnosis)

Query topic: chronic kidney documentation · prompts for an undocumented diagnosis: yes

Where clinical judgement is required

Coding notes