Body fat percentage is a measurement that identifies what portion of your total body weight is composed of fat versus lean mass (muscles, bones, organs, and water). Unlike Body Mass Index (BMI), which only accounts for height and weight, body fat percentage provides a clearer picture of physical fitness and health risks.
The U.S. Navy Method Explained
This calculator uses the U.S. Navy Circumference Method, a widely recognized formula developed by the Naval Health Research Center. It is highly regarded for its accessibility, as it only requires a measuring tape rather than expensive equipment like DEXA scans or hydrostatic weighing.
Example Calculation
Consider a 180lb male who is 70 inches tall with a 16-inch neck and a 34-inch waist. Using the formula, his estimated body fat would be approximately 16.5%, placing him in the "Fitness" category.
Healthy Body Fat Ranges
Category
Women (%)
Men (%)
Essential Fat
10–13%
2–5%
Athletes
14–20%
6–13%
Fitness
21–24%
14–17%
Average
25–31%
18–24%
Obese
32%+
25%+
How to Take Accurate Measurements
Height: Measure without shoes, standing flat against a wall.
Neck: Measure just below the larynx (Adam's apple), sloping slightly downward toward the front.
Waist: For men, measure at the navel. For women, measure at the narrowest point of the natural waistline.
Hips (Women only): Measure at the widest horizontal point of the buttocks.
function calculateBodyFat() {
var gender = document.getElementById("gender").value;
var height = parseFloat(document.getElementById("height").value);
var neck = parseFloat(document.getElementById("neck").value);
var waist = parseFloat(document.getElementById("waist").value);
var resultDiv = document.getElementById("bf-result");
if (isNaN(height) || isNaN(neck) || isNaN(waist) || height <= 0 || neck <= 0 || waist <= 0) {
resultDiv.style.display = "block";
resultDiv.innerHTML = "Error: Please enter valid positive numbers for all fields.";
resultDiv.style.borderLeftColor = "#e74c3c";
return;
}
var bodyFat = 0;
if (gender === "male") {
// Navy formula for men: 86.010*log10(waist – neck) – 70.041*log10(height) + 36.76
// Alternatively common version: 495 / (1.0324 – 0.19077 * log10(waist-neck) + 0.15456 * log10(height)) – 450
bodyFat = 495 / (1.0324 – 0.19077 * (Math.log10(waist – neck)) + 0.15456 * (Math.log10(height))) – 450;
} else {
var hips = parseFloat(document.getElementById("hips").value);
if (isNaN(hips) || hips <= 0) {
resultDiv.style.display = "block";
resultDiv.innerHTML = "Error: Please enter a valid hip measurement for female calculation.";
resultDiv.style.borderLeftColor = "#e74c3c";
return;
}
// Navy formula for women: 495 / (1.29579 – 0.35004 * log10(waist + hip – neck) + 0.22100 * log10(height)) – 450
bodyFat = 495 / (1.29579 – 0.35004 * (Math.log10(waist + hips – neck)) + 0.22100 * (Math.log10(height))) – 450;
}
if (bodyFat < 0) bodyFat = 0;
var category = "";
if (gender === "male") {
if (bodyFat < 6) category = "Essential Fat";
else if (bodyFat < 14) category = "Athletes";
else if (bodyFat < 18) category = "Fitness";
else if (bodyFat < 25) category = "Average";
else category = "Obese";
} else {
if (bodyFat < 14) category = "Essential Fat";
else if (bodyFat < 21) category = "Athletes";
else if (bodyFat < 25) category = "Fitness";
else if (bodyFat < 32) category = "Average";
else category = "Obese";
}
resultDiv.style.display = "block";
resultDiv.style.borderLeftColor = "#27ae60";
resultDiv.innerHTML = "