Determining a "desired" or "ideal" body weight is a complex topic with various methodologies. It's important to remember that these calculations provide estimates and should not replace professional medical advice. Factors like body composition (muscle vs. fat), bone density, frame size, and individual health conditions significantly influence what is a healthy weight for any given person.
Common Formulas for Ideal Body Weight
Several formulas have been developed over the years to estimate an ideal body weight. Two of the most frequently cited are the Devine formula and the Hamwi formula. We will use a simplified version of these formulas, adapted for common units.
1. Devine Formula (Adapted)
This formula, developed by Dr. Willard Devine, is often used for drug dosage calculations but is also a common reference for ideal body weight.
For Men: 50 kg + 2.3 kg per inch over 5 feet
For Women: 45.5 kg + 2.3 kg per inch over 5 feet
This calculator adapts this by converting your entered height into inches and then calculating the difference from 5 feet (60 inches).
2. Hamwi Formula (Adapted)
Developed by Dr. George Hamwi, this formula is another commonly used method.
For Men: 48 kg + 2.7 kg per inch over 5 feet
For Women: 45.5 kg + 2.2 kg per inch over 5 feet
Similar to the Devine formula, this calculator adjusts based on your height relative to 5 feet.
How This Calculator Works:
This calculator uses a hybrid approach, providing a range based on both the Devine and Hamwi formulas for men and women.
Height Conversion: Your height is converted into a consistent unit (inches) regardless of the input unit (cm, m, in, ft).
Base Weight: A starting weight is established based on gender (50 kg for men, 45.5 kg for women for Devine; 48 kg for men, 45.5 kg for women for Hamwi).
Height Adjustment: The weight is adjusted based on how much your height exceeds 5 feet (60 inches), using the per-inch multipliers specific to each formula and gender.
Result Range: The calculator displays a lower and upper bound for your desired body weight, offering a more nuanced perspective than a single number.
Important Considerations:
Body Composition: Muscle weighs more than fat by volume. A very muscular person might weigh more than an "ideal" formula suggests but still be very healthy.
Frame Size: Formulas don't account for whether you have a small, medium, or large bone structure.
Activity Level: An active individual may have different optimal weight ranges than a sedentary one.
Health Goals: Your desired weight should align with overall health and wellness goals, not just a number on the scale.
Professional Guidance: Always consult with a doctor or registered dietitian to determine a healthy and appropriate weight range for your unique body and health status.
This calculator is intended for informational purposes only and is not a substitute for professional medical advice.
function convertToInches(value, unit) {
if (unit === "cm") {
return value / 2.54;
} else if (unit === "m") {
return value / 0.0254;
} else if (unit === "ft") {
return value * 12;
} else { // inches
return value;
}
}
function calculateDesiredWeight() {
var heightInput = document.getElementById("height");
var heightUnitSelect = document.getElementById("heightUnit");
var genderSelect = document.getElementById("gender");
var resultDiv = document.getElementById("result");
var height = parseFloat(heightInput.value);
var heightUnit = heightUnitSelect.value;
var gender = genderSelect.value;
if (isNaN(height) || height 0 ? feetOverFive * devineMultiplier : 0);
hamwiWeightKg = hamwiBaseMale + (feetOverFive > 0 ? feetOverFive * hamwiMultiplier : 0);
} else { // female
devineWeightKg = devineBaseFemale + (feetOverFive > 0 ? feetOverFive * devineMultiplier : 0);
hamwiWeightKg = hamwiBaseFemale + (feetOverFive > 0 ? feetOverFive * hamwiMultiplierFemale : 0);
}
// Determine a reasonable range based on both formulas
desiredWeightKgLow = Math.min(devineWeightKg, hamwiWeightKg);
desiredWeightKgHigh = Math.max(devineWeightKg, hamwiWeightKg);
// Convert to lbs for common understanding
var desiredWeightLbLow = desiredWeightKgLow * 2.20462;
var desiredWeightLbHigh = desiredWeightKgHigh * 2.20462;
resultDiv.innerHTML = "Your Estimated Desired Weight Range:" +
"" + desiredWeightKgLow.toFixed(1) + " kg – " + desiredWeightKgHigh.toFixed(1) + " kg" +
"(" + desiredWeightLbLow.toFixed(1) + " lbs – " + desiredWeightLbHigh.toFixed(1) + " lbs)";
}