top-50-diesel-obd2-codes-fleet

Top 50 Diesel OBD-II Codes for Fleet Trucks

By Alex Rowan on September 23, 2026

These are the 50 diesel OBD-II codes fleet shops meet most often, grouped by system: fuel and injection, air and boost, EGR, DPF and exhaust, SCR with DEF and NOx, and the engine and electrical faults that sit behind them. A P-code tells you which circuit or system reported a problem and roughly how, but not which part failed — so each code below is paired with where to start looking. One caution before you scan: P-codes come from the SAE J2012 standard used on light- and medium-duty vehicles, while most Class 7 and 8 trucks report faults as J1939 SPN and FMI numbers instead, so the tool and connector matter as much as the list. Book a demo to see codes turned into scheduled work orders, or create a free account and start logging faults per truck.

Diagnostics reference · Diesel fault codes

Fifty Codes Cover Most of What Rolls Into the Shop. Here They Are, Grouped by System.

For fleet mechanics, shop leads and maintenance managers: a working reference of the diesel OBD-II codes you'll see most, what each one really means and where to begin diagnosing it.

Before you scan

P-Codes or J1939 Codes? Know Which Language Your Truck Speaks

P-codes are part of the SAE J2012 standard written for passenger cars, light-duty and medium-duty trucks, and they're read through the 16-pin OBD-II connector; Mitchell 1 notes that technicians now see them in medium-duty and even a few heavy-duty trucks. Most Class 7 and 8 trucks, though, report faults in J1939 format as an SPN (suspect parameter number) with an FMI (failure mode identifier), usually through a 9-pin Deutsch connector — and a basic OBD-II scanner generally can't read them. You can keep both code types on one truck record with a free account.

P-codes, the OBD-II format

  • Five characters, such as P0401
  • Standard meaning across makes under SAE J2012
  • Read on the 16-pin OBD-II connector
  • Common on light and medium-duty trucks and vans

SPN and FMI, the J1939 format

  • A parameter number plus a failure mode, such as SPN 157 FMI 18
  • Used across engine, transmission, brakes and aftertreatment modules
  • Usually read on a 9-pin Deutsch connector
  • Standard on Class 7 and 8 trucks

Sources: Mitchell 1 on P-codes in commercial vehicles; SAE J1939 protocol summaries. Code text below follows the generic SAE definitions — your engine maker's wording may differ slightly.

The list

The Fifty Diesel OBD-II Codes Fleet Mechanics See Most, Grouped by System

Work down from the code to the system, then to the first check. Nothing here replaces the engine maker's service information, but it tells you where a code belongs and what usually causes it. We can map your own most frequent codes to this list in a demo. Swipe the tables on mobile.

Fuel and injection codes

10 codes
CodeWhat it meansWhere to start
P0087Fuel rail or system pressure too lowFilters, supply restriction, air in fuel, then pump and valves
P0088Fuel rail or system pressure too highPressure control valve, return circuit, rail sensor
P0089Fuel pressure regulator performanceRegulator response versus commanded pressure; check supply first
P0090Fuel pressure regulator control circuitConnector, wiring and coil at the regulator
P0093Fuel system large leak detectedVisible leaks, injector return lines, high-pressure fittings
P0148Fuel delivery errorDelivered versus commanded fuel; supply, pump and injectors
P0191Fuel rail pressure sensor range or performanceSensor reading against a known-good gauge
P0192Fuel rail pressure sensor circuit lowSensor wiring, connector corrosion, sensor itself
P0201Injector circuit open, cylinder 1Injector connector and harness for that cylinder
P0263Cylinder 1 contribution or balance faultInjector performance, compression, fuel supply to that cylinder

Air, boost and intake codes

