VETuner Open App →

Lambda and AFR

Two ways to measure the same thing

Lambda (lambda) and air-fuel ratio (AFR) both describe how much air is mixed with fuel relative to a chemically ideal mixture. They are two representations of the same quantity.

Lambda is a normalised ratio. lambda = 1.0 means exactly stoichiometric: neither lean nor rich. lambda < 1.0 is rich; lambda > 1.0 is lean. Lambda is fuel-independent: lambda = 0.85 means 15% rich regardless of whether you are running petrol, ethanol, or any other fuel.

AFR is the mass ratio of air to fuel. It depends on the fuel. Stoichiometric AFR for petrol is approximately 14.7:1; for ethanol it is 9.0:1; for E85 it is around 9.8:1.

The conversion is simple:

lambda = AFR / stoichiometric_AFR

Most wideband controllers can display either. Lambda is the more useful value when comparing across fuels or when communicating with other tuners.

Stoichiometric AFR by fuel

FuelStoichiometric AFR
Petrol (typical)14.7:1
Ethanol (E100)9.0:1
E85~9.8:1
LPG (propane)15.7:1
Methanol6.5:1
Diesel~14.5:1

E85 varies in practice: the ethanol percentage in pump E85 ranges from about 51% to 83% depending on season and region, so the stoichiometric AFR shifts accordingly. Flex-fuel systems measure ethanol content in real time; fixed E85 tunes typically assume a worst case or a local average.

Rich and lean in practice

A petrol engine does not always run at stoichiometry. Different operating conditions call for different lambda targets:

ConditionTypical lambdaReason
Idle (warm)0.97-1.03Near stoich for emissions and efficiency
Cruise (light load)0.95-1.05Economy, catalyst efficiency
Full load (power)0.82-0.90Charge cooling, knock suppression
Cold start0.70-0.85Compensates for poor atomisation
Overrun (decel)>1.2Closed throttle, minimal injection

The AFR target table in the ECU defines the target lambda (or AFR) for every cell in the RPM/load map. VETuner's VE Analysis compares the measured wideband lambda against this target to calculate VE corrections.

Narrowband vs wideband sensors

Narrowband (NBO2) sensors produce a step-change voltage near stoichiometry: high voltage when rich, low when lean, with a very narrow transition band around lambda = 1.0. They tell you which side of stoich you are on, but not by how much. Useful only for closed-loop idle trims near stoich.

Wideband (WBO2) sensors measure a continuous current proportional to oxygen content across a broad range, typically lambda = 0.65-1.6 or wider. They require a dedicated controller (Innovate, AEM, PLX, etc.) that converts the sensor current to a usable output (0-5 V analogue, serial, or CAN).

VETuner's VE Analysis requires a wideband sensor. A narrowband sensor provides only binary rich/lean information and cannot be used for accurate corrections.

Wideband accuracy and pitfalls

Wideband sensors are accurate in steady-state conditions but can give misleading readings when:

VETuner's dead lambda filter rejects sensor readings that are implausible or stuck, which catches some of these conditions, but physical checks on sensor placement and exhaust integrity are still necessary for clean data.

Lambda and knock

Running lean increases combustion temperature and the risk of knock (detonation). A common error on first tunes is running a lean mixture at full load in the belief that it is more economical. It is, briefly, right up until bits of your engine come out of the exhaust port, or the side of the block.

At full load, the fuelling target should be rich enough to keep combustion temperatures under control. The appropriate lambda depends on the engine, compression ratio, and fuel quality. For a mild road engine on 95-98 RON petrol, lambda = 0.85-0.88 at WOT is a reasonable starting point. Reduce if knock is present; do not lean out further to chase power without addressing knock first.

Configuring the correct stoichiometric AFR in the ECU

The stoichiometric AFR setting tells the ECU what AFR corresponds to lambda=1.0 for your fuel. If it is wrong, the ECU's AFR display and targets are calibrated against the wrong reference point.

The simplest way to see why this matters: an AFR reading of 14.7 on a petrol engine is stoichiometric and unremarkable. The same reading of 14.7 on an E85 engine means the actual lambda is 14.7 / 9.8 ~ 1.5, dangerously lean. If the ECU's stoich is set to 14.7 (petrol) on an E85 engine, the display and fuel targets will treat 14.7 as stoich, hiding a severely lean condition.

Always verify the stoichiometric AFR setting matches your actual fuel before tuning or interpreting data.