Medical Disclaimer: This calculator is for educational purposes for healthcare professionals. Titration protocols may vary by institution and patient tolerance. Always verify calculations against institutional policy and manufacturer prescribing information.
Understanding Rituxan Infusion Rate Calculations
Rituximab (Rituxan) is a monoclonal antibody used in the treatment of various conditions, including Non-Hodgkin's Lymphoma (NHL), Chronic Lymphocytic Leukemia (CLL), and Rheumatoid Arthritis (RA). Because Rituxan can cause severe infusion-related reactions, specific titration protocols are used to ensure patient safety.
The Standard Titration Protocol
Rituximab is typically administered intravenously at a concentration of 1 mg/mL to 4 mg/mL. The infusion rate is measured in milligrams per hour (mg/hr), which must be converted to milliliters per hour (mL/hr) for the infusion pump setting.
Initial Infusion Strategy
For the first dose, the standard recommendation is to begin the infusion slowly:
Starting Rate: 50 mg/hr
Increments: If tolerated, increase the rate by 50 mg/hr every 30 minutes.
Maximum Rate: 400 mg/hr.
Subsequent Infusion Strategy
If the patient tolerated the first infusion well, subsequent doses can often be started at a higher rate:
Starting Rate: 100 mg/hr
Increments: Increase the rate by 100 mg/hr every 30 minutes.
Maximum Rate: 400 mg/hr.
Calculation Formula
To determine the pump rate in mL/hr, use the following logic:
Concentration (mg/mL) = Total Dose (mg) / Total Volume (mL)
If a patient is prescribed 750 mg of Rituxan in a 500 mL bag of Normal Saline:
Concentration: 750 mg / 500 mL = 1.5 mg/mL
Initial Rate (50 mg/hr): 50 / 1.5 = 33.3 mL/hr
Second Step (100 mg/hr): 100 / 1.5 = 66.7 mL/hr
Safety Considerations
Patients must be closely monitored for signs of cytokine release syndrome, fever, chills, and hypotension. If an infusion reaction occurs, the infusion should be slowed or stopped immediately according to clinical guidelines and resumed at a 50% reduction in rate once symptoms resolve.
function calculateRituxanRate() {
var dose = parseFloat(document.getElementById('rituxanDose').value);
var volume = parseFloat(document.getElementById('bagVolume').value);
var resultDiv = document.getElementById('rituxanResult');
var concentrationSpan = document.getElementById('calcConcentration');
var initialBody = document.getElementById('initialTableBody');
var subsequentBody = document.getElementById('subsequentTableBody');
if (isNaN(dose) || isNaN(volume) || dose <= 0 || volume <= 0) {
alert("Please enter valid positive numbers for dose and volume.");
return;
}
var concentration = dose / volume;
concentrationSpan.innerText = concentration.toFixed(2);
// Clear previous tables
initialBody.innerHTML = "";
subsequentBody.innerHTML = "";
// Initial Infusion: 50, 100, 150… up to 400
var initialRates = [50, 100, 150, 200, 250, 300, 350, 400];
for (var i = 0; i < initialRates.length; i++) {
var mgHr = initialRates[i];
var mlHr = mgHr / concentration;
var row = initialBody.insertRow();
var cell1 = row.insertCell(0);
var cell2 = row.insertCell(1);
var cell3 = row.insertCell(2);
cell1.innerText = (i === 0) ? "Start" : (i * 30) + " mins";
cell2.innerText = mgHr + " mg/hr";
cell3.innerText = mlHr.toFixed(1) + " mL/hr";
}
// Subsequent Infusion: 100, 200, 300, 400
var subRates = [100, 200, 300, 400];
for (var j = 0; j < subRates.length; j++) {
var mgHrSub = subRates[j];
var mlHrSub = mgHrSub / concentration;
var rowSub = subsequentBody.insertRow();
var cell1Sub = rowSub.insertCell(0);
var cell2Sub = rowSub.insertCell(1);
var cell3Sub = rowSub.insertCell(2);
cell1Sub.innerText = (j === 0) ? "Start" : (j * 30) + " mins";
cell2Sub.innerText = mgHrSub + " mg/hr";
cell3Sub.innerText = mlHrSub.toFixed(1) + " mL/hr";
}
resultDiv.style.display = "block";
resultDiv.scrollIntoView({ behavior: 'smooth' });
}