8 codes
CodeWhat it meansWhere to start
P0101Mass air flow sensor range or performanceIntake leaks, dirty sensor, restricted air filter
P0102Mass air flow sensor circuit lowSensor wiring and connector, then the sensor
P0103Mass air flow sensor circuit highSensor wiring short, then the sensor
P0107Manifold or barometric pressure sensor circuit lowSensor, connector and vacuum or pressure line
P0108Manifold or barometric pressure sensor circuit highSensor wiring, then the sensor
P0234Turbocharger overboost conditionStuck variable geometry vanes, wastegate, boost control
P0299Turbocharger underboost conditionCharge air leaks, clamps, turbo actuator, restricted intake
P0045Turbocharger boost control solenoid circuitActuator wiring, connector and solenoid

EGR system codes

7 codes
CodeWhat it meansWhere to start
P0401Insufficient EGR flowCarbon buildup in the valve or passages, cooler restriction
P0402Excessive EGR flowValve stuck open, position sensor, control fault
P0403EGR control circuitActuator wiring, connector and control module output
P0404EGR control circuit range or performanceValve movement versus command; clean or replace the valve
P0405EGR position sensor circuit lowSensor and wiring at the valve
P0409EGR sensor circuitSensor, connector and harness
P0490EGR control circuit highShorted wiring or failed actuator

DPF and exhaust aftertreatment codes

9 codes
CodeWhat it meansWhere to start
P2002Particulate filter efficiency below thresholdSoot loading, pressure sensor lines, failed regenerations
P2003Particulate filter efficiency below threshold, bank 2Same checks on the second bank where fitted
P242FParticulate filter restriction, ash accumulationFilter is due for a cleaning service, not a sensor fault
P2452Particulate filter pressure sensor circuitSensor, connector and pressure tubes
P2453Particulate filter pressure sensor range or performancePlugged or cracked pressure tubes are common
P2454Particulate filter pressure sensor circuit lowWiring and connector at the sensor
P2459Particulate filter regeneration frequencyDuty cycle, short trips, idling, upstream faults
P0420Catalyst system efficiency below thresholdOxidation catalyst condition, exhaust leaks, sensors
P0544Exhaust gas temperature sensor circuitSensor, harness routing and connector at the exhaust

SCR, DEF and NOx codes

9 codes
CodeWhat it meansWhere to start
P203FReductant level too lowDEF level, level sensor, quality of the fluid added
P204FReductant system performanceDosing, DEF quality, injector, NOx sensors, exhaust leaks
P205BReductant tank temperature sensor rangeSensor and tank heater circuit
P207FReductant quality performanceTest the DEF; off-spec or diluted fluid is common
P20E8Reductant pressure too lowPump, filter, lines, injector restriction
P20E9Reductant pressure too highBlocked return, injector stuck closed, pump control
P20EESCR NOx catalyst efficiency below thresholdDosing, DEF quality, NOx sensors, catalyst condition
P2200NOx sensor circuitSensor wiring, connector and module
P2201NOx sensor circuit range or performanceSensor readings against expected values; check for exhaust leaks

Engine, electrical and sensor codes

7 codes
CodeWhat it meansWhere to start
P0016Crankshaft and camshaft position correlationTiming components, sensor mounting, tone wheels
P0117Engine coolant temperature sensor circuit lowSensor and wiring; check actual coolant temperature
P0128Coolant thermostat below regulating temperatureStuck-open thermostat, sensor reading
P0300Random or multiple cylinder misfireFuel supply, injectors, compression, air leaks
P0335Crankshaft position sensor circuitSensor, air gap, tone wheel damage, wiring
P0380Glow plug or heater circuitGlow plug relay, wiring, individual plugs
P0562System voltage lowCharging system, batteries, cables and grounds
Read it right

What a Diesel Fault Code Does and Doesn't Tell You About the Repair

A code names the circuit or system that failed a test, along with a failure type — too high, too low, no signal, out of range. It doesn't name the broken part, and codes that mention a sensor often come from what the sensor is measuring rather than the sensor itself. That distinction is where most wasted parts spending starts. Log the confirmed cause with every code for free.

