Subaru OBD/OBD2 Diagnostic Codes
The Most Comprehensive Technical Encyclopedia for Subaru Owners, DIY Enthusiasts, and Professional Technicians
Subaru vehicles employ sophisticated On-Board Diagnostic Generation 2 (OBD2) systems that continuously monitor over 150 parameters across engine, transmission, emissions, and chassis systems. Since the 1996 model year (as mandated by U.S. EPA regulations), all Subarus sold in North America have featured OBD2 compliance with manufacturer-specific enhancements unique to Subaru’s boxer engine architecture and Symmetrical All-Wheel Drive systems.
Subaru diagnostic systems have evolved through four generations: OBD1 (1990-1995) with proprietary connectors and blink codes; Early OBD2 (1996-2004) with ISO 9141-2 protocols; CAN Bus Introduction (2005-2010) with mixed protocols; and Modern CAN Bus (2011-Present) with unified 500kbps CAN networks and advanced telematics integration.
Subaru Engine Control Module Architecture
Subaru’s ECM architecture is unique due to the horizontally-opposed “boxer” engine design. The ECM monitors critical parameters including:
- Crankshaft & Camshaft Position Synchronization – Critical for proper timing in boxer engines
- Air/Fuel Ratio per Bank – Independent monitoring for left and right cylinder banks
- AVCS/AVLS Systems – Active Valve Control System monitoring
- Turbocharger Parameters (if equipped) – Boost pressure, wastegate position
- Oil Pressure & Temperature – Critical for boxer engine lubrication
- Knock Sensor Detection – Multiple sensors for precise detonation control
- Secondary Air Injection – Emissions control during cold starts
- EGR Systems – Exhaust Gas Recirculation monitoring
Subaru-Specific Diagnostic Challenges
Subaru vehicles present unique diagnostic challenges due to their engineering design:
Horizontally-opposed cylinders create unique access challenges and require specialized procedures for compression testing, timing belt/chain service, and head gasket replacement.
The constant all-wheel-drive system integrates with transmission and engine controls, creating interdependencies that can generate multiple interrelated fault codes.
Subarus are engineered for cold weather operation with aggressive warm-up strategies that can mask certain faults until systems reach full operating temperature.
Subaru OBD2 Diagnostic Trouble Codes (DTCs) follow the standardized SAE J2012 format but include extensive manufacturer-specific codes (P1xxx, P2xxx, C1xxx, B1xxx, U1xxx) that provide detailed subsystem information. Understanding this structure is essential for accurate diagnosis.
| Position | Character | System Category | Subaru-Specific Details | Example Codes |
|---|---|---|---|---|
| 1st Character | P, C, B, U | Powertrain, Chassis, Body, Network | P-codes most common in Subarus (80% of faults) | P0420, C0057, B2202 |
| 2nd Character | 0, 1, 2, 3 | Generic (0,2) or Manufacturer (1,3) | P1xxx codes are Subaru-specific powertrain codes | P1101, P1300, P1507 |
| 3rd Character | 0-9, A-F | Subsystem Identification | P11xx = Fuel/Air Metering; P13xx = Ignition | P0171, P0301, P0420 |
| 4th & 5th Characters | 00-FF | Specific Fault Identifier | Indicates exact circuit/component failure | P1101, P2096, P2764 |
P1100-P1199: Fuel and air metering (MAF, MAP, IAT sensors)
P1200-P1299: Fuel injector circuit issues
P1300-P1399: Ignition system misfires and coil faults
P1400-P1499: Auxiliary emissions controls (EGR, EVAP, AIR)
P1500-P1599: Vehicle speed controls and idle control
1996-2004: ISO 9141-2 (14230-4 KWP)
2005-2010: Mixed protocols (ISO & CAN)
2011-2024: Unified CAN Bus (500kbps)
2019-2024: Added Ethernet diagnostics for modules
Subaru Module Communication Hierarchy
Modern Subarus (2011+) use a Controller Area Network (CAN) bus with prioritized message systems. The network hierarchy affects how codes are stored and retrieved:
Highest priority module. Controls engine functions, monitors emissions, and coordinates with TCM. Stores P-codes for engine-related faults.
Manages transmission shifting, torque converter lockup, and AWD torque distribution. Generates P07xx codes and communicates with ECM via CAN.
Controls interior electronics, lighting, and access systems. Stores B-codes for body-related electrical faults.
The following comprehensive table details the 25 most frequently encountered DTCs in Subaru vehicles, their root causes, symptoms, and diagnostic priority.
| DTC Code | Description | Common Causes | Primary Symptoms | Priority |
|---|---|---|---|---|
| P0420 | Catalyst System Efficiency Below Threshold | Failed catalytic converter, oxygen sensor degradation, exhaust leaks, engine misfires, oil consumption | Check Engine Light, possible sulfur odor, reduced performance | High |
| P0171 | System Too Lean (Bank 1) | Vacuum leaks, MAF sensor contamination, fuel delivery issues, exhaust leaks, PCV system faults | Rough idle, hesitation, poor fuel economy, possible misfire | Critical |
| P0300 | Random/Multiple Cylinder Misfire | Ignition coils, spark plugs, fuel injectors, compression issues, head gasket failure, vacuum leaks | Rough running, flashing CEL, loss of power, vibration | Critical |
| P0011 | “A” Camshaft Position – Timing Over-Advanced | Oil control valve failure, timing chain issues, incorrect oil viscosity, AVCS solenoid failure | Rough idle, reduced power, rattling noise from timing area | High |
| P0457 | Evaporative Emission System Leak Detected | Loose fuel cap, damaged EVAP hose, purge valve failure, charcoal canister crack | Check Engine Light, possible fuel odor | Low |
| P1101 | MAF Sensor Circuit Range/Performance | Contaminated MAF sensor, intake air leaks, sensor circuit issues, dirty air filter | Poor acceleration, rough idle, stalling, poor fuel economy | Medium |
| P0700 | Transmission Control System Malfunction | TCM communication error, transmission solenoid issues, internal transmission faults | Transmission slipping, harsh shifts, AT OIL TEMP light | High |
| P0328 | Knock Sensor 1 Circuit High Input | Faulty knock sensor, wiring issues, sensor contamination, excessive engine vibration | Reduced power, pinging noise under acceleration, poor fuel economy | High |
P0301-P0304 (Cylinder-Specific Misfires): Immediate diagnosis required. Extended driving with active misfires can destroy catalytic converters ($1,500-$2,700 repair) and cause further engine damage. P0016-P0019 (Crankshaft/Camshaft Correlation): Indicates timing chain/belt issues that can lead to catastrophic engine failure if ignored. P0299 (Turbo Underboost): On turbocharged models, indicates boost control issues that can cause engine damage from improper air/fuel ratios.
Engine-Specific Code Patterns
Subaru engines exhibit characteristic fault patterns based on engine series:
EJ Series (1990-2014)
- P0420/P0430: Catalytic converter failure due to oil consumption issues
- P0011/P0021: Oil control valve failures causing timing advance issues
- P0300 Series: Misfires often related to failing head gaskets
- P0457/P0442: EVAP leaks from aged rubber components
FB/FA Series (2011-Present)
- P0016/P0017: Timing chain stretch or VVT solenoid failures
- P0171/P0174: Lean conditions from intake manifold gasket leaks
- P0420: Catalyst efficiency issues from direct injection carbon buildup
- P0300 Series: Misfires from fuel injector carbon fouling
Transmission & AWD System Codes
Subaru’s symmetrical AWD system generates unique transmission-related codes:
Torque converter clutch pressure issues in 4EAT and 5EAT transmissions. Often caused by solenoid failures or valve body wear.
Transmission fluid pressure switch faults in CVT models. Indicates switch failure or actual pressure problems.
Wheel speed sensor faults affecting Vehicle Dynamics Control and ABS systems.
Different Subaru models exhibit unique diagnostic patterns based on their drivetrain, engine, and production years. Understanding these patterns accelerates diagnosis.
Subaru Outback & Legacy (2005-2024)
4th Gen (2005-2009): Head gasket failures (EJ253), torque converter shudder (5EAT), rear wheel bearing failures
5th Gen (2010-2014): Oil consumption (FB25), CVT valve body issues, infotainment system glitches
6th Gen (2015-2019): Battery drain issues, eyesight calibration errors, PCV valve failures
7th Gen (2020-2024): Start-stop system faults, telematics module communication errors
Subaru Forester (2009-2024)
2009-2013 (SH)
Oil consumption issues (FB25), CVT overheating in towing, rear differential bushing wear, brake light switch failures causing cruise control issues.
2014-2018 (SJ)
CVT valve body failures (P0841), air conditioning compressor clutch failures, windshield cracking issues, fuel pump control module failures.
2019-2024 (SK)
Battery drain from DCM module, infotainment system reboots, rear gate strut failures, start-stop system sensor faults.
Subaru Impreza & WRX/STI
| Model | Engine | Common DTCs | Typical Causes |
|---|---|---|---|
| WRX 2002-2007 | EJ205/EJ255 | P0300, P0011, P0244 | Boost control solenoid failure, MAF sensor issues, uppipe catalytic converter failure |
| WRX 2008-2014 | EJ255 | P0021, P0300, P0546 | Turbo oil feed line restrictions, AVCS solenoid failure, exhaust gas temperature sensor failure |
| WRX 2015-2021 | FA20F | P0016, P0171, P0420 | Direct injection carbon buildup, intake manifold gasket leaks, turbo wastegate actuator issues |
| WRX 2022-2024 | FA24F | P0016, U codes for infotainment | Early production sensor issues, multimedia system integration faults |
Subaru vehicles often exhibit specific symptom patterns before setting permanent diagnostic trouble codes. Recognizing these early warnings can prevent expensive repairs and component failures.
Dashboard Indicator Interpretation
Flashing CEL: Active misfire detected. Immediate reduction in engine load required. Can cause catalytic converter damage if ignored.
Solid CEL: Emission-related fault stored. Diagnosis recommended within 1-2 weeks.
CEL with Cruise Light Flashing: Emission fault affecting cruise control operation. Common with P0420 codes.
CEL with AT OIL TEMP Light: Transmission-related fault. Immediate diagnosis recommended.
VDC/ABS Lights: Stability control or brake system fault. Wheel speed sensor issues common.
AT OIL TEMP Light Flashing: Transmission overheating or electrical fault. Stop vehicle immediately.
Oil Light: Low oil pressure or level. Critical for boxer engine lubrication.
Battery Light: Charging system fault. Alternator or voltage regulator issues.
Driveability Symptoms & Their Likely Causes
| Symptom | Possible Causes | Likely DTCs | Urgency |
|---|---|---|---|
| Rough idle, engine shaking at stop | Misfire, vacuum leak, dirty MAF, failing engine mount | P0300, P0171, P0506 | High |
| Hesitation or stumble during acceleration | Fuel delivery issue, ignition coil failure, turbo boost leak | P0171, P0300, P0244 | High |
| Loss of power, especially uphill | Clogged catalytic converter, turbo failure, timing issue | P0420, P0299, P0011 | Critical |
| Transmission slipping or harsh shifts | Low fluid, valve body failure, TCM issues | P0700, P2764, P0841 | High |
Overheating with sweet exhaust smell: Likely head gasket failure (common on EJ engines). Continued driving can warp cylinder heads.
Loud knocking from engine at startup: Timing chain/belt issues or rod bearing failure. Shut off immediately to prevent catastrophic damage.
Transmission slipping with burning smell: Transmission overheating or clutch pack failure. Stop driving to avoid complete transmission failure.
White smoke from exhaust (non-cold conditions): Coolant entering combustion chamber. Indicates head gasket or cylinder head issue.
Proper diagnosis of Subaru DTCs requires a systematic approach. Follow this professional workflow to accurately identify and resolve issues.
Basic Diagnostic Workflow
Code Retrieval & Documentation
Connect OBD2 scanner to DLC (located under dashboard, driver’s side). Use capable scanner that can read Subaru-specific codes. Record ALL codes (current, pending, permanent). Document freeze frame data including RPM, load, coolant temp, fuel trim values when code was set. Note code setting conditions (cold start, warm, under load, etc.).
Visual Inspection & Basic Tests
Inspect engine bay for obvious issues: disconnected vacuum lines, damaged wiring, fluid leaks, loose connectors. Check air intake system for leaks using propane or carb cleaner (engine RPM change indicates leak). Inspect battery terminals for corrosion (common cause of communication errors). Check fluid levels and condition. Listen for unusual sounds (whistling = vacuum leak, rattling = timing components).
Live Data Analysis
Monitor key parameters at idle and 2500 RPM: Fuel trims (should be ±10%), MAF readings (2-6 g/s at idle), O2 sensor activity (should switch 1-5 times per second at 2500 RPM), coolant temperature (should reach 190-220°F), throttle position (0% at idle). Compare with known good values for specific engine.
Component Testing
Based on code and data, test specific components: Use multimeter to check sensor resistances and voltages against service specifications. Test actuators (solenoids, valves) for proper operation and resistance. Perform fuel pressure test (should be 30-38 psi for most models). Check ignition coil output with spark tester.
Circuit Verification
Check wiring harness for continuity between component and ECU. Verify proper voltage supply and ground connections. Perform voltage drop tests on ground circuits (should be less than 0.1V). Look for chafed wires, especially near engine movement points, sharp edges, and exhaust components.
Advanced Diagnostic Procedures
- Monitor front and rear O2 sensor waveforms at 2500 RPM
- Rear sensor should show slower switching frequency than front
- Perform exhaust backpressure test (should be < 1.5 psi at 2500 RPM)
- Check for exhaust leaks before catalytic converter
- Inspect for engine oil consumption issues
- Test engine compression if misfire suspected
- Check fuel quality and contaminants
- Perform smoke test on intake system
- Test fuel pressure (30-38 psi for most models)
- Check MAF sensor output at different RPMs
- Inspect PCV system for proper operation
- Monitor fuel trim values at idle and 2500 RPM
- Test injector pulse and flow rate
- Check exhaust for leaks before oxygen sensors
Diagnosing Intermittent Issues
Intermittent faults are common in Subarus. Use these techniques:
Data Logging
Use scanner with recording function to capture data when intermittent fault occurs. Focus on parameters related to the suspected system.
Wiggle Test
Gently manipulate wiring harnesses and connectors while monitoring live data. Have assistant wiggle components while you observe parameter changes.
Thermal Testing
Use heat gun or freeze spray on suspected components to induce failure. Monitor for changes in sensor readings or system operation.
Repair costs for Subaru DTCs vary significantly based on component failure, model year, labor rates, and geographical location. The following analysis provides realistic estimates for common repairs.
| Repair | Parts Cost Range | Labor Cost Range | Total Estimate | Warranty Coverage |
|---|---|---|---|---|
| Oxygen Sensor Replacement | $120 – $300 | $80 – $180 | $200 – $480 | 8yr/80k emissions |
| Mass Air Flow Sensor | $150 – $400 | $50 – $120 | $200 – $520 | 3yr/36k basic |
| Catalytic Converter | $800 – $2,500 | $250 – $600 | $1,050 – $3,100 | 8yr/80k federal |
| Ignition Coil Replacement | $60 – $180 each | $100 – $250 | $160 – $430 | 3yr/36k basic |
| VVT Solenoid Replacement | $100 – $350 | $150 – $350 | $250 – $700 | 5yr/60k powertrain |
| Head Gasket Replacement (EJ) | $500 – $1,200 | $1,500 – $2,800 | $2,000 – $4,000 | 5yr/60k powertrain |
| CVT Valve Body Replacement | $800 – $1,600 | $400 – $800 | $1,200 – $2,400 | 5yr/60k powertrain |
Cost-Saving Strategies
- Aftermarket catalytic converters can save 30-50% vs OEM (ensure CARB compliance if in California)
- Consider quality aftermarket sensors from reputable brands (Denso, NTK, Bosch)
- For ECM/TCM issues, consider used modules from reputable recyclers with warranty
- Buy parts online from reputable dealers (often 20-30% cheaper than local)
- Perform multiple related repairs simultaneously (e.g., spark plugs while doing coils)
- DIY simpler repairs with proper guidance (sensor replacements, basic maintenance)
- Get multiple estimates from independent specialists vs dealerships
- Consider mobile mechanics for simpler jobs (typically 30% less than shops)
Warranty & Recall Information
Federal Emissions Warranty
8yr/80k mi
Covers catalytic converter, ECM, oxygen sensors, and other major emissions components regardless of vehicle ownership.
California Emissions Warranty
10yr/150k mi
Extended coverage for vehicles originally sold or registered in California and other CARB states.
Subaru Extended Coverage
Varies
Subaru has issued extended warranties for specific issues: CVT valves (10yr/100k), FB engine oil consumption (8yr/100k), etc.
Proper diagnostic tools are essential for accurate Subaru troubleshooting. The following equipment represents professional-grade tools used by Subaru dealerships and independent specialists.
Advanced Scan Tools
Subaru Select Monitor
Factory diagnostic software with full bidirectional controls, programming capabilities, and comprehensive system tests. Required for advanced functions like CVT relearn, immobilizer programming, and adaptation resets.
Autel MaxiSys Series
Professional aftermarket scanners with extensive Subaru coverage. MS906BT or newer models provide bidirectional controls, live data graphing, and comprehensive system coverage at lower cost than factory tools.
Foxwell NT Series
Cost-effective professional scanners with Subaru-specific software. NT530 or NT650 provide good coverage for most common diagnostic functions including ABS, SRS, and transmission systems.
Specialized Test Equipment
Smoke Machine
Essential for locating intake and EVAP leaks. Redline or OEM-branded machines provide consistent smoke output for reliable leak detection.
Oscilloscope
PicoScope or Hantek for analyzing sensor waveforms, ignition patterns, and communication bus signals. Critical for diagnosing intermittent electrical issues.
Fuel Pressure Tester
Mechanical gauge with appropriate adapters for Subaru fuel systems. Should measure 0-100 psi with bleed valve for safe testing.
Information Resources
Subaru Service Information System (SSIS): Official factory service information with wiring diagrams, repair procedures, and technical service bulletins. Subscription required.
AllData or Mitchell1: Comprehensive aftermarket service information with wiring diagrams and labor times.
Identifix: Pattern failure database showing common fixes for specific codes by model/year.
iATN (International Automotive Technicians Network): Professional forum for technical assistance and case studies.
Proactive maintenance can prevent up to 80% of common Subaru DTCs. Follow this comprehensive prevention guide to minimize diagnostic issues and extend vehicle life.
Maintenance Schedule for DTC Prevention
| Interval | Critical Maintenance Tasks | Prevents These DTCs | Estimated Cost |
|---|---|---|---|
| Every 30,000 miles | Clean MAF sensor, inspect spark plugs, check PCV system, clean throttle body (if drive-by-wire) | P0171, P0300, P1101, P0506 | $150 – $300 |
| Every 60,000 miles | Replace spark plugs, flush coolant, service transmission fluid (CVT or automatic), replace air filter | P0300, P0011, P0700, P0113 | $400 – $800 |
| Every 100,000 miles | Replace timing components, oxygen sensors, complete fluid flush, replace PCV valve, inspect turbo (if equipped) | P0011, P0420, P0700, P0299 | $1,200 – $2,500 |
Fluid & Filter Specifications
EJ Engines (pre-2011): 5W-30 synthetic, change every 5,000-6,000 miles. Critical for preventing oil consumption and VVT issues.
FB/FA Engines (2011+): 0W-20 synthetic, change every 6,000 miles. Use only API SN Plus or SP rated oil to prevent LSPI (Low Speed Pre-Ignition).
Turbo Models: 5W-30 or 5W-40 synthetic (check manual). Change every 5,000 miles due to higher thermal stress.
Air Filter: Replace every 15,000-30,000 miles depending on conditions. Use quality filter to protect MAF sensor from contamination.
Oil Filter: Use Subaru OEM or high-quality aftermarket (WIX, Mobil 1). Avoid cheap filters that can collapse or bypass.
Fuel Filter: On models with serviceable filters, replace every 60,000 miles. On models with non-serviceable filters, it’s part of fuel pump assembly.
Boxer Engine Oil Changes: Always check oil level when engine is COLD and on level ground. Boxer engines can show false readings if checked when hot.
Coolant Replacement: Use ONLY Subaru Super Coolant or equivalent phosphate-free coolant. Conventional coolant can cause silicate dropout and clog small passages.
Battery Maintenance: Subaru electrical systems are sensitive to voltage. Replace battery before complete failure to prevent communication errors and module issues.
Tire Rotation: Rotate every 6,000 miles to prevent AWD system stress and differential wear.
Advanced techniques and professional insights for resolving complex or persistent Subaru diagnostic issues from master technicians with decades of Subaru experience.
Master Technician Secrets
Electrical System Tips
- Check ECU grounds (typically near battery and on engine) for corrosion before condemning modules
- Use voltage drop testing instead of just continuity checks for ground circuits
- Suspect aftermarket accessories (alarms, stereos, lights) for parasitic draws and communication issues
- Check for corrosion in connectors, especially in wheel well areas and underhood
- When dealing with communication errors, check CAN bus termination resistors (typically 120 ohms between CAN High and Low)
Engine Mechanical Tips
- On boxer engines, perform compression test with all plugs removed and throttle held open
- When diagnosing misfires, swap components between cylinders to see if fault follows component
- Use bore scope through spark plug hole to inspect cylinder walls and valves
- Check for leaking injectors by monitoring fuel pressure drop after shutdown
- On turbo models, always check intercooler for oil accumulation indicating turbo seal issues
Complex Case Studies
Symptoms: Intermittent P0420, worse in cold weather, normal fuel trims, good O2 sensor waveforms.
Diagnosis: Extended data logging showed rear O2 sensor voltage dropping slightly during certain driving conditions. Exhaust backpressure test normal. Smoke test revealed tiny exhaust leak at flex pipe just before catalytic converter.
Solution: Replaced flex pipe section. Code did not return.
Key Learning: Small exhaust leaks before the catalytic converter can introduce oxygen that the rear O2 sensor detects as reduced catalyst efficiency.
Symptoms: Multiple U-code communication errors, infotainment system reboots, intermittent starting issues.
Diagnosis: Battery test showed good voltage but high internal resistance. Parasitic draw test found 350mA draw (should be <50mA). Isolated draw to DCM (telematics module) staying active.
Solution: Replaced battery and updated DCM firmware. Issues resolved.
Key Learning: Weak batteries can cause multiple communication errors in modern CAN bus systems. Always test battery condition before diagnosing communication issues.
Continuing Education Resources
Subaru University
Subaru’s official training portal for technicians. Offers online and in-person courses on new technologies and diagnostic procedures.
iATN Forums
International Automotive Technicians Network with active Subaru-specific discussion forums where technicians share case studies and solutions.
Subaru Technical Bulletins
Access to Subaru Technical Service Bulletins (TSBs) through subscription services like AllData, Mitchell1, or Subaru SSIS.