{
  "id": "height-percentile",
  "version": "c45a2a1d7841",
  "status": "published",
  "name": "Height Percentile Calculator",
  "question": "What is my child’s height percentile?",
  "summary": "Finds a child’s height-for-age (or length-for-age) percentile and z-score from birth to 20 years, on the WHO growth standards under 24 months and the CDC growth charts from 2 years.",
  "category": "health",
  "subcategory": "body",
  "url": "https://www.acalculator.org/health/height-percentile-calculator",
  "markdown": "https://www.acalculator.org/health/height-percentile-calculator.md",
  "kind": "function",
  "method": "z = ((height ÷ M)^L − 1) ÷ (L × S), height in cm; percentile = Φ(z) × 100, with L, M and S for the sex and age from the WHO length table under 24 months and the CDC stature table from 24 months, read on a straight line between table ages.",
  "assumptions": [
    "Under 24 months the page uses the WHO 2006 length-for-age standard (measured lying down); from 24 months to 20 years, the CDC 2000 stature-for-age chart (measured standing), as the CDC advises for US children.",
    "Age in months is 12 × years + months, or the days from birth to the measurement ÷ 30.4375.",
    "The percentile is rounded half up to one decimal place and shown between 0.1 and 99.9.",
    "A percentile compares a child with a reference group. It is not a diagnosis; a doctor looks at growth over time."
  ],
  "inputs": {
    "$schema": "https://json-schema.org/draft/2020-12/schema",
    "type": "object",
    "properties": {
      "sex": {
        "title": "Sex",
        "description": "The child’s sex. Boys and girls have separate growth charts.",
        "type": "string",
        "enum": [
          "male",
          "female"
        ]
      },
      "from": {
        "title": "Based on",
        "description": "Enter the age in years and months, or the birth date and the date of the measurement.",
        "type": "string",
        "enum": [
          "age",
          "dates"
        ]
      },
      "years": {
        "title": "Years",
        "description": "The age in whole years.",
        "type": "integer",
        "minimum": 0,
        "maximum": 20
      },
      "months": {
        "title": "Months",
        "description": "Months past the whole years, 0 to under 12. Decimals are allowed: 2 weeks is about 0.5.",
        "type": "number",
        "minimum": 0,
        "exclusiveMaximum": 12
      },
      "born": {
        "title": "Birth date",
        "description": "The child’s date of birth.",
        "type": "string",
        "format": "date"
      },
      "on": {
        "title": "Measured on",
        "description": "The date of the measurement. Today, unless you change it.",
        "type": "string",
        "format": "date"
      },
      "height": {
        "title": "Height",
        "description": "The child’s height without shoes; under 2 years, the length measured lying down.",
        "type": [
          "number",
          "string"
        ],
        "x-quantity": "length",
        "minimum": 0.1,
        "maximum": 2.5
      }
    }
  },
  "outputs": {
    "percentile": {
      "label": "Height percentile",
      "description": "The share of children of the same sex and age who are shorter, rounded to one decimal place and shown between 0.1 and 99.9.",
      "format": "number"
    },
    "z": {
      "label": "Z-score",
      "description": "How many standard deviations the height is above (+) or below (−) the median for the age.",
      "format": "number"
    },
    "median": {
      "label": "Median height at this age",
      "description": "The 50th percentile height for the sex and age.",
      "format": "quantity",
      "unit": "in"
    },
    "low": {
      "label": "5th percentile height",
      "description": "The height at the 5th percentile for the sex and age.",
      "format": "quantity",
      "unit": "in"
    },
    "high": {
      "label": "95th percentile height",
      "description": "The height at the 95th percentile for the sex and age.",
      "format": "quantity",
      "unit": "in"
    },
    "range": {
      "label": "Screening range",
      "description": "Where the percentile falls against the screening cut-offs: 2.3rd and 97.7th on the WHO charts, 5th and 95th on the CDC charts.",
      "format": "text"
    },
    "age": {
      "label": "Age",
      "description": "The child’s age in years and months.",
      "format": "text"
    },
    "chart": {
      "label": "Growth chart",
      "description": "The growth chart used for this age.",
      "format": "text"
    }
  },
  "defaultAnswer": {
    "inputs": {
      "sex": "male",
      "from": "age",
      "years": 4,
      "months": 0,
      "born": "2022-09-30",
      "on": "2026-09-30",
      "height": 1.0287
    },
    "outputs": {
      "percentile": 56.1,
      "z": 0.15294820596703812,
      "median": 1.0222388965,
      "low": 0.9532945770720349,
      "high": 1.0921604074160394,
      "range": "Between the 5th and 95th percentiles",
      "age": "4 years",
      "chart": "CDC stature-for-age (2 to 20 years)"
    },
    "text": "At 4 years, a height of 40.5 in is at percentile 56.1 on the CDC stature-for-age (2 to 20 years) chart."
  },
  "examples": [
    {
      "given": {
        "sex": "female",
        "from": "age",
        "years": 1,
        "months": 0,
        "height": 0.791649637
      },
      "expect": {
        "percentile": 97.7,
        "z": 1.9999999999999991,
        "median": 0.74015,
        "low": 0.6977953176469329,
        "high": 0.7825046823530671,
        "range": "Between the 2.3rd and 97.7th percentiles",
        "chart": "WHO length-for-age (birth to 24 months)"
      },
      "source": "WHO length-for-age, girls, month 12 (CDC copy of the WHO table): L 1, M 74.015, S 0.03479; its 97.7th percentile column is 79.1649637 cm (z = 2); Python 3 cross-check in docs/progress/WP-54.md"
    },
    {
      "given": {
        "sex": "male",
        "from": "age",
        "years": 12,
        "months": 6.5,
        "height": 1.475268957
      },
      "expect": {
        "percentile": 25,
        "z": -0.6744897520148183,
        "median": 1.526623878,
        "low": 1.4028313462016961,
        "high": 1.6553024972291792,
        "chart": "CDC stature-for-age (2 to 20 years)"
      },
      "source": "CDC statage.csv, boys, 150.5 months: L 0.531951655, M 152.6623878, S 0.050273285, P25 147.5268957 cm; z = Φ⁻¹(0.25) = −0.67449; Python 3 cross-check in docs/progress/WP-54.md"
    },
    {
      "given": {
        "sex": "female",
        "from": "age",
        "years": 12,
        "months": 0,
        "height": 1.524
      },
      "expect": {
        "percentile": 56.5,
        "z": 0.16426861917834207,
        "age": "12 years"
      },
      "source": "CDC statage.csv, girls, 144 months (between the 143.5 and 144.5 rows): a 5 ft (152.4 cm) girl; hand calculation in content.mdx"
    }
  ],
  "sources": [
    "Centers for Disease Control and Prevention, National Center for Health Statistics. CDC growth charts data files: stature-for-age, 2 to 20 years (statage.csv), with the LMS instructions. https://www.cdc.gov/growthcharts/cdc-data-files.htm",
    "Centers for Disease Control and Prevention. WHO growth charts data files: length-for-age, birth to 24 months (CDC copies of the WHO tables). https://www.cdc.gov/growthcharts/who-data-files.htm",
    "WHO Multicentre Growth Reference Study Group. WHO Child Growth Standards: length/height-for-age, weight-for-age, weight-for-length, weight-for-height and body mass index-for-age. Methods and development. Geneva: World Health Organization, 2006. https://www.who.int/publications/i/item/924154693X",
    "Kuczmarski RJ, Ogden CL, Guo SS, et al. 2000 CDC Growth Charts for the United States: methods and development. Vital Health Stat 11. 2002;(246):1-190. https://www.cdc.gov/nchs/data/series/sr_11/sr11_246.pdf",
    "Grummer-Strawn LM, Reinold C, Krebs NF. Use of World Health Organization and CDC growth charts for children aged 0-59 months in the United States. MMWR Recomm Rep. 2010;59(RR-9):1-15. https://www.cdc.gov/mmwr/preview/mmwrhtml/rr5909a1.htm"
  ],
  "related": [
    "weight-percentile",
    "growth-chart",
    "height"
  ],
  "changelog": []
}
