Convert chemical molar flows into mass-based engineering units instantly.
mol/s
mol/min
mol/h
kmol/s
kmol/h
g/s
g/h
kg/s
kg/min
kg/h
lb/h
How to Convert Molar Flow Rate to Mass Flow Rate
In chemical engineering and fluid dynamics, it is frequently necessary to switch between molar measurements (counting molecules) and mass measurements (weighing the substance). The relationship between these two metrics is governed by the molar mass of the chemical species involved.
The fundamental formula for this conversion is:
Mass Flow Rate (ṁ) = Molar Flow Rate (ṅ) × Molar Mass (M)
Step-by-Step Calculation Guide
Identify the Molar Flow Rate: Determine how many moles of the substance are passing through a point per unit of time (e.g., 10 kmol/h).
Find the Molar Mass: Look up the atomic or molecular weight of the substance in g/mol. For example, Oxygen (O₂) is approximately 32.00 g/mol.
Perform the Multiplication: Multiply the flow rate by the molar mass.
Adjust for Units: Ensure that your time units (seconds, minutes, hours) and mass units (grams, kilograms, pounds) are consistent with your engineering requirements.
Practical Example: Nitrogen Flow
Suppose you have a nitrogen gas (N₂) stream flowing at 5 mol/s. We want to find the mass flow rate in kg/h.
Process engineers use mass flow rates for sizing pumps, pipes, and storage tanks because mass is conserved in a system. Conversely, molar flow rates are essential for stoichiometry—understanding how many molecules of reactant are needed to create a specific amount of product in a chemical reactor. This calculator bridges the gap between the chemistry of the reaction and the mechanical design of the plant.
function calculateMassFlow() {
var molarValue = parseFloat(document.getElementById("molarValue").value);
var molarUnit = document.getElementById("molarUnit").value;
var molarMass = parseFloat(document.getElementById("molarMass").value);
var massUnit = document.getElementById("massUnit").value;
var resultArea = document.getElementById("resultArea");
var resultText = document.getElementById("resultText");
if (isNaN(molarValue) || isNaN(molarMass) || molarValue <= 0 || molarMass <= 0) {
alert("Please enter valid positive numbers for flow rate and molar mass.");
return;
}
// Step 1: Convert input to base unit: mol/s
var molPerSec = 0;
if (molarUnit === "mol_s") {
molPerSec = molarValue;
} else if (molarUnit === "mol_min") {
molPerSec = molarValue / 60;
} else if (molarUnit === "mol_h") {
molPerSec = molarValue / 3600;
} else if (molarUnit === "kmol_s") {
molPerSec = molarValue * 1000;
} else if (molarUnit === "kmol_h") {
molPerSec = (molarValue * 1000) / 3600;
}
// Step 2: Convert mol/s to g/s using Molar Mass (g/mol)
var gramsPerSec = molPerSec * molarMass;
// Step 3: Convert g/s to target unit
var finalResult = 0;
var unitLabel = "";
if (massUnit === "g_s") {
finalResult = gramsPerSec;
unitLabel = "g/s";
} else if (massUnit === "g_h") {
finalResult = gramsPerSec * 3600;
unitLabel = "g/h";
} else if (massUnit === "kg_s") {
finalResult = gramsPerSec / 1000;
unitLabel = "kg/s";
} else if (massUnit === "kg_min") {
finalResult = (gramsPerSec / 1000) * 60;
unitLabel = "kg/min";
} else if (massUnit === "kg_h") {
finalResult = (gramsPerSec / 1000) * 3600;
unitLabel = "kg/h";
} else if (massUnit === "lb_h") {
// 1 gram = 0.00220462 lbs
finalResult = (gramsPerSec * 0.00220462) * 3600;
unitLabel = "lb/h";
}
// Display Result
resultArea.style.display = "block";
resultText.innerHTML = "Calculated Mass Flow Rate:" +
finalResult.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 4}) +
" " + unitLabel + "";
}