Calculator: WHO anthropometric Z-scores 0-19y

This page is running a macro package for R hosted on a Shiny server. For weight, length, and body mass index, it calculates Z-scores and percentiles by pooling the WHO standard (0-5y) and reference (5-19y) data. For more detailed output (e.g. biologically implausible value flags, head circumference, and skin fold thickness), you should use the original, age-specific WHO macros igrowup (0-5y) and who2007 (5-19y).

The sample.csv file shows the expected variable names and formats. Column order is immaterial, but names are case-sensitive. For assistance, please consult our step-by-step guide: Creating .csv spreadsheets . The identifier variable id shoud be unique for each observation. The LMS algorithm is based on exact age in months (agemons). The variable sex may be coded as M/F or m/f or 1/2 (1 = male); height is in cm, and weight is in kg. For 0-23 months, height refers to recumbent length (standing height + 0.7cm). For children ≥ 24 months, height refers to standing height (recumbent length - 0.7cm). Weight and BMI Z scores outside of the range [-3, 3] are calculated in units of SD23, the distance between Z=2 and Z=3 (or in the lower tail of the distribution, Z = -2 and Z = -3).


A spreadsheet with comma separated variables (.csv) may be created using the 'Save As' .csv option in Excel and uploaded using the sidebar on the left. Once results are displayed, download them by clicking the <Download> button, which will typically save them to your Download folder with 'out_' prepended to the original dataset name.


Download Results



As explained in our general FAQ, European computers sometimes use a semicolon to separate columns even though you asked for comma separated variables, which is easy to diagnose by opening your .csv file in a text editor, such as NotePad or TextEdit. If you encounter this problem, there is now a selector in the sidebar for comma, semicolon, or tab delimiters. Please refresh your browser page before changing this selection.