Enter your height and sex. Your ideal body weight by four medical formulas (Devine, Robinson, Miller and Hamwi), the weight range for a healthy BMI (18.5 to 25) and the weight at BMI 22 are calculated together and compared on one number line.
Table of Contents
-
What you can do on this page
-
What is this calculation used for?
-
How to Use
-
Formulas and graphs
-
Symbols and terms
-
Good to know before you start
-
How to calculate it in Excel
-
How to calculate it in Google Sheets
-
How to calculate it in Python
-
How to write it in LaTeX and other math languages (copy and paste)
-
How to have ChatGPT do the calculation
-
DataChef Features
-
Related Features
-
NumberChef Calculators List
What you can do on this page
- Enter your height (feet and inches) and sex, and get your ideal body weight from four formulas used in medicine - Devine, Robinson, Miller and Hamwi - so you can compare them
- The Devine formula, the one most widely used in US medicine, is shown first
- The weight range for a healthy BMI (18.5 to 25) and the weight at BMI 22, near the middle of that range, are shown too, and all the values appear on one number line
- A plain-language explanation of the formulas and copy-and-paste formulas for Excel, Google Sheets and Python are all on this page
What is this calculation used for?
The four formulas on this page were originally made to calculate drug doses. For drugs dosed in proportion to body weight, using actual weight can give too strong an effect in people with obesity, so for some antibiotics and other drugs, ideal body weight worked out from height (mainly with the Devine formula) is used as the basis for the dose.
The main reason these formulas exist is that "ideal body weight" is not just a dieting term; it is a practical tool that supports drug safety.
In lung-protective ventilation, the standard practice is to set the volume of each breath from the predicted body weight, worked out from height and sex, not from actual weight. The lungs do not grow when a person gains weight; their size depends mostly on height.
The predicted body weight formula (for men, \(50 + 0.91 \times (h_{cm} - 152.4)\) kg, where \(h_{cm}\) is height in centimeters) has almost the same shape as the Devine formula on this page, since 0.91 kg per cm is about 2.3 kg per inch. It is an example of "working out a guide weight from height" being used in life-and-death medical care.
Before deciding to "lose 10 pounds" with no basis, working out the weight range for a healthy BMI and the weight at BMI 22 for your height makes the goal more realistic. For example, for someone who is 5 ft 4 in tall, the weight at BMI 22 is \(22 \times 64^2 \div 703 \approx 128.2\) lb, and the healthy range is about 107.8 to 145.7 lb.
Aiming below the range through extreme dieting is said to harm your health. Checking a goal against this range is a number-based, safe way to think about it.
In clinical nutrition, dietitians sometimes estimate calorie and protein needs from ideal body weight (or an adjusted weight based on it) instead of actual weight, especially for people with obesity, whose actual weight would overstate their needs.
If you can work out your ideal body weight from your height, you can follow how the calorie target your dietitian or doctor gives you may have been calculated (always follow professional advice for your own nutrition therapy).
Formulas and graphs
Symbols and terms
Symbols
| \(h\) | aitch | Height in meters, used in the BMI-based formulas. It is the first letter of "height". Use meters, not centimeters (170 cm → 1.7). |
| \(h^{2}\) | aitch squared | Height multiplied by itself. The small raised 2 is an exponent meaning "multiply two of them together". (Example - \(1.7^2 = 1.7 \times 1.7 = 2.89\)) |
| \(h_{in}\) | aitch sub in | Height in inches only (5 ft 10 in = 70 in). The four formulas use it to find the inches over 5 feet. From centimeters, divide by 2.54. |
| \(w_{22}\) | double-u sub twenty-two | The symbol used on this page for the weight at which BMI is exactly 22. |
| \(w_{\mathrm{min}},\ w_{\mathrm{max}}\) | double-u min, double-u max | The symbols used on this page for the low and high ends of the weight range for a healthy BMI (18.5 to 25). |
| \(E\) | ee | Inches over 5 feet - your height in inches minus 60 inches (152.4 cm). It is the first letter of "excess". |
| \(w_{0}\) | double-u zero | The base weight of each of the four formulas - the ideal weight for someone exactly 5 feet (60 in) tall. |
| \(k\) | kay | The amount added per inch (kg) - how much is added to the ideal weight for each inch of height above 5 feet. It is set for each formula and sex. |
| \(W\) | capital double-u | The ideal body weight you want to find. On this page it stands for the value from any of the four formulas. |
Terms
| ideal body weight (IBW) | A guide weight worked out from height, used for health goals and to calculate drug doses. The value differs a little from formula to formula; there is no single medically correct value. |
| standard weight | The name used in Japan for the weight at which BMI is exactly 22, calculated as 22 × height (m) squared. It is based on Japanese statistics that found the least illness at a BMI of about 22, and it is the most common weight guide in Japan. |
| healthy BMI range | A BMI of 18.5 to less than 25, which the WHO and the CDC treat as healthy for adults. The matching weights for your height are found with weight = BMI × height squared. |
| BMI | Short for body mass index. Weight (kg) divided by height (m) squared, used around the world as a guide to weight relative to height. The related "BMI Calculator" explains it in detail. |
| predicted body weight (PBW) | A weight worked out from height and sex that intensive care teams use to set ventilator volumes. For men it is 50 + 0.91 × (height in cm − 152.4) kg, almost the same as the Devine formula (for women, 45.5 instead of 50). |
| inch | A unit of length. 1 inch = 2.54 cm, and 12 inches = 1 foot (about 30.5 cm). The four formulas count inches over 5 feet because they were all developed in the United States. |
| Devine formula | An ideal body weight formula proposed by Devine in 1974 to calculate drug doses. It is the most widely used of the four today; when doctors and pharmacists say "ideal body weight" for dosing, they usually mean this formula. |
Good to know before you start
Here is what helps you use the calculation on this page with real understanding, not just by pressing the button.
| Converting units of length (Grade 4) |
|
| Multiplying and dividing with decimals (Grades 5–6) |
|
| Exponents (Grade 6) |
|
| Expressions and linear equations (Grades 6–8) |
|
How to calculate it in Excel
| Height (ft) | 5 |
| Height (in) | 10 |
| Weight at BMI 22 (lb) | =22*(B1*12+B2)^2/703 |
| Height (ft) | 5 |
| Height (in) | 10 |
| Low end (lb, BMI 18.5) | =18.5*(B1*12+B2)^2/703 |
| High end (lb, BMI 25) | =25*(B1*12+B2)^2/703 |
| Height (ft) | 5 |
| Height (in) | 10 |
| Sex (male = 1, female = 2) | 1 |
| Inches over 5 feet E | =B1*12+B2-60 |
| Devine (lb) | =IF(B3=1,110.2+5.07*B4,100.3+5.07*B4) |
| Robinson (lb) | =IF(B3=1,114.6+4.19*B4,108+3.75*B4) |
| Miller (lb) | =IF(B3=1,123.9+3.11*B4,117.1+3*B4) |
| Hamwi (lb) | =IF(B3=1,106+6*B4,100+5*B4) |
"B1*12+B2" turns feet and inches into inches only, and "^" is the exponent symbol (how many times to multiply). In the third table, "B1*12+B2-60" is the number of inches over 5 feet, and "IF(B3=1,A,B)" means "use formula A if the sex is male (1) and formula B if female (2)". The four formulas are in pounds (the published kilogram constants times 2.20462; Hamwi was published in pounds).
In the first table, for example, B3 shows about 153.3 (lb). In the third table (5 ft 10 in, male), the Devine cell shows about 160.9. Just replace the height and sex with your own.
How to calculate it in Google Sheets
| Height (ft) | 5 |
| Height (in) | 10 |
| Weight at BMI 22 (lb) | =22*(B1*12+B2)^2/703 |
| Height (ft) | 5 |
| Height (in) | 10 |
| Low end (lb, BMI 18.5) | =18.5*(B1*12+B2)^2/703 |
| High end (lb, BMI 25) | =25*(B1*12+B2)^2/703 |
| Height (ft) | 5 |
| Height (in) | 10 |
| Sex (male = 1, female = 2) | 1 |
| Inches over 5 feet E | =B1*12+B2-60 |
| Devine (lb) | =IF(B3=1,110.2+5.07*B4,100.3+5.07*B4) |
| Robinson (lb) | =IF(B3=1,114.6+4.19*B4,108+3.75*B4) |
| Miller (lb) | =IF(B3=1,123.9+3.11*B4,117.1+3*B4) |
| Hamwi (lb) | =IF(B3=1,106+6*B4,100+5*B4) |
How to calculate it in Python
from decimal import Decimal, ROUND_HALF_UP
def round_half_up(x):
# round half up to one decimal place (Python's built-in round sends .5 to the nearest even number)
return float(Decimal(str(x)).quantize(Decimal("0.1"), rounding=ROUND_HALF_UP))
height_ft = 5 # height (feet)
height_in = 10 # height (inches)
sex = "m" # sex ("m" = male, "f" = female)
height_total_in = height_ft * 12 + height_in # height in inches only
standard_weight = 22 * height_total_in ** 2 / 703 # weight at BMI 22 (lb)
healthy_min = 18.5 * height_total_in ** 2 / 703 # low end of the healthy BMI range
healthy_max = 25 * height_total_in ** 2 / 703 # high end of the healthy BMI range
excess_inch = height_total_in - 60 # inches over 5 feet E (used in the four formulas)
if sex == "m":
devine = 110.2 + 5.07 * excess_inch # Devine (1974)
robinson = 114.6 + 4.19 * excess_inch # Robinson (1983)
miller = 123.9 + 3.11 * excess_inch # Miller (1983)
hamwi = 106 + 6 * excess_inch # Hamwi (1964)
else:
devine = 100.3 + 5.07 * excess_inch
robinson = 108.0 + 3.75 * excess_inch
miller = 117.1 + 3.00 * excess_inch
hamwi = 100 + 5 * excess_inch
print(f"Devine: {round_half_up(devine)} lb")
print(f"Robinson: {round_half_up(robinson)} lb")
print(f"Miller: {round_half_up(miller)} lb")
print(f"Hamwi: {round_half_up(hamwi)} lb")
print(f"Healthy BMI range: {round_half_up(healthy_min)} - {round_half_up(healthy_max)} lb")
print(f"Weight at BMI 22: {round_half_up(standard_weight)} lb")
How to write it in LaTeX and other math languages (copy and paste)
w₂₂ = 22 × h²
w_{22} = 22 \times h^{2}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>w</mi><mn>22</mn></msub>
<mo>=</mo>
<mn>22</mn>
<mo>×</mo>
<msup><mi>h</mi><mn>2</mn></msup>
</mrow>
</math>
w_(22) = 22 xx h^2
22*h^2
w22 := 22*h^2;
w22 = 22*h^2;
w_22 = 22 × h^2
wmin = 18.5 × h², wmax = 25 × h²
w_{\mathrm{min}} = 18.5 \times h^{2}, \quad w_{\mathrm{max}} = 25 \times h^{2}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>w</mi><mi>min</mi></msub>
<mo>=</mo>
<mn>18.5</mn>
<mo>×</mo>
<msup><mi>h</mi><mn>2</mn></msup>
<mo>,</mo>
<msub><mi>w</mi><mi>max</mi></msub>
<mo>=</mo>
<mn>25</mn>
<mo>×</mo>
<msup><mi>h</mi><mn>2</mn></msup>
</mrow>
</math>
w_(min) = 18.5 xx h^2, w_(max) = 25 xx h^2
{18.5*h^2, 25*h^2}
wmin := 18.5*h^2; wmax := 25*h^2;
w_min = 18.5*h^2; w_max = 25*h^2;
w_min = 18.5 × h^2, w_max = 25 × h^2
E = hin − 60, W = w₀ + k × E
E = h_{in} - 60, \quad W = w_{0} + k \times E
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<mi>E</mi>
<mo>=</mo>
<msub><mi>h</mi><mi>in</mi></msub>
<mo>−</mo>
<mn>60</mn>
<mo>,</mo>
<mi>W</mi>
<mo>=</mo>
<msub><mi>w</mi><mn>0</mn></msub>
<mo>+</mo>
<mi>k</mi>
<mo>×</mo>
<mi>E</mi>
</mrow>
</math>
E = h_(in) - 60, W = w_0 + k xx E
w0 + k*(hin - 60)
excess := hin - 60; W := w0 + k*excess;
excess = hin - 60; W = w0 + k*excess;
E = h_in − 60, W = w_0 + k × E
How to have ChatGPT do the calculation
You are a calculation assistant for health measures. Do the following calculation by actually running Python code, and base your answer only on the numbers from the execution result (do not answer by mental math or guessing). For an adult man who is 5 ft 10 in tall, find each of the following in pounds: 1. The number of inches over 5 feet, E (height in inches − 60) 2. Ideal body weight by the four medical formulas for men: Devine 50 kg + 2.3 kg × E, Robinson 52 kg + 1.9 kg × E, Miller 56.2 kg + 1.41 kg × E (convert these to pounds with 1 kg = 2.20462 lb), and Hamwi 106 lb + 6 lb × E 3. The weight range for a healthy BMI (18.5 to 25): 18.5 × height in inches squared ÷ 703 to 25 × height in inches squared ÷ 703 4. The weight at BMI 22 (22 × height in inches squared ÷ 703) Show the formulas you used and the numbers from the execution result. Also add a note that these are statistical guides, not a medical diagnosis.
How to Use
-
1Enter your numbersType the numbers you want to calculate with into the input fields
-
2CalculatePress the "Calculate" button
-
3Check the resultThe result appears on the spot. The same page also explains the idea behind the calculation and the formula
DataChef Features
No technical knowledge required.
Intuitive and user-friendly operation.
Can be used without registering personal information.
Automatic file deletion by clicking "download".
and rapid file conversion.
No attribution required.
No need to contact us for commercial use permission.
