Air-Fuel Ratio (AFR) Calculator
Find the air-fuel ratio from air and fuel mass, convert it to lambda (λ) and equivalence ratio (φ), and check if a mixture is rich, stoichiometric, or lean.
Air-Fuel Ratio (AFR) Calculator
Stoichiometric
λ near 1.00. The chemically ideal mix — best for the catalytic converter and low emissions during cruise and idle.
Mixture on the lambda scale
Air vs fuel (by mass)
Reverse solver
Set a target AFR to find the fuel mass needed for your air mass, and the air mass needed for your fuel mass.
How it is calculated
AFR = mass of air ÷ mass of fuel λ = AFR ÷ stoichiometric AFR
AFR = 14.70 ÷ 1.00 = 14.70
Lambda (λ) normalises the ratio so it means the same thing for any fuel: λ = 1 is a chemically complete (stoichiometric) burn, λ < 1 is rich (extra fuel), and λ > 1 is lean (extra air).
Documentation
What is the air-fuel ratio?
The air-fuel ratio (AFR) is the mass of air an engine burns for every unit of mass of fuel. An AFR of 14.7 means the engine burns 14.7 grams of air for each gram of fuel. This calculator computes the AFR from an air mass and a fuel mass, then converts it to lambda (λ) and the equivalence ratio (φ), two scales used to judge whether a mixture is rich, ideal, or lean.
Air-fuel ratio formula
AFR equals the mass of air divided by the mass of fuel:
AFR is a ratio, not a measurement of volume or energy, so any consistent mass unit works. Grams, kilograms, and pounds all give the same number, as long as air and fuel are measured in the same unit.
Lambda and the equivalence ratio
Lambda (λ) rescales the AFR so that 1.00 always marks the perfect mixture, whatever the fuel:
AFR_stoich is the stoichiometric air-fuel ratio, the exact ratio at which all the fuel and all the oxygen are used up together, with nothing left over. It is different for each fuel. An AFR of 14.7 is close to ideal for gasoline but noticeably lean for E85, because E85 needs much less air per gram of fuel.
A mixture with λ below 1 is rich: it has more fuel than the ideal amount. A mixture with λ above 1 is lean: it has more air than the ideal amount. The equivalence ratio (φ) is the inverse of lambda. On the φ scale, a value above 1 means rich, and a value below 1 means lean.
A wideband oxygen sensor measures lambda directly from the exhaust gas. The AFR shown on a gauge is calculated by multiplying that lambda reading by the stoichiometric AFR of the chosen fuel. Selecting the wrong fuel produces the wrong AFR reading even when the sensor itself is accurate.
Stoichiometric AFR by fuel
| Fuel | Stoichiometric AFR | Fuel | Stoichiometric AFR |
|---|---|---|---|
| Gasoline | 14.7 | Methanol | 6.47 |
| Diesel | 14.5 | LPG / propane | 15.5 |
| E10 (10% ethanol) | 14.08 | CNG / methane | 17.2 |
| E85 | 9.76 | Hydrogen | 34.3 |
| Ethanol (E100) | 9.0 |
Rich, stoichiometric, and lean mixtures
Lambda gives a fuel-independent scale for reading a mixture:
| Lambda (λ) | Mixture | What it means |
|---|---|---|
| ≤ 0.85 | Very rich | Large excess of fuel. Wastes fuel, but the extra fuel cools the combustion charge, which protects turbocharged engines under heavy load. |
| 0.85 – 0.97 | Rich | Typical range for maximum power at wide-open throttle, usually near λ 0.85–0.90. |
| 0.97 – 1.03 | Stoichiometric | The chemically ideal mix. A catalytic converter works best here, so engines target it at cruise and idle. |
| 1.03 – 1.10 | Lean | Improves fuel economy at light load, but raises combustion temperature under load. |
| > 1.10 | Very lean | Risk of misfire, and under load, risk of detonation and heat damage. |
How to calculate air-fuel ratio
- Select the fuel. This sets the stoichiometric AFR used to compute lambda and the verdict.
- Enter the air mass and the fuel mass in the same unit. Grams are used here, but any consistent mass unit gives the same ratio.
- Read the AFR, lambda, and φ, along with the rich, stoichiometric, or lean verdict.
- Use the reverse solver to enter a target AFR and find the fuel mass needed for a given air mass, or the air mass needed for a given fuel mass.
Example
An engine draws in 190 g of air and burns 12 g of gasoline.
λ = 1.08 falls in the lean range (1.03 to 1.10). The mixture has more air than the ideal amount for gasoline, typical of a light-load, fuel-economy setting.
Calculate it in code
Each snippet takes an air mass, a fuel mass, and the stoichiometric AFR for the fuel, and returns AFR and lambda.
1=A2/B2 ' AFR (A2 = air mass, B2 = fuel mass)
2=(A2/B2)/C2 ' Lambda (C2 = stoichiometric AFR, e.g. 14.7)
31def afr_lambda(air_mass, fuel_mass, stoich=14.7):
2 afr = air_mass / fuel_mass
3 return afr, afr / stoich
4
5print(afr_lambda(190, 12)) # (15.8333..., 1.0770...)
61function afrLambda(airMass, fuelMass, stoich = 14.7) {
2 const afr = airMass / fuelMass;
3 return { afr, lambda: afr / stoich };
4}
5console.log(afrLambda(190, 12)); // { afr: 15.8333..., lambda: 1.0770... }
61double afr = airMass / fuelMass;
2double lambda = afr / stoich; // stoich e.g. 14.7
31double afr = airMass / fuelMass;
2double lambda = afr / stoich; // stoich e.g. 14.7
31double afr = airMass / fuelMass;
2double lambda = afr / stoich; // stoich e.g. 14.7
31afr := airMass / fuelMass
2lambda := afr / stoich // stoich e.g. 14.7
31let afr = air_mass / fuel_mass;
2let lambda = afr / stoich; // stoich e.g. 14.7
31$afr = $airMass / $fuelMass;
2$lambda = $afr / $stoich; // $stoich e.g. 14.7
31afr = air_mass / fuel_mass
2lambda = afr / stoich # stoich e.g. 14.7
31afr <- air_mass / fuel_mass
2lambda <- afr / stoich # stoich e.g. 14.7
3Frequently asked questions
Do the units matter? No. AFR is a ratio, so grams, kilograms, or pounds all give the same number, as long as air and fuel use the same unit.
Is a higher AFR always better? No. A higher, leaner AFR can improve fuel economy but raises combustion temperature. A lower, richer AFR helps make power and cools the combustion charge, but wastes fuel and raises emissions. The right target depends on engine load and fuel.
Why does the same AFR look different for two fuels? Because each fuel has its own stoichiometric AFR. An AFR of 14.7 is ideal for gasoline but lean for E85. Lambda (λ = 1.00) removes this problem by marking the ideal mix the same way for any fuel.
What is the stoichiometric AFR? It is the exact air-fuel ratio at which all the fuel and all the oxygen in the air are consumed together, with none left over. It is 14.7 for gasoline and 9.76 for E85.
What does a wideband oxygen sensor measure? It measures lambda directly from the oxygen content of the exhaust gas. Tuning software then converts that lambda reading to an AFR using the stoichiometric AFR of the selected fuel.
Sources
- Air–fuel ratio — Wikipedia — definitions and stoichiometric AFR values by fuel.
- Air-Fuel Ratios, Lambda, and Stoichiometry Explained — HP Tuners — lambda vs AFR and tuning targets.
- Air fuel ratio — x-engineer.org — first-principles derivation of stoichiometric AFR and lambda.