OBD-II Code · Powertrain
P0091
Fuel Pressure Regulator 1 Control Circuit Low
Severity
high
Left alone, this one tends to take other parts with it.
Can you drive it
Not for long
Driving on this one risks further damage. Get it to a shop rather than carrying on with it.
Indicative cost (USD)
$300–$900
Varies by vehicle, diagnosis, parts, and local labor. This is not a repair quote.
HP regulator circuit low.
How a shop works this
Work from evidence to part, not the other way round. A code names a circuit or a symptom; it does not name the part that failed.
Note every code that is set, not just this one.
Codes that appear together usually narrow the cause faster than any one of them read alone.
Read the freeze frame — the conditions the fault was recorded under.
Cold or warm, idle or load, road speed and engine speed. A fault that only appears cold is a different fault from one that only appears under load, even with the same code on the scanner.
Confirm the fault is current rather than history.
Clear the code and see whether it returns under those same conditions. A code that does not come back may have been logged during a repair, a flat battery, or a bad connection that has since been disturbed.
Then work the likely-causes list in the order shown.
That order is what a shop checks first for this code — wiring and connections before the component they run to, because a connector costs nothing to inspect and is a common answer.
If the code comes back after a repair, the underlying fault is still there. That is the point to bring in a scanner with live data and freeze-frame, or a shop that has one.
Common symptoms
- Hard start
- No-start
- Stall
Likely causes
- Short to groundMost common
- Failed regulator
Read the full diagnostic procedureP0091 specifies the fuel pressure regulator control circuit is reading low voltage, meaning either a short to ground on the control wire or an open i…
P0091 specifies the fuel pressure regulator control circuit is reading low voltage, meaning either a short to ground on the control wire or an open in the supply path to the solenoid.
Cheapest first
- with key on and engine off, back-probe the regulator control wire and measure voltage; you should see battery voltage when the ECM is not pulsing, or a PWM waveform once the engine starts.
- A reading of 0.0 to 0.3 volts steady indicates a hard short to ground in the harness.
- Unplug the regulator and recheck at the harness connector to isolate the regulator itself from the wiring.
- Measure regulator coil resistance: a shorted internal winding will read below 0.5 ohms and pull the circuit voltage to near zero.
- Inspect the harness routing along sharp edges, exhaust components, and crossover brackets where chafing is common.
- Caveat: a failing ECM low-side driver can mimic a wiring short, but driver failure is rare on modern controllers; exhaust harness diagnosis first.
Vehicle-specific patternsDodge Ram Cummins 6.7L (2007-2018) FCA pigtail chafing against the engine block sets P0091 specifically when the wire shorts to ground.
- 2007-2018Dodge Ram Cummins 6.7L FCA pigtail chafing against the engine block sets P0091 specifically when the wire shorts to ground. Duramax LMM 6.6L (2007-2010 Silverado HD) sees P0091 from the FPR harness rubbing on the high-pressure fuel line bracket.
- 2011-2019Ford 6.7L Power Stroke sets P0091 from CP4.2 pump pressure control valve internal short, often a precursor to full pump failure. BMW N20 and N26 2.0T (2012-2016 328i, 528i, X3) sets P0091 from a failed HPFP metering valve internal short.
Estimated repair$40 to $1,400.
Look up another code
P0091 — frequently asked
What does a P0091 code mean?
HP regulator circuit low.
What causes a P0091 code?
Common causes: Short to ground; Failed regulator.
What are the symptoms of a P0091 code?
Typical symptoms: Hard start; No-start; Stall.
Is it safe to drive with a P0091 code?
Not for long. Driving on this one risks further damage. Get it to a shop rather than carrying on with it. Estimated repair: $300-$900.
How do I diagnose a P0091 code?
Work from evidence to part, not the other way round. A code names a circuit or a symptom; it does not name the part that failed. 1. Note every code that is set, not just this one. 2. Read the freeze frame — the conditions the fault was recorded under. 3. Confirm the fault is current rather than history. 4. Then work the likely-causes list in the order shown.
More free tools