Child Growth Lab

Pediatric growth calculators based on CDC and WHO growth standards.

Methodology

CDC 2000 LMS charts (ages 2–20)

Height, weight, and BMI tools use published L, M, and S parameters from CDC percentile data files (statage, wtage, bmiagerev). Original CSVs are preserved under data/cdc/2000/original/ with SHA-256 checksums in provenance.json.

z-score: if L ≠ 0, Z = ((X/M)^L − 1)/(L·S); if L = 0, Z = ln(X/M)/S. Percentile = Φ(Z)×100.

Age indexing: calendar dates determine eligibility (from the second birthday through the 20th birthday). For a completed calendar month, the app selects the CDC row labeled at that month’s half-month point (for example, 24.5 represents ages 24.0–24.99 months). Endpoint rows are used when no corresponding half-month row exists. L, M, and S are never interpolated.

Kids BMI

BMI = kg/m², then BMI-for-age LMS. Reference categories: <5th underweight; 5th–<85th healthy weight; 85th–<95th overweight; ≥95th obesity (CDC child/teen cutoffs). Extended BMI-for-age (2022) is not used in v1.

Corrected age

Corrected age = chronological age − (40 − GA at birth) weeks. Formula version: corrected-age-v1.

Mid-parental height

Tanner formulas in centimeters, reported as a point estimate only. Formula version: tanner-mid-parental-v1. This is not an individual adult-height prediction and Khamis–Roche is not implemented.

Rounding (display)

  • z-score: 2 decimal places
  • percentile: 1 decimal place (display <1 or >99 at extremes)
  • BMI: 1 decimal place

Not implemented

WHO Child Growth Standards; infant 0–2 percentile tools; head circumference; Fenton/Olsen; Khamis–Roche. See Licensing status documentation in the repository.