Free BMI calculator in metric or imperial units. Get your body mass index, WHO weight category, and the healthy weight range for your height — instantly.
Normal weight
Healthy weight for your height: 53.5–72.2 kg
Body Mass Index (BMI) is your weight divided by your height squared. It's a quick, free way to check whether your weight sits in a healthy range for your height — no special equipment, just two numbers.
Enter your height and weight above and the result updates instantly, with the category it falls into and the healthy weight range for your height.
BMI is a screening tool, not a diagnosis. It's meant for adults 20+, and it doesn't apply to children, pregnancy, or athletes (see Limitations).
With pounds and inches, multiply by 703:
That's the whole calculation — divide weight by height-squared in consistent units. The 703 factor just rescales imperial units to the metric result.
Going deeper. BMI Prime is your BMI ÷ 25 — above 1.0 means above the healthy ceiling. The Ponderal Index (weight ÷ height³) behaves better at very short or tall heights, where BMI drifts.
| Category | BMI |
|---|---|
| Underweight | below 18.5 |
| Normal | 18.5 – 24.9 |
| Overweight | 25 – 29.9 |
| Obese | 30 and above |
Obesity is sometimes split into Class I (30–34.9), II (35–39.9), and III (≥40). For people of South/East Asian descent, risk rises earlier — many guidelines treat BMI ≥ 23 as overweight.
BMI is a ratio of weight to height. It never sees what the weight is made of, so it can mislead:
Better companions: waist circumference, waist-to-hip ratio, and body-fat measures like calipers, bioimpedance, or a DEXA scan.
What's a "good" BMI? For most adults, 18.5–24.9.
Is BMI accurate? As a population screen, yes. For one person — especially a muscular one — pair it with a waist or body-fat measure.
Can I use it for kids? No. Children use age- and sex-based percentiles; ask a pediatrician.
Does BMI differ for men and women? Same formula and cutoffs; body composition differs, which is a limitation, not a separate formula.
Compute BMI (metric) in your language of choice:
1=ROUND(weight_kg / (height_cm / 100)^2, 1)
21def bmi(kg, cm): return round(kg / (cm / 100) ** 2, 1)
21const bmi = (kg, cm) => +(kg / (cm / 100) ** 2).toFixed(1);
21double bmi(double kg, double cm) { return Math.round(kg / Math.pow(cm / 100, 2) * 10) / 10.0; }
21double Bmi(double kg, double cm) => Math.Round(kg / Math.Pow(cm / 100, 2), 1);
21double bmi(double kg, double cm) { return std::round(kg / std::pow(cm / 100, 2) * 10) / 10; }
21func bmi(kg, cm float64) float64 { return math.Round(kg/math.Pow(cm/100, 2)*10) / 10 }
21fn bmi(kg: f64, cm: f64) -> f64 { (kg / (cm / 100.0).powi(2) * 10.0).round() / 10.0 }
21function bmi($kg, $cm) { return round($kg / ($cm / 100) ** 2, 1); }
21def bmi(kg, cm) = (kg / (cm / 100.0)**2).round(1)
21bmi <- function(kg, cm) round(kg / (cm / 100)^2, 1)
2Belgian polymath Adolphe Quetelet devised the weight-over-height-squared ratio in the 1830s (the "Quetelet Index"). Physiologist Ancel Keys renamed it Body Mass Index in 1972 after showing it tracked body fat better than rival formulas. It's been the default population weight screen ever since.
Discover more tools that might be useful for your workflow