Estimate your daily calorie intake for weight maintenance, loss, or gain using the Mifflin-St Jeor Equation.
Male
Female
Sedentary (little or no exercise)
Lightly active (light exercise/sports 1-3 days/week)
Moderately active (moderate exercise/sports 3-5 days/week)
Very active (hard exercise/sports 6-7 days a week)
Extra active (very hard exercise/sports & physical job or 2x training)
Your Estimated Daily Calorie Needs:
— kcal
Understanding Your Daily Calorie Needs
Calculating your daily calorie needs is a fundamental step towards managing your weight and optimizing your health. It helps you understand how many calories your body requires to maintain its current weight, lose fat, or build muscle. This calculator uses the widely accepted Mifflin-St Jeor Equation, considered one of the most accurate methods for estimating Basal Metabolic Rate (BMR).
What is Basal Metabolic Rate (BMR)?
BMR is the minimum number of calories your body needs to perform basic life-sustaining functions, such as breathing, circulating blood, and cell production, while at rest. It accounts for the largest portion of your daily energy expenditure.
The Mifflin-St Jeor Equation
This equation estimates your BMR based on your age, gender, weight, and height.
For Men: BMR = (10 × weight in kg) + (6.25 × height in cm) – (5 × age in years) + 5
For Women: BMR = (10 × weight in kg) + (6.25 × height in cm) – (5 × age in years) – 161
Total Daily Energy Expenditure (TDEE)
Your BMR is just the baseline. To get your total daily calorie needs (TDEE), we multiply your BMR by an Activity Factor that represents your typical weekly physical activity level. This accounts for the calories burned through exercise and daily movement.
TDEE = BMR × Activity Factor
The activity factors used in this calculator are standard estimations:
Sedentary (1.2): Little to no exercise.
Lightly Active (1.375): Light exercise or sports 1-3 days per week.
Moderately Active (1.55): Moderate exercise or sports 3-5 days per week.
Very Active (1.725): Hard exercise or sports 6-7 days per week.
Extra Active (1.9): Very hard exercise or sports & physical job or training twice a day.
How to Use This Information
Weight Maintenance: Consuming your TDEE will help you maintain your current weight.
Weight Loss: To lose weight, you typically need to consume fewer calories than your TDEE (a calorie deficit). A common recommendation is a deficit of 500 calories per day for a loss of about 1 pound (0.45 kg) per week.
Weight Gain: To gain weight, you need to consume more calories than your TDEE (a calorie surplus). A surplus of 500 calories per day can lead to a gain of about 1 pound (0.45 kg) per week.
Disclaimer: This calculator provides an estimation. Individual metabolic rates can vary. For personalized advice, consult a healthcare professional or a registered dietitian.
function calculateCalories() {
var weight = document.getElementById("weight").value;
var height = document.getElementById("height").value;
var age = document.getElementById("age").value;
var gender = document.getElementById("gender").value;
var activityLevel = document.getElementById("activityLevel").value;
var resultValueElement = document.getElementById("result-value");
var maintenanceCaloriesElement = document.getElementById("maintenance-calories");
// Clear previous results
resultValueElement.innerText = "– kcal";
maintenanceCaloriesElement.innerText = "";
// Input validation
if (weight === "" || height === "" || age === "" || isNaN(weight) || isNaN(height) || isNaN(age) || weight <= 0 || height <= 0 || age <= 0) {
alert("Please enter valid positive numbers for weight, height, and age.");
return;
}
var weightNum = parseFloat(weight);
var heightNum = parseFloat(height);
var ageNum = parseFloat(age);
var activityLevelNum = parseFloat(activityLevel);
var bmr;
// Calculate BMR using Mifflin-St Jeor Equation
if (gender === "male") {
bmr = (10 * weightNum) + (6.25 * heightNum) – (5 * ageNum) + 5;
} else { // female
bmr = (10 * weightNum) + (6.25 * heightNum) – (5 * ageNum) – 161;
}
// Calculate TDEE (Total Daily Energy Expenditure)
var tdee = bmr * activityLevelNum;
// Display results
resultValueElement.innerText = Math.round(tdee) + " kcal";
maintenanceCaloriesElement.innerText = "Your estimated daily calorie needs to maintain your current weight: " + Math.round(tdee) + " kcal.";
}