Ideal Body Weight (IBW) is a calculation used by medical professionals to estimate a healthy weight based on an individual's height and gender. While it doesn't account for muscle mass or body fat percentage, it provides a useful baseline for clinical dosages and general health goals.
How is Ideal Body Weight Calculated?
There are several popular formulas used globally. Most are based on a "base" weight for the first 5 feet (60 inches) of height, adding a specific weight for every inch thereafter.
Devine Formula: The most commonly used formula in clinical settings.
Robinson Formula: Often considered more accurate for women.
Miller Formula: Generally provides lower estimates than the Devine formula.
Hamwi Formula: Historically used in many nutrition assessments.
Calculated Examples
To understand how these numbers fluctuate, let's look at two common height profiles:
Example 1: Male, 178 cm (approx. 5'10") Devine IBW: ~72.6 kg (160 lbs)
Healthy BMI Range: 58.6 kg to 79.2 kg
Example 2: Female, 162 cm (approx. 5'4″) Devine IBW: ~50.1 kg (110.5 lbs)
Healthy BMI Range: 48.6 kg to 65.6 kg
Why Does IBW Matter?
In healthcare, IBW is critical for determining appropriate drug dosages, especially for medications that do not distribute into body fat. It is also used to set realistic weight loss goals and identify patients at risk for malnutrition or obesity-related complications.
Note: This calculator is for educational purposes only. Always consult with a healthcare provider before making significant changes to your diet or exercise routine.
function calculateIBW() {
var gender = document.getElementById("gender").value;
var heightCm = parseFloat(document.getElementById("height_cm").value);
var resultsArea = document.getElementById("results_area");
if (isNaN(heightCm) || heightCm <= 0) {
alert("Please enter a valid height.");
return;
}
// Convert cm to inches
var heightInches = heightCm / 2.54;
var inchesOver60 = heightInches – 60;
// If person is shorter than 5 feet, formulas technically aren't designed for it,
// but we can treat inchesOver60 as 0 or use the subtraction logic.
// For this calculator, we allow negative inchesOver60 for consistent math.
var devine, robinson, miller, hamwi;
if (gender === "male") {
devine = 50 + (2.3 * inchesOver60);
robinson = 52 + (1.9 * inchesOver60);
miller = 56.2 + (1.41 * inchesOver60);
hamwi = 48 + (2.7 * inchesOver60);
} else {
devine = 45.5 + (2.3 * inchesOver60);
robinson = 49 + (1.7 * inchesOver60);
miller = 53.1 + (1.36 * inchesOver60);
hamwi = 45.5 + (2.2 * inchesOver60);
}
// BMI Range calculation (BMI = kg / m^2)
var heightMeters = heightCm / 100;
var bmiMin = 18.5 * (heightMeters * heightMeters);
var bmiMax = 25.0 * (heightMeters * heightMeters);
// Display values
document.getElementById("devine_res").innerHTML = devine.toFixed(1) + " kg (" + (devine * 2.20462).toFixed(1) + " lbs)";
document.getElementById("robinson_res").innerHTML = robinson.toFixed(1) + " kg (" + (robinson * 2.20462).toFixed(1) + " lbs)";
document.getElementById("miller_res").innerHTML = miller.toFixed(1) + " kg (" + (miller * 2.20462).toFixed(1) + " lbs)";
document.getElementById("hamwi_res").innerHTML = hamwi.toFixed(1) + " kg (" + (hamwi * 2.20462).toFixed(1) + " lbs)";
document.getElementById("bmi_range_res").innerHTML = bmiMin.toFixed(1) + " – " + bmiMax.toFixed(1) + " kg";
resultsArea.style.display = "block";
}