Tube feeding, or enteral nutrition, is a critical method of delivering nutrition to individuals who cannot meet their nutritional needs through oral intake alone. Precise calculation of the flow rate is essential to ensure the patient receives the correct amount of energy and fluids without overwhelming their digestive system or causing complications like aspiration or intolerance.
Medical Disclaimer: This calculator is for educational and planning purposes only. It is not a substitute for professional medical advice. Always consult with a Registered Dietitian (RD) or physician to determine specific nutritional requirements and feeding schedules.
How to Calculate Tube Feeding Rates
The calculation for a continuous or cyclic tube feeding regimen relies on three primary variables: the patient's daily caloric goal, the caloric density of the chosen formula, and the number of hours the feeding pump will run per day.
The Formula Logic
To determine the pump setting (Flow Rate), we use the following step-by-step logic:
Step 1: Determine Total Volume Needed. Divide the daily caloric goal by the caloric density of the formula.
Formula: Total Volume (mL) = Daily Calories (kcal) ÷ Density (kcal/mL)
Step 2: Determine Hourly Rate. Divide the total volume by the number of hours the feed runs.
Formula: Flow Rate (mL/hr) = Total Volume (mL) ÷ Hours (hr)
Example Calculation
Let's look at a realistic scenario for a patient requiring nutritional support:
Goal: 1,800 kcal per day.
Formula: Standard 1.5 kcal/mL formula (often used for volume restriction).
Schedule: Cyclic feeding over 20 hours (allowing a 4-hour break).
Step 1 (Volume): 1,800 kcal ÷ 1.5 kcal/mL = 1,200 mL total volume.
Step 2 (Rate): 1,200 mL ÷ 20 hours = 60 mL/hr.
In this scenario, the clinician would set the enteral feeding pump to 60 mL/hr.
Key Factors in Enteral Nutrition
Caloric Density
Enteral formulas typically come in standard densities. Choosing the right density depends on the patient's fluid restrictions and nutritional needs:
1.0 kcal/mL: Standard concentration, mimics normal fluid percentage (approx 85% water).
1.2 kcal/mL: Slightly concentrated, often higher protein.
1.5 kcal/mL: High energy, useful for patients who are volume sensitive (e.g., heart failure).
2.0 kcal/mL: Very high energy, used in severe fluid restriction (e.g., renal failure).
Feeding Schedules
While this calculator is optimized for Continuous or Cyclic feedings (which use a pump rate in mL/hr), feeding can also be administered via Bolus. Bolus feeding involves delivering larger volumes (e.g., 240mL) over short periods (10-20 mins) several times a day, mimicking normal meal patterns.
Water Flushes
Remember that the total volume of formula contributes to the patient's fluid needs, but rarely meets 100% of hydration requirements. Free water flushes are typically added to the regimen to prevent dehydration and keep the tube patent (unclogged).
// Handle Custom Density Toggle
var densitySelect = document.getElementById('tf-density');
var customDensityGroup = document.getElementById('custom-density-group');
densitySelect.onchange = function() {
if (this.value === 'custom') {
customDensityGroup.style.display = 'block';
} else {
customDensityGroup.style.display = 'none';
}
};
function calculateTubeFeeding() {
// 1. Get DOM elements
var caloriesInput = document.getElementById('tf-calories');
var densitySelect = document.getElementById('tf-density');
var customDensityInput = document.getElementById('tf-density-custom');
var hoursInput = document.getElementById('tf-hours');
var resultDiv = document.getElementById('tf-result');
var errorDiv = document.getElementById('tf-error');
var resRate = document.getElementById('res-rate');
var resVolume = document.getElementById('res-volume');
var resGoal = document.getElementById('res-goal');
var resDuration = document.getElementById('res-duration');
// 2. Parse values
var calories = parseFloat(caloriesInput.value);
var hours = parseFloat(hoursInput.value);
var density = parseFloat(densitySelect.value);
// Check for custom density
if (densitySelect.value === 'custom') {
density = parseFloat(customDensityInput.value);
}
// 3. Reset UI
errorDiv.style.display = 'none';
resultDiv.style.display = 'none';
// 4. Validation
if (isNaN(calories) || calories <= 0) {
showError("Please enter a valid daily caloric goal.");
return;
}
if (isNaN(density) || density <= 0) {
showError("Please select or enter a valid formula caloric density.");
return;
}
if (isNaN(hours) || hours 24) {
showError("Please enter a valid duration (1-24 hours).");
return;
}
// 5. Calculation Logic
// Total Volume (mL) = Total Calories (kcal) / Density (kcal/mL)
var totalVolume = calories / density;
// Flow Rate (mL/hr) = Total Volume (mL) / Hours
var flowRate = totalVolume / hours;
// 6. Formatting Output
// Pumps typically allow 1 decimal place or whole numbers. We'll show 1 decimal.
var displayRate = flowRate.toFixed(1);
var displayVolume = Math.round(totalVolume); // Total volume usually tracked as whole mL
// 7. Update DOM
resRate.innerHTML = displayRate + " mL/hr";
resVolume.innerHTML = displayVolume.toLocaleString() + " mL";
resGoal.innerHTML = calories.toLocaleString() + " kcal";
resDuration.innerHTML = hours + " hours";
resultDiv.style.display = 'block';
}
function showError(msg) {
var errorDiv = document.getElementById('tf-error');
errorDiv.innerHTML = msg;
errorDiv.style.display = 'block';
}