What the code tells you

  • Which system or circuit reported the fault
  • The failure type: high, low, open, out of range
  • Whether it is active now or stored from earlier
  • Freeze-frame conditions when it set

What it doesn't tell you

  • Which component actually failed
  • Whether wiring or the part is at fault
  • Whether an upstream problem caused it
  • Whether the truck is safe to keep driving

Turn the codes your trucks send into scheduled repairs

In 30 minutes we'll show how FleetRabbit takes fault codes from your telematics, opens a work order with the code and history attached, and flags the codes that keep coming back on the same unit.

Next steps

What to Do After You Pull a Code, Before Anyone Orders a Part

The same five steps work for any code on the list, and they keep a repeat fault from starting the diagnosis over. Record each result on the work order, and pull codes automatically where you have OEM telematics connected. See this sequence inside a work order in a demo.

Record every code, active and inactiveWith freeze-frame data, before anything is cleared.
Check for related codes firstA supply or power fault can set several codes at once.
Verify the reading against realityCompare sensor values with a gauge or a known-good unit.
Inspect wiring and connectorsCorrosion and chafing imitate failed components.
Repair, clear, then verify on a drive cycleClose the job only when the code stays gone.
Prevention

The Codes You Can Stop Seeing With Better Preventive Maintenance

A large share of the list traces back to a handful of maintenance items: fuel filters, air filters and charge-air leaks, DEF quality, EGR soot and battery and ground condition. Schedule those in preventive maintenance and have drivers report smoke, warning lamps and low power on the DVIR. Build that schedule free on 3 vehicles.

Fuel filters and clean fuelCuts rail pressure and injector codes
Air filters and charge-air leaksCuts boost and mass air flow codes
Certified DEF and sealed containersCuts reductant quality and SCR efficiency codes
Idle reduction and completed regensCuts DPF and EGR soot codes
Batteries, cables and groundsCuts voltage and sensor circuit codes
Codes read at every PMCatches inactive faults before a lamp
Questions

Diesel OBD-II Code Questions Fleet Mechanics Ask Most Often

Do heavy-duty diesel trucks use OBD-II P-codes?

Some medium-duty and a few heavy-duty trucks report P-codes, but most Class 7 and 8 trucks use J1939 SPN and FMI codes read through a 9-pin connector. Check which connector and protocol your truck uses before buying a scanner. See both code types on one record.

What is the difference between a P-code and an SPN/FMI code?

A P-code is a five-character SAE J2012 code with a standard meaning across makes. An SPN identifies the parameter and the FMI describes how it failed, which is the J1939 format used across heavy-duty modules. Track both formats per truck free.

Does a code tell me which part to replace?

No. It names the system and failure type. Wiring, connectors and upstream faults set the same codes as failed components, so verify before ordering parts. Review your repeat codes with us.

Which diesel codes mean stop driving?

Any code with a red stop lamp, plus oil pressure, coolant temperature and severe fuel pressure faults. Emissions codes usually allow limited driving but can lead to a derate. Set severity rules on your units free.

Can I clear a code without fixing it?

You can, but the fault will return once the system retests, and you lose the freeze-frame data a technician needs. Record the code, repair the cause, then clear and verify. See code history tracking in a demo.

How do I stop the same codes coming back every month?

Track codes by truck, look for repeats on the same unit, and fix the maintenance item behind them — filters, leaks, DEF quality or grounds — rather than the part the code names. Start tracking repeats free.

From code list to closed repair

Stop Looking Codes Up Twice: Keep Every Fault on the Truck's Record

FleetRabbit pulls fault codes from your telematics, opens a work order with the code, conditions and repair history attached, and flags the ones that keep returning — so your mechanics spend their time diagnosing instead of searching.

P0401Work order opened
P2002Regen history attached
P207FThird time on Unit 214
P0087Filters checked first

September 23, 2026By Alex Rowan
All Blogs

Share This Story, Choose Your Platform!

From our blog

Get Fleet Rabbit App
#1 Truck Fleet Management Software

Download Our App
Scroll