Calculate Weight with Height | Professional Ideal Body Weight Calculator
:root {
–primary: #004a99;
–secondary: #003366;
–success: #28a745;
–light: #f8f9fa;
–border: #dee2e6;
–text: #212529;
–white: #ffffff;
–shadow: 0 4px 6px rgba(0,0,0,0.1);
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
background-color: var(–light);
color: var(–text);
line-height: 1.6;
margin: 0;
padding: 0;
}
.main-container {
max-width: 960px;
margin: 0 auto;
padding: 20px;
background-color: var(–white);
box-shadow: 0 0 20px rgba(0,0,0,0.05);
min-height: 100vh;
}
header {
text-align: center;
padding-bottom: 30px;
border-bottom: 1px solid var(–border);
margin-bottom: 30px;
}
h1 {
color: var(–primary);
margin-bottom: 10px;
font-size: 2.2rem;
}
.subtitle {
color: #6c757d;
font-size: 1.1rem;
}
/* Calculator Styles */
.loan-calc-container {
background-color: #fff;
border: 1px solid var(–border);
border-radius: 8px;
padding: 30px;
margin-bottom: 40px;
box-shadow: var(–shadow);
}
.input-group {
margin-bottom: 20px;
}
.input-group label {
display: block;
margin-bottom: 8px;
font-weight: 600;
color: var(–secondary);
}
.input-wrapper {
display: flex;
align-items: center;
}
.input-control {
width: 100%;
padding: 12px;
border: 1px solid #ced4da;
border-radius: 4px;
font-size: 16px;
transition: border-color 0.15s ease-in-out;
}
.input-control:focus {
border-color: var(–primary);
outline: 0;
box-shadow: 0 0 0 0.2rem rgba(0, 74, 153, 0.25);
}
.split-inputs {
display: flex;
gap: 15px;
}
.helper-text {
font-size: 0.85rem;
color: #6c757d;
margin-top: 5px;
}
.error-msg {
color: #dc3545;
font-size: 0.85rem;
margin-top: 5px;
display: none;
}
.btn-group {
display: flex;
gap: 15px;
margin-top: 25px;
}
.btn {
padding: 12px 24px;
border: none;
border-radius: 4px;
cursor: pointer;
font-weight: 600;
font-size: 16px;
transition: all 0.2s;
}
.btn-reset {
background-color: #6c757d;
color: white;
}
.btn-copy {
background-color: var(–primary);
color: white;
}
.btn:hover {
opacity: 0.9;
transform: translateY(-1px);
}
/* Results Section */
.results-section {
margin-top: 30px;
padding-top: 30px;
border-top: 1px solid var(–border);
}
.primary-result {
background-color: #e8f0fe;
border-left: 5px solid var(–primary);
padding: 20px;
border-radius: 4px;
margin-bottom: 25px;
}
.primary-label {
color: var(–secondary);
font-weight: 600;
text-transform: uppercase;
font-size: 0.9rem;
letter-spacing: 0.5px;
}
.primary-value {
color: var(–primary);
font-size: 2.5rem;
font-weight: 700;
margin: 10px 0;
}
.intermediate-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 20px;
margin-bottom: 30px;
}
.result-card {
background: #fff;
border: 1px solid var(–border);
padding: 15px;
border-radius: 6px;
text-align: center;
}
.card-label {
font-size: 0.9rem;
color: #6c757d;
margin-bottom: 5px;
}
.card-value {
font-size: 1.4rem;
font-weight: 600;
color: var(–text);
}
/* Chart & Table */
.visuals-container {
margin-top: 40px;
}
.chart-wrapper {
width: 100%;
height: 300px;
margin-bottom: 30px;
position: relative;
}
canvas {
width: 100%;
height: 100%;
}
table {
width: 100%;
border-collapse: collapse;
margin-top: 20px;
font-size: 0.95rem;
}
th, td {
padding: 12px;
text-align: left;
border-bottom: 1px solid var(–border);
}
th {
background-color: #f1f3f5;
color: var(–secondary);
font-weight: 600;
}
caption {
caption-side: bottom;
font-size: 0.85rem;
color: #6c757d;
padding: 10px;
text-align: left;
}
/* Article Styles */
article {
margin-top: 60px;
}
article h2 {
color: var(–secondary);
border-bottom: 2px solid var(–border);
padding-bottom: 10px;
margin-top: 40px;
}
article h3 {
color: var(–primary);
margin-top: 30px;
}
article p, article li {
font-size: 1.05rem;
color: #333;
margin-bottom: 15px;
}
.highlight-box {
background-color: #f8f9fa;
border-left: 4px solid var(–success);
padding: 15px;
margin: 20px 0;
}
.internal-links ul {
list-style: none;
padding: 0;
}
.internal-links li {
margin-bottom: 10px;
border-bottom: 1px solid #eee;
padding-bottom: 10px;
}
.internal-links a {
color: var(–primary);
text-decoration: none;
font-weight: 600;
}
.internal-links a:hover {
text-decoration: underline;
}
footer {
margin-top: 60px;
padding-top: 30px;
border-top: 1px solid var(–border);
text-align: center;
font-size: 0.9rem;
color: #6c757d;
}
@media (max-width: 600px) {
.primary-value {
font-size: 2rem;
}
.split-inputs {
flex-direction: column;
gap: 0;
}
.split-inputs .input-group {
margin-bottom: 15px;
}
}
Healthy Weight Range (BMI 18.5 – 24.9)
129 – 174 lbs
Based on the World Health Organization BMI classification.
Weight Analysis Visualization
Figure 1: Comparison of Ideal Body Weight formulas against the healthy BMI ceiling.
Detailed Formula Breakdown
| Method |
Calculated Weight |
Primary Usage |
| Devine (1974) |
166 lbs |
Standard medical dosing |
| Robinson (1983) |
163 lbs |
Refined for modern populations |
| Miller (1983) |
158 lbs |
Estimating lean body mass |
| BMI Lower Bound |
129 lbs |
Minimum healthy weight |
| BMI Upper Bound |
174 lbs |
Maximum healthy weight |
Table 1: Comparative analysis of weight formulas based on input height.
What is the Correct Way to Calculate Weight with Height?
When you seek to calculate weight with height, you are essentially trying to determine the Ideal Body Weight (IBW) or a healthy weight range specific to your stature. This metric is a cornerstone of health assessments, fitness planning, and medical dosing. Unlike a simple scale reading, calculating weight relative to height provides context to body mass, distinguishing between healthy bulk and potential health risks.
This tool is designed for adults who want to understand where they stand on the spectrum of healthy weight. It is particularly useful for individuals setting fitness goals, patients requiring medication dosing based on IBW, and anyone monitoring their long-term health. However, a common misconception is that a single number defines "health." In reality, when you calculate weight with height, you should look at a range of values and multiple formulas to get a comprehensive picture.
Formulas and Mathematical Explanation
To accurately calculate weight with height, financial and medical professionals rely on several established formulas. While the Body Mass Index (BMI) provides a general range, formulas like Devine, Robinson, and Miller offer specific point estimates often used in clinical settings.
The BMI Formula
Metric: Weight (kg) / Height (m)²
Imperial: 703 × Weight (lbs) / Height (in)²
For specific Ideal Body Weight (IBW) calculations, we use the following standard equations (assuming height in inches):
| Variable |
Meaning |
Unit |
Typical Range |
| H |
Height over 60 inches (5ft) |
Inches |
0 – 24 |
| Base |
Base weight for 5ft |
kg |
50 (M) / 45.5 (F) |
| Rate |
Weight added per inch |
kg/inch |
1.4 – 2.3 |
Table 2: Variables used in IBW formulas.
The Devine Formula (Most Common):
Male: 50kg + 2.3kg × (Height (in) – 60)
Female: 45.5kg + 2.3kg × (Height (in) – 60)
Practical Examples (Real-World Use Cases)
Example 1: The 5'10" Male
John wants to calculate weight with height to set a target for his cutting phase. He is 5 feet 10 inches tall.
- Input: Male, 5ft 10in (70 inches).
- Calculation (Devine): 50 + 2.3 × (70 – 60) = 50 + 23 = 73kg.
- Conversion: 73kg ≈ 161 lbs.
- BMI Range: For 5'10", the healthy BMI range (18.5-24.9) is approximately 129 to 174 lbs.
Interpretation: John's ideal "medical" weight is around 161 lbs, which sits comfortably in the upper-middle of his healthy BMI range.
Example 2: The 5'4″ Female
Sarah is 5 feet 4 inches and wants to know her healthy baseline.
- Input: Female, 5ft 4in (64 inches).
- Calculation (Robinson): 49 + 1.7 × (64 – 60) = 49 + 6.8 = 55.8kg.
- Conversion: 55.8kg ≈ 123 lbs.
- BMI Range: 108 to 145 lbs.
Interpretation: When Sarah uses the tool to calculate weight with height, she sees 123 lbs as a solid target, but anywhere between 108 and 145 lbs is considered clinically healthy.
How to Use This Calculator
Follow these steps to accurately calculate weight with height:
- Select Gender: Choose Male or Female. This adjusts the base weight and multiplier in the algorithms.
- Enter Height: Input your height in Feet and Inches. If you only know centimeters, divide by 2.54 to get total inches.
- Review the Range: Look at the "Healthy Weight Range" first. This is your safe zone.
- Analyze Specifics: Check the Devine, Robinson, and Miller results. These are specific targets often used for medication or strict analysis.
- Use the Chart: The visualization helps you see how close the specific formulas are to the upper limit of the healthy BMI zone.
Key Factors That Affect Results
When you calculate weight with height, remember that the number is a guideline, not a law. Several financial and biological factors influence "true" ideal weight:
- Muscle Mass Density: Muscle is denser than fat. An athlete may calculate weight with height and appear "overweight" by BMI standards despite having low body fat.
- Frame Size: Wrist circumference and bone density play a role. The formulas above generally assume a medium frame. Large-framed individuals should aim for the upper end of the range.
- Age and Metabolism: As we age, muscle mass naturally decreases and fat storage patterns change, potentially shifting what is considered a "maintainable" ideal weight.
- Hydration Levels: Daily weight fluctuation due to water retention can vary by 1-5 lbs, affecting daily measurements against the calculated ideal.
- Body Composition: Two people can calculate weight with height and get the same result, but have vastly different health profiles depending on their fat-to-muscle ratio.
- Health History: Previous medical conditions or interventions may necessitate a weight higher or lower than the standard formulaic output.
Frequently Asked Questions (FAQ)
1. Why do different formulas give different results?
They were developed based on different population data sets and medical needs. Devine is the standard for pharmacology, while Robinson was developed later to refine values for modern populations.
2. Is BMI accurate for everyone?
No. BMI is a screening tool. It does not account for muscle mass, bone density, or overall body composition. It is less accurate for athletes and the elderly.
3. Can I use this if I am under 5 feet tall?
Standard IBW formulas (Devine, etc.) are designed for heights over 5 feet (60 inches). For heights under 5 feet, the calculator relies primarily on the BMI range for accuracy.
4. How often should I calculate weight with height?
Your height rarely changes as an adult, so the target remains stable. However, as you age or change your fitness routine, you should re-evaluate which end of the range suits your lifestyle.
5. What is the "Miller" formula?
The Miller formula (1983) is another variation often used to estimate lean body mass. It tends to yield slightly lower weight estimates than Devine.
6. Does this apply to children?
No. Children and teenagers require specialized growth charts (percentiles) rather than static adult formulas.
7. How does gender affect the calculation?
Biologically, men generally have more lean muscle mass and heavier bone structures than women of the same height, leading to higher base weights in the formulas.
8. What if my weight is outside the calculated range?
Being outside the range doesn't automatically mean you are unhealthy. Consult a healthcare provider to assess body composition, blood markers, and overall fitness.
Related Tools and Internal Resources
Enhance your health planning with our other specialized calculators:
// Global variable references
var ftInput = document.getElementById('feet');
var inInput = document.getElementById('inches');
var genderInput = document.getElementById('gender');
// Result Elements
var bmiRangeEl = document.getElementById('bmiRangeResult');
var devineEl = document.getElementById('devineResult');
var robinsonEl = document.getElementById('robinsonResult');
var millerEl = document.getElementById('millerResult');
var heightError = document.getElementById('heightError');
// Table Elements
var tblDevine = document.getElementById('tblDevine');
var tblRobinson = document.getElementById('tblRobinson');
var tblMiller = document.getElementById('tblMiller');
var tblBMILow = document.getElementById('tblBMILow');
var tblBMIHigh = document.getElementById('tblBMIHigh');
// Chart Context
var canvas = document.getElementById('weightChart');
var ctx = canvas.getContext('2d');
// Initialization
window.onload = function() {
calculateResults();
};
function calculateResults() {
// 1. Get Values
var ft = parseFloat(ftInput.value);
var inch = parseFloat(inInput.value);
var gender = genderInput.value;
// 2. Validate
if (isNaN(ft) || isNaN(inch) || ft < 0 || inch 60 inches. If less, we fallback or project.
// We will project but clamp to 0 if negative (though 1ft height is edge case)
var devineKg = 0;
var robinsonKg = 0;
var millerKg = 0;
var inchesOver60 = totalInches – 60;
if (gender === 'male') {
// Devine Male: 50kg + 2.3kg per inch over 60
devineKg = 50 + (2.3 * inchesOver60);
// Robinson Male: 52kg + 1.9kg per inch over 60
robinsonKg = 52 + (1.9 * inchesOver60);
// Miller Male: 56.2kg + 1.41kg per inch over 60
millerKg = 56.2 + (1.41 * inchesOver60);
} else {
// Devine Female: 45.5kg + 2.3kg per inch over 60
devineKg = 45.5 + (2.3 * inchesOver60);
// Robinson Female: 49kg + 1.7kg per inch over 60
robinsonKg = 49 + (1.7 * inchesOver60);
// Miller Female: 53.1kg + 1.36kg per inch over 60
millerKg = 53.1 + (1.36 * inchesOver60);
}
// Handle short stature edge case (< 5ft)
// Standard practice: Just substract using the formula (resulting in lower weight) or use BMI.
// We will display the formula result but if it's unreasonably low compared to BMI, user sees the discrepancy.
var devineLbs = Math.round(devineKg * 2.20462);
var robinsonLbs = Math.round(robinsonKg * 2.20462);
var millerLbs = Math.round(millerKg * 2.20462);
// 6. Update UI
bmiRangeEl.innerText = minWeightLbs + " – " + maxWeightLbs + " lbs";
devineEl.innerText = devineLbs + " lbs";
robinsonEl.innerText = robinsonLbs + " lbs";
millerEl.innerText = millerLbs + " lbs";
// Update Table
tblDevine.innerText = devineLbs + " lbs";
tblRobinson.innerText = robinsonLbs + " lbs";
tblMiller.innerText = millerLbs + " lbs";
tblBMILow.innerText = minWeightLbs + " lbs";
tblBMIHigh.innerText = maxWeightLbs + " lbs";
// 7. Draw Chart
drawChart(minWeightLbs, maxWeightLbs, devineLbs, robinsonLbs, millerLbs);
}
function drawChart(minBMI, maxBMI, devine, robinson, miller) {
// Reset canvas
canvas.width = canvas.clientWidth;
canvas.height = canvas.clientHeight;
var w = canvas.width;
var h = canvas.height;
var padding = 40;
var chartH = h – (padding * 2);
var chartW = w – (padding * 2);
// Determine Scale
var maxValue = Math.max(maxBMI, devine, robinson, miller) * 1.1;
var minValue = Math.min(minBMI, devine, robinson, miller) * 0.8;
// Helper to map value to Y pos
function getY(val) {
return h – padding – ((val – minValue) / (maxValue – minValue) * chartH);
}
ctx.clearRect(0, 0, w, h);
// Draw Axis
ctx.beginPath();
ctx.strokeStyle = '#dee2e6';
ctx.moveTo(padding, padding);
ctx.lineTo(padding, h – padding);
ctx.lineTo(w – padding, h – padding);
ctx.stroke();
// Bar Config
var barWidth = (chartW / 5) – 20;
var labels = ["BMI Min", "Devine", "Robinson", "Miller", "BMI Max"];
var values = [minBMI, devine, robinson, miller, maxBMI];
var colors = ["#28a745", "#004a99", "#003366", "#17a2b8", "#dc3545"];
ctx.textAlign = "center";
ctx.font = "12px Arial";
for (var i = 0; i < values.length; i++) {
var x = padding + 20 + (i * (chartW / 5));
var y = getY(values[i]);
var barH = (h – padding) – y;
// Draw Bar
ctx.fillStyle = colors[i];
ctx.fillRect(x, y, barWidth, barH);
// Draw Value on Top
ctx.fillStyle = "#333";
ctx.fillText(values[i], x + (barWidth / 2), y – 5);
// Draw Label
ctx.fillStyle = "#666";
ctx.fillText(labels[i], x + (barWidth / 2), h – padding + 15);
}
}
function resetCalculator() {
ftInput.value = 5;
inInput.value = 10;
genderInput.value = "male";
calculateResults();
}
function copyResults() {
var text = "Calculated Weight with Height Results:\n" +
"Height: " + ftInput.value + "'" + inInput.value + "\"\n" +
"Gender: " + genderInput.value + "\n" +
"Healthy BMI Range: " + bmiRangeEl.innerText + "\n" +
"Devine Formula: " + devineEl.innerText + "\n" +
"Robinson Formula: " + robinsonEl.innerText;
var textArea = document.createElement("textarea");
textArea.value = text;
document.body.appendChild(textArea);
textArea.select();
document.execCommand("Copy");
textArea.remove();
var btn = document.querySelector('.btn-copy');
var originalText = btn.innerText;
btn.innerText = "Copied!";
setTimeout(function() {
btn.innerText = originalText;
}, 2000);
}