P0087 Code Duramax – Causes and Fixes

No one likes to see an illuminated check engine light on their dashboard, but it can be particularly troubling if the scan tool throws a code indicating a serious issue with your fuel system.

One such code is Duramax’s P0087.

Read on to learn what the P0087 Duramax code means, its possible causes, and how to fix it.

P0087 Code Duramax (Causes and Fixes)

Code Summary

The P0087 code is a diagnostic trouble code (DTC) for “Fuel Rail Pressure Too Low.”

It indicates an issue with the amount of pressure in the fuel rail system and triggers when the fuel rail pressure is lower than the amount specified by the manufacturer.

The PCM, or powertrain control module, monitors this information using sensors throughout the engine and will store this DTC if it finds any discrepancies between what it expects and what it sees.

Duramax Fuel Rail Pressure Specs

To understand why a P0087 code is triggered, it’s essential to know the fuel rail pressure specs for a Duramax.

Minimum CrankingMinumum IdleMax Running (Pre-2006)Max Running (2006-2010)Max Running (Post-2010)
1,500 PSI5,000 PSI23,000 PSI26,000 PSI29,000 PSI


Symptoms of a P0087 code on a Duramax can vary depending on how bad the root issue is.

In addition to reduced power and acceleration, difficulty starting the engine, and the check engine light turning on, other symptoms may indicate a fuel pressure problem.

You may experience rough idling, notice your vehicle stalling when accelerating quickly, or even hear unusual noises from the engine, such as knocking or ticking.

If your vehicle shows any of these signs or symptoms, taking your vehicle in for inspection by a professional mechanic as soon as possible is vital to avoid further damage or safety issues.


Before you can fix the P0087 error code in your Duramax engine, you’ll need to find the root cause.

While this list isn’t comprehensive, it does discuss five of the most frequent culprits behind low fuel rail pressure:

Fuel Pump Malfunction

A faulty fuel pump is one of the most common causes of a P0087 error code on a Duramax engine.

The fuel pump is responsible for pressurizing the fuel system and delivering fuel to the engine. If it fails to do so, the fuel rail pressure can drop below the manufacturer’s specifications, triggering a P0087 code.

Clogged Fuel Filter

Another issue that can activate the code is a clogged fuel filter.

The fuel filter’s job is crucial to diesel performance because it stops debris from reaching the engine. Over time, the filter can become dirty and clogged, reducing the amount of fuel reaching the engine and causing a pressure drop.

Faulty Fuel Pressure Regulator

The fuel pressure regulator maintains consistent fuel pressure in the system. Faults in the regulator can cause the fuel rail pressure to drop below the minimum threshold.

Kinked Fuel Lines

The fuel lines carry fuel from the tank to the engine, so if they become kinked or blocked, it can prevent the fuel rail from building up enough PSI to crank your engine.

Camshaft Lobe Wear on the Pump Drives

Your diesel engine might throw a P0087 if there is any wear on the pump drive’s camshaft lobe.

The camshaft lobe drives the fuel pump and forces the valves open, so wear and tear can cause reverse flow or dry fuel lines over time.

Proper lubrication during installation and regular oil changes can help prevent this issue.

P0087 Code Duramax (Causes and Fixes)

How To Fix It?

To fix the P0087 error code on a Duramax engine, you’ll first need to identify the root cause of the problem.

Start with the easiest fix: swapping out the fuel filter, especially if it’s been more than 15,000 miles since you last changed it.

Next, use a scan tool to check the fuel pressure sensor readings and compare them to the specs. If the readings are below the recommended ranges, you may need to replace the fuel pressure regulator. Alternatively, the issue could be the sensor itself.

You’ll also want to check your fuel lines and connectors for leaks or kinks, then replace any damaged components.

Once you’ve repaired the underlying cause of the P0087, use a scan tool to clear the error code from the vehicle’s computer.

How Serious is it?

The P0087 error code on a Duramax engine is a serious issue that can lead to engine damage if not addressed quickly. It is crucial to diagnose the root cause of the error code and take the necessary steps to repair it.

If you don’t fix the problem, it can decrease engine performance and cause long-term damage.

Can You Fix the Error Yourself?

It may be possible to fix the P0087 error code on a Duramax engine yourself, depending on the underlying cause of the problem.

If you have experience working on diesel engines and have the proper tools and diagnostic equipment, you may be able to diagnose and fix the issue yourself.

However, modern diesel engines are complex, and there are potential safety risks involved in working on them. We recommend seeking the assistance of a qualified mechanic or technician.

When to See a Mechanic

If you’re unsure of your abilities or unfamiliar with the vehicle’s fuel system, seek professional assistance to avoid causing further damage or safety risks.

One advantage of seeking a qualified professional is that they have access to specialized tools and diagnostic equipment for correctly diagnosing and repairing your vehicle.

Their expertise and tools can quickly identify any underlying issues causing your diesel engine’s poor performance and help you get back on the road faster.


The P0087 code on a Duramax engine needs to be addressed quickly. It can cause severe damage and costly repairs to your internal combustion system if left unchecked.

Taking care of this issue now will save you money, time, and frustration in the future – so don’t wait.

Avatar photo

Author: Dave Johnston

Dave is a hands-on automotive technician with experience in performing service, diagnostics, and repairs on domestic and imported vehicles. He enjoys writing and sharing his knowledge far and wide.

Leave a Reply

Your email address will not be published. Required fields are marked *