Stoichiometric air-fuel ratio control during transient operation requires an accurate estimate or measurement of the instantaneous air flow rate in an engine. Two methods are commonly used for determining engine air flow rate: air-mass sensing and conventional “speed-density.” The lead air flow information provided by air-mass sensors helps compensate for manifold filling and other fuel system delays. However, the high cost (and sometimes lower reliability) of air-mass sensors has led many manufacturers to continue to use the less accurate speed-density method for determining air flow rate.This paper develops a model-based nonlinear manifold pressure observer that estimates the flow rates at the throttle and the intake ports of an engine using speed-density type sensors. The throttle flow rate estimate can be used instead of an air-mass sensor to provide the lead information necessary for accurate transient air-fuel control on TBI engines. The intake port flow rate estimate can be used on PFI engines to provide filtered approximations of port flow rates that do not contain phase lag. The estimates are achieved by embedding a simplified throttle and intake manifold model into the controller. Flow estimates are corrected in real-time by comparing a prediction of manifold pressure to measured manifold pressure.The observer's performance is simulated on a mean value, throttle-body-injected, natural-gas engine model. The elimination of wall wetting dynamics in this type of engine makes it an ideal candidate for the nonlinear observer presented here. Similar results could be expected with gasoline engines, although compensation for liquid fuel dynamics poses additional difficulties.Simulation results indicate that air-fuel control similar to that of a fast air-mass sensor can be achieved using the nonlinear observer. Although not presented here, versions of the observer have been successfully implemented on V8 engines with significantly different manifold filling characteristics. The computational complexity of the observer is simple enough to allow implementation on current eight bit engine controllers.