Search the Full JLR Fault Code List
Type any code (for example U3000-49) or a keyword such as battery, CAN bus or tailgate to search all 10,992 JLR fault codes instantly.
What Are JLR DTC Codes?
JLR DTC codes are diagnostic trouble codes that Jaguar Land Rover control modules store when they detect a fault. Each code pinpoints the failing system, the circuit or component involved, and how it failed.
Every modern Jaguar and Land Rover runs dozens of networked computers. When one of them spots a problem — a short circuit, a missing message, an implausible sensor value — it logs a code and often turns on a warning light. Because of this, reading these codes is always the first step in any diagnosis.
Unlike generic OBD-II lists, the JLR factory index goes far beyond engine codes. It covers body, chassis and network faults that generic scanners never see. That matters, because most warnings on a 2017+ Range Rover, Defender or Discovery come from these newer systems. You can browse the full set of JLR DTC codes in the tables below. For background on the underlying standard, see the OBD-II overview on Wikipedia.
How to Read a 7-Digit JLR Fault Code
A JLR fault code has two parts: a 5-digit base code that names the system and component, plus a 2-digit failure type byte that describes the exact failure — such as a short to battery (-12) or a missing message (-87).
Take U0001-88 as an example. The letter U means network. 0001 identifies the high-speed CAN bus. The suffix -88 means the bus went bus-off. Therefore, one look tells a technician what failed, where, and how.
Generic scan tools only show the first five digits. As a result, they miss the failure detail that makes factory-level diagnosis possible. The table below lists the suffixes you will see most often in JLR DTC codes.
| Suffix | Meaning |
|---|---|
-11 | Circuit short to ground |
-12 | Circuit short to battery |
-13 | Circuit open |
-19 | Circuit current above threshold |
-1C | Circuit voltage out of range |
-23 | Signal stuck low |
-49 | Internal electronic failure |
-4A | Incorrect component installed |
-4B | Over temperature |
-54 | Missing calibration |
-56 | Invalid / incomplete configuration |
-62 | Signal compare failure |
-64 | Signal plausibility failure |
-87 | Missing message |
-88 | Bus off |
-92 | Performance or incorrect operation |
Code Categories: P, B, C and U Explained
JLR DTC codes fall into four families: P codes for powertrain, B codes for body, C codes for chassis, and U codes for network communication. Powertrain codes are the largest group, with 4,706 unique entries in the factory index.
However, the split may surprise you. Over half of all JLR fault codes live outside the engine. Body and network codes dominate modern vehicles, because almost every feature — from seat modules to the tailgate — now runs on its own computer.
| Prefix | System | Covers | Codes in database |
|---|---|---|---|
| P0xxx | Powertrain | Engine, transmission, emissions, fuel & hybrid systems | 4,706 |
| B0xxx | Body | Airbags, seats, doors, HVAC, lighting, infotainment | 4,179 |
| C0xxx | Chassis | ABS, suspension, steering, brakes, terrain response | 1,168 |
| U0xxx | Network | CAN bus, module communication, configuration & VIN data | 939 |
The Most Common JLR Fault Codes
The most common JLR fault codes are network and configuration codes. U3000-49 (control module internal failure) tops the index — it appears in 70 of the 91 module sections — followed by software and central-configuration codes such as U0300-00 and U2300-56.
Many of these appear after a low battery, a software update, or a module replacement. So before replacing parts, check whether the code points to configuration rather than hardware. The table shows the 15 codes listed most often across the 91 modules.
| DTC Code | Fault description | Times listed across modules |
|---|---|---|
| U3000-49 | Control Module – Internal Electronic Failure | 70 |
| U0300-00 | Internal Control Module Software Incompatibility – No Sub-Type Information | 60 |
| U2300-56 | Central Configuration – Invalid / Incompatible Configuration | 54 |
| U2300-54 | Central Configuration – Missing Calibration | 54 |
| U0001-88 | High Speed CAN Communication Bus – Bus Off | 47 |
| U2300-64 | Central Configuration – Signal Plausibility Failure | 41 |
| U2300-55 | Central Configuration – Not Configured | 39 |
| U0140-00 | Lost Communication with Body Control Module – No Sub-Type Information | 36 |
| U3003-62 | Battery Voltage – Signal Compare Failure | 35 |
| U2100-00 | Initial Configuration Not Complete – No Sub-Type Information | 35 |
| U0001-87 | High Speed CAN Communication Bus – Missing Message | 34 |
| U2101-00 | Control Module Configuration Incompatible – No Sub-Type Information | 33 |
| U0010-88 | Medium Speed CAN Communication Bus – Bus Off | 29 |
| U3000-4B | Control Module – Over Temperature | 28 |
| U3002-81 | Vehicle Identification Number – Invalid Serial Data Received | 26 |
Fault Codes by Control Module
The powertrain control module holds the largest share of JLR DTC codes — 3,405 entries — followed by the transmission, ABS and body control modules. In total, the factory index spans 91 control modules on 2017–2026 DOIP vehicles.
Knowing which module logged a code narrows the diagnosis fast. For instance, a U-code from the gateway module points to network wiring, while the same code from the instrument cluster may follow a battery drain.
| Control module | DTC records |
|---|---|
| Powertrain Control Module (PCM) | 3,405 |
| Transmission Control Module (TCM) | 1,351 |
| Anti-Lock Brake System Control Module (ABS) | 1,119 |
| Body Control Module (BCM) | 963 |
| Battery Energy Control Module (BECM) | 751 |
| HVAC Control Module (HVAC) | 750 |
| Restraints Control Module (RCM) | 623 |
| Audio Amplifier Module (AAM) | 527 |
| Transfer Case Control Module (TCCM) | 494 |
| Near Field Sensing Module (NFSM) | 390 |
How to Scan Codes on 2017+ Models
To scan fault codes on a 2017 or newer Jaguar or Land Rover, you need a DOIP-capable diagnostic interface and JLR-compatible software. Connect to the OBD port, run a full-vehicle scan, and read each module — a basic OBD scanner will only show generic powertrain codes.
DOIP — Diagnostics over Internet Protocol — replaced the old CAN-based session on all JLR vehicles from roughly 2017 onward. Consequently, older SDD-era cables cannot talk to these cars. A DOIP interface such as a JLR ENET cable or a dedicated VCI is required.
A typical workflow
First, connect the interface and run a full scan. Next, record every code with its failure type byte before clearing anything. Then fix the root cause — wiring, battery voltage or configuration. Finally, clear the codes and re-scan to confirm the repair. For suitable hardware, see our JLR diagnostic tool range or check your vehicle first with our free VIN compatibility check.
Frequently Asked Questions
What does a JLR DTC code mean?
A JLR DTC code is a diagnostic trouble code stored by a Jaguar Land Rover control module when it detects a fault. Each 7-digit code identifies the affected system, the component or circuit, and the exact failure type — for example, U0001-88 means the high-speed CAN bus has gone bus-off.
How many JLR fault codes are there?
Our database indexes 10,992 unique JLR fault codes across 91 control modules, covering DOIP-based vehicles from 2017 to 2026. Because the same code can be reported by several modules, the full index contains 20,394 module-level entries.
How do I read JLR DTC codes?
You need a diagnostic tool that supports JLR DOIP (Diagnostics over Internet Protocol) for 2017 and newer vehicles. Connect the interface to the OBD port, run a full vehicle scan, and the tool will list every stored and pending code with its module. Generic OBD scanners only read basic powertrain codes and miss most body, chassis and network faults.
What is the difference between 5-digit and 7-digit JLR codes?
Generic scan tools display only the first 5 digits, such as U0001. JLR factory diagnostics add a 2-digit failure type byte, such as U0001-88. The suffix explains how the fault manifested — for example a short to battery, an open circuit, or a missing message — which is essential for pinpoint diagnosis.
Can I drive with a JLR fault code stored?
It depends on the code. Network and configuration codes (U-codes) are often stored after a low battery event and may not affect driving. Powertrain codes that trigger a red warning or limp mode should be investigated immediately. Always record the code before clearing it, because freeze-frame data aids diagnosis.
Why does my JLR store U-codes after a battery change?
Low or interrupted voltage during a battery change causes modules to log communication and configuration codes such as U3000-49 or U2300-56. In most cases a full scan and code clear after the new battery is fitted resolves them. If they return, the affected module may need reconfiguration with a JLR-capable diagnostic tool.
JLR Decoder