BMI Calculator

BMI from height and weight, metric or imperial — the WHO class, BMI Prime, ponderal index, healthy weight range, and how much to gain or lose. No upload.

22.9
BMI
Normal
Category
0.91
BMI Prime
13.1
Ponderal index (kg/m³)

Healthy BMI range: 18.5 – 24.9 kg/m²

Healthy weight range: 56.7–76.3 kg

Your weight is already inside the healthy band.

BMI Prime is BMI ÷ 25; below 1 is under the upper limit of normal.

Adult BMI table

BMIClassification
< 16Severe thinness
16 – 17Moderate thinness
17 – 18.5Mild thinness
18.5 – 25Normal ← you
25 – 30Overweight
30 – 35Obese (class I)
35 – 40Obese (class II)
≥ 40Obese (class III)

Each band runs from its lower figure up to, but not including, the next one.

Children and teens, ages 2–19 (CDC percentile bands)

PercentileClassification
< 5Underweight
5 – 85Healthy weight
85 – 95Overweight
≥ 95Obesity

Percentiles come from the CDC BMI-for-age growth charts and depend on both sex and exact age, so a young reader’s BMI has to be read against the chart for boys or girls of that age rather than against the adult table above.

🔒 Calculated in your browser — nothing is uploaded. BMI is a general screening tool, not a medical diagnosis.

How BMI is calculated

Body Mass Index is your weight divided by the square of your height: BMI = kg ÷ m². Enter metric (kg, cm) or imperial (lb, with height as separate feet and inches boxes) and every figure updates as you type — there is no Calculate button. Age is asked for as well, anywhere from 2 to 120, because age decides which classification applies. An age outside that window is refused with a sentence rather than quietly clamped, and leaving one half of an imperial height empty is refused by name instead of being read as zero.

What the result shows

For an adult (20 and over) five figures appear at once: the BMI itself; the WHO class — one of eight, from severe, moderate and mild thinness through normal and overweight to the three obese classes, rather than the usual four; BMI Prime, which is BMI ÷ 25, so below 1 is under the upper limit of normal; the ponderal index, kg ÷ m³ instead of m², which moves less with height than BMI does; and the healthy weight range for your height, in whichever unit you typed. Under them the page says how much there is to gain to reach a BMI of 18.5, or to lose to reach 24.9 — or that your weight is already inside the band. A scale bar from 15 to 40 marks where you sit, with ticks at 18.5, 25 and 30; every number on it also appears in the text, so nothing is lost if you cannot see it. The optional Target BMI box (5 to 100) runs the formula backwards and names the weight that BMI would be at your height.

The tables

The adult table lists all eight bands and highlights your own row. Each band runs from its lower figure up to, but not including, the next one — so normal is 18.5 up to 25, while the healthy-range line above it is written 18.5 – 24.9, the same figures the healthy weight range is computed from. A second table lists the four CDC BMI-for-age percentile bands used for ages 2–19: under the 5th, 5th to 85th, 85th to 95th, and 95th and above. Both tables are on the page whether or not you have entered anything.

Ages 2 to 19

Below 20 the adult numbers do not apply. Enter such an age and the tool says so, computes the BMI anyway, and points you at the CDC BMI-for-age growth chart for boys or girls of the same age — which is what the Sex control selects. It does not work out the percentile itself: that needs the CDC growth-chart dataset, which this tool does not carry, so the figure has to be read off the chart for the exact age in months. Sex does not change an adult reading, because the adult bands are the same for both.

Sharing and starting over

Every field — units, sex, age, weight, both halves of an imperial height and the target BMI — is kept in the page URL, so Copy link hands over a link that reopens the same reading. Copy puts the result on the clipboard as text, and Clear puts every field back to its default.

What BMI does and doesn't tell you

BMI is a quick, widely used screening number, but it is not a measure of body fat or health on its own. Because it uses only height and weight, it can misclassify very muscular people as overweight and can miss low muscle mass in others. It is also not validated the same way for children, pregnant people or athletes. Treat it as one rough indicator and talk to a healthcare professional for a real assessment. Everything here is computed in your browser — the height, weight, age and sex you type are never uploaded.

Frequently asked questions

What is a healthy BMI range?

18.5 up to 25 is the normal band, and the healthy-range line reports it as 18.5 – 24.9 kg/m². The table on the page goes finer than the usual four categories: below 16 is severe thinness, 16–17 moderate thinness, 17–18.5 mild thinness, 18.5–25 normal, 25–30 overweight, 30–35 obese class I, 35–40 class II, and 40 and above class III. Each band runs from its lower figure up to, but not including, the next one.

Is BMI accurate for everyone?

No. BMI only uses height and weight, so it can over- or under-estimate body fat for very muscular people, older adults, athletes, children and pregnant people. Use it as a rough screen, not a diagnosis.

Is my height and weight sent anywhere?

No. The calculation runs entirely in your browser with JavaScript. Nothing you enter is uploaded, logged or stored.

What are BMI Prime and the ponderal index?

BMI Prime is your BMI divided by 25, the upper limit of the normal band — below 1 means you are under that limit, and 1.2 means 20% above it. The ponderal index is weight in kilograms divided by height in metres cubed (kg/m³) rather than squared, which makes it shift less with height than BMI does for very tall or very short people. Both are shown next to the BMI, and the ponderal index is shown for ages 2–19 as well.

Why does it ask for my age and sex?

Age decides which classification applies. From 20 upwards you get the adult WHO bands. From 2 to 19 the adult numbers do not apply, so the tool switches to the CDC BMI-for-age growth chart instead. Below 2 or above 120 BMI is not used at all, and that entry is refused rather than adjusted to fit. Sex picks the boys' or girls' chart named in that answer; it does not change an adult reading, because the adult bands are the same for both.

Does it calculate a child's BMI percentile?

No, and it says so on the page. For ages 2 to 19 it computes the BMI and tells you which CDC BMI-for-age chart to read it against — boys or girls, at the exact age in months — and lists what each band means: under the 5th percentile is underweight, 5th to 85th healthy weight, 85th to 95th overweight, 95th and above obesity. The percentile itself needs the CDC growth-chart dataset, which this tool does not carry, so it is not guessed at here.

How much weight do I need to lose or gain?

The result says it outright, in whichever unit you entered: how much to gain to reach a BMI of 18.5, or how much to lose to reach 24.9 — or a sentence saying your weight is already inside the healthy band. The healthy weight range for your height is shown right above it.

Can I work out the weight for a target BMI?

Yes. Put a number from 5 to 100 in the optional 'Target BMI' box and the tool inverts the formula for your height — at 175 cm, a target of 22 comes back as 67.4 kg. A target outside 5–100 is refused with a message instead of being used.

Can I enter my height in feet and inches?

Yes. Switching to imperial gives two separate boxes, 'Height (ft)' and 'Height (in)', with weight in pounds. Leaving either one empty is refused with a message naming the problem rather than being read as zero, so 5 ft with a blank inches box never quietly becomes 5 ft 0 in — put a 0 in for a whole number of feet.

Can I share the result or start over?

Every field — units, sex, age, weight, both halves of an imperial height and the target BMI — lives in the page URL, so 'Copy link' hands over a link that reopens the same reading. 'Copy' puts the result on the clipboard as text and 'Clear' puts every field back to its default. There is no Calculate button; the figures update as you type.