Calculate your Total Daily Energy Expenditure (TDEE) and macronutrient targets.
Male
Female
Sedentary (little to no exercise)
Lightly Active (exercise 1-3 days/week)
Moderately Active (exercise 3-5 days/week)
Very Active (exercise 6-7 days/week)
Extra Active (very intense exercise & physical job)
Weight Loss (deficit of 500 kcal/day)
Maintain Weight
Weight Gain (surplus of 500 kcal/day)
Your Results
Estimated TDEE: kcal/day
Target Daily Calories: kcal/day
Macronutrient Targets:
Protein: g/day (%)
Fat: g/day (%)
Carbohydrates: g/day (%)
Understanding TDEE and Macronutrients
Your Total Daily Energy Expenditure (TDEE) is the total number of calories your body burns in a 24-hour period. This includes calories burned through your Basal Metabolic Rate (BMR), the thermic effect of food, and calories burned during physical activity.
Basal Metabolic Rate (BMR) Calculation
We use the Mifflin-St Jeor equation, which is widely considered one of the most accurate BMR formulas:
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) Calculation
Once your BMR is calculated, it's multiplied by an activity factor to estimate your TDEE:
TDEE = BMR × Activity Factor
The activity factors used in this calculator are standard estimations:
Sedentary: 1.2 (little or no exercise, desk job)
Lightly Active: 1.375 (light exercise or sports 1-3 days/week)
Moderately Active: 1.55 (moderate exercise or sports 3-5 days/week)
Very Active: 1.725 (hard exercise or sports 6-7 days/week)
Extra Active: 1.9 (very hard exercise, physical job, or training twice a day)
Target Daily Calories
Your target daily calorie intake is derived from your TDEE based on your goal:
Target Calories = TDEE + Goal Adjustment
Where the goal adjustment is:
Weight Loss: -500 kcal (aiming for approximately 1 lb of fat loss per week)
Maintain Weight: 0 kcal
Weight Gain: +500 kcal (aiming for approximately 1 lb of muscle gain per week)
Macronutrient Breakdown
Macronutrients (macros) are the nutrients your body needs in large amounts: protein, carbohydrates, and fats. They provide energy (calories) and are essential for bodily functions. This calculator provides a common macro split suitable for most goals:
Protein: 4 calories per gram. Essential for muscle repair and growth, satiety, and various bodily functions. Recommended range: 30-40% of daily calories.
Fat: 9 calories per gram. Crucial for hormone production, nutrient absorption, and energy. Recommended range: 20-30% of daily calories.
Carbohydrates: 4 calories per gram. The body's primary energy source. Recommended range: 30-50% of daily calories.
The calculator aims for a balanced split, prioritizing protein for muscle support, sufficient fats for hormonal health, and filling the remainder with carbohydrates for energy.
How to Use This Calculator
Select your Gender.
Enter your current Age in years.
Enter your current Weight in kilograms (kg).
Enter your current Height in centimeters (cm).
Choose your typical Activity Level from the dropdown. Be honest for the most accurate results!
Select your Goal (Weight Loss, Maintain Weight, or Weight Gain).
Click the "Calculate" button.
Review your estimated TDEE, target daily calories, and the recommended macronutrient breakdown.
Remember, these are estimates. Your individual metabolism and body composition may vary. Adjust your intake based on your progress and how you feel.
function calculateTDEEAndMacros() {
var gender = document.getElementById("gender").value;
var age = parseFloat(document.getElementById("age").value);
var weight = parseFloat(document.getElementById("weight").value);
var height = parseFloat(document.getElementById("height").value);
var activityLevel = parseFloat(document.getElementById("activityLevel").value);
var goalAdjustment = parseFloat(document.getElementById("goal").value);
var bmr = 0;
if (isNaN(age) || isNaN(weight) || isNaN(height) || age <= 0 || weight <= 0 || height <= 0) {
alert("Please enter valid numbers for Age, Weight, and Height.");
return;
}
// Calculate BMR using Mifflin-St Jeor Equation
if (gender === "male") {
bmr = (10 * weight) + (6.25 * height) – (5 * age) + 5;
} else { // female
bmr = (10 * weight) + (6.25 * height) – (5 * age) – 161;
}
// Calculate TDEE
var tdee = bmr * activityLevel;
// Calculate Target Calories
var targetCalories = tdee + goalAdjustment;
// Calculate Macronutrients
var proteinGrams, fatGrams, carbGrams;
var proteinPercent, fatPercent, carbPercent;
if (targetCalories <= 0) {
alert("Calculated target calories are not positive. Please check your inputs.");
return;
}
// Example Macro Split: 35% Protein, 25% Fat, 40% Carbs (Adjustable)
// Prioritize protein, then fat, then carbs for a balanced approach
var proteinTargetPercent = 0.35; // 35%
var fatTargetPercent = 0.25; // 25%
var carbTargetPercent = 1.00 – proteinTargetPercent – fatTargetPercent; // Remaining % for carbs
proteinGrams = (targetCalories * proteinTargetPercent) / 4;
fatGrams = (targetCalories * fatTargetPercent) / 9;
carbGrams = (targetCalories * carbTargetPercent) / 4;
// Ensure percentages are rounded correctly
proteinPercent = (proteinGrams * 4) / targetCalories * 100;
fatPercent = (fatGrams * 9) / targetCalories * 100;
carbPercent = (carbGrams * 4) / targetCalories * 100;
// Display Results
document.getElementById("tdeeResult").textContent = tdee.toFixed(0);
document.getElementById("targetCaloriesResult").textContent = targetCalories.toFixed(0);
document.getElementById("proteinResult").textContent = proteinGrams.toFixed(0);
document.getElementById("proteinPercent").textContent = proteinPercent.toFixed(1);
document.getElementById("fatResult").textContent = fatGrams.toFixed(0);
document.getElementById("fatPercent").textContent = fatPercent.toFixed(1);
document.getElementById("carbsResult").textContent = carbGrams.toFixed(0);
document.getElementById("carbsPercent").textContent = carbPercent.toFixed(1);
document.getElementById("result").style.display = "block";
}