Go-Parts
Cart 0
Your cart is empty
Add an item to see it appear here.
Wrenchy
Go-Parts Garage
Expert guides for diagnosing, troubleshooting, and replacing auto parts Expert guides for diagnosing and replacing auto parts
Browse All →
🎬 Helpful Videos 🛍️ Shop This Part

P0012 on 2013-2019 Subaru Legacy 2.5L: Causes and Fixes for Over-Retarded Camshaft Timing

On a 2013-2019 Subaru Legacy with the 2.5L FB25 engine, code P0012 is almost always caused by low or dirty engine oil. If an oil change doesn't fix it, the next most likely cause is a faulty passenger-side intake Oil Control Valve (OCV), which costs around $90-$150 for an OEM part and is a straightforward DIY replacement.

21 minutes to read 2013-2019 Subaru Legacy
Most Likely Cause
Low, Dirty, or Incorrect Viscosity Engine Oil
Difficulty
2/5
Est. Time
1 hrs
DIY Doable?
✅ Yes
Shop Labor
$100 – $350
Parts Price
$40 – $150
⚠️ Drivable, but... — Yes, but it's not recommended for long distances. Continued driving can lead to rough idling, stalling, poor fuel economy, and potential long-term damage to internal engine components or the catalytic converter. The vehicle may also enter a 'limp mode,' limiting engine power to prevent further damage.
Key Takeaways
  • When you see P0012 on your Subaru Legacy, check your oil level and condition immediately. This is the most common and cheapest fix.
  • Use the correct oil: 0W-20 full synthetic is required for the AVCS system to function properly.
  • If an oil change doesn't solve the problem, the passenger-side intake Oil Control Valve (OCV) is the next part to inspect and likely replace.
  • Check the OCV electrical connector for oil, which is a sign of internal failure per TSB 02-170-17R.
The trouble code P0012 stands for 'Intake “A” Camshaft Position - Timing Over-Retarded (Bank 1)'. This means the Engine Control Module (ECM) has detected that the intake camshaft on Bank 1 is lagging behind, or 'retarded' from, the position the computer is commanding it to be. For Subaru's boxer engine, Bank 1 is the passenger side of the engine in a left-hand-drive vehicle. This function is managed by Subaru's Active Valve Control System (AVCS), which is a hydraulic system that uses oil pressure to change camshaft timing by routing oil through solenoids (OCVs) to the camshaft phasers.

What's Unique About the 2013-2019 Subaru Legacy

The FB25 engine in this generation of Subaru Legacy is notoriously sensitive to engine oil level and condition. Many of these engines were also subject to a class-action lawsuit and subsequent warranty extensions for excessive oil consumption, which can directly lead to the low oil levels that trigger a P0012 code. Furthermore, Subaru issued a Technical Service Bulletin (TSB 02-170-17R) for a known issue where the Oil Control Valve (OCV) can leak oil internally into its own electrical connector. This oil can then 'wick' up the wiring harness, potentially causing short circuits and damage to the main engine harness or even the ECM if not caught early.

Generation note: The 2013-2019 year range covers the end of the fifth generation (2013-2014) and the full sixth generation (2015-2019) of the Subaru Legacy. Both generations used the FB25 2.5L engine, and the causes and fixes for code P0012 are consistent across both.

Symptoms You May Notice

  • Check Engine Light is on
  • Rough engine idle
  • Poor acceleration and loss of power
  • Decreased fuel economy
  • Engine stalling in some cases
  • Engine may make a ticking or rattling noise
⚠️ Don't Waste Money on the Wrong Fix
  • Replacing the camshaft position sensor. While a sensor can fail, it is not a common cause for this specific code. A failing sensor would more likely produce a circuit code (like P0340) or erratic readings, whereas P0012 points to a mechanical/hydraulic timing issue.

Most Likely Causes

  1. Low, Dirty, or Incorrect Viscosity Engine Oil 🔴 High Probability The Subaru AVCS is a hydraulic system that is extremely sensitive to oil pressure and cleanliness. The FB25 engine, in particular, can consume oil, making low oil levels a frequent issue. A class-action lawsuit was filed regarding excessive oil consumption on certain models including the 2013 Legacy, alleging defective piston rings.
    How to confirm: Check the engine oil dipstick. Note the level and the color/condition of the oil. If the level is below the 'full' mark or the oil is dark, sludgy, or past its service interval, this is the likely cause. Many owners report the code appears when the oil level is simply near the 'low' mark, even if not empty.
    Typical fix: Top up the oil to the correct level or perform a complete oil and filter change using the manufacturer-recommended 0W-20 synthetic oil. Clear codes and drive to see if the issue is resolved. 🎬 Watch: Two simple DIY methods to fix code P0012 quickly.
    Est. part cost: $40-$80
  2. Failing Oil Control Valve (OCV) / VVT Solenoid 🟡 Medium Probability The OCV for Bank 1 (passenger side) is a common failure point. It can become clogged with sludge from dirty oil or fail electrically. Subaru TSB 02-170-17R specifically addresses these valves leaking oil into the wiring harness on 2013-2019 models due to a redesigned internal seal in the updated part.
    How to confirm: After confirming oil is clean and full, inspect the OCV connector for oil. A common diagnostic step is to swap the Bank 1 (passenger side) and Bank 2 (driver side) intake OCVs. If the code changes to P0022 (the Bank 2 equivalent), the OCV is confirmed faulty. You can also bench test the OCV with a 12V power source; it should make an audible click.
    Typical fix: Replace the Bank 1 intake Oil Control Valve. It is a simple repair involving removing one bolt and the electrical connector. 🎬 See this walkthrough on how to replace and upgrade the OCV.
    Est. part cost: $90-$150

Rare But Worth Checking

  • Stretched Timing Chain or Failed Tensioner: While much less common than oil issues or a bad OCV, excessive slack in the timing chain can cause the camshaft timing to be physically retarded, triggering this code. This is usually accompanied by rattling noises from the front of the engine, especially on startup.
  • Clogged AVCS Camshaft Sprocket (Phaser): Debris or sludge can clog the small oil passages within the camshaft sprocket itself, preventing it from adjusting timing correctly. This is a more involved repair and is unlikely unless oil maintenance has been severely neglected.
  • Clogged Banjo Bolt Filters: Some Subaru engines have small mesh filters in the banjo bolts that supply oil to the AVCS system. These can become clogged with debris and starve the system of oil. While more common on older EJ engines, it's a possibility on neglected FB engines.

Diagnosis Steps

  1. Read the code using an OBD-II scanner 🎬 Watch: A helpful breakdown of P0012 causes and common fixes. to confirm P0012 is present.
  2. Check the engine oil level and condition. If it is low, dirty, or the wrong type, correct this first. Perform an oil and filter change with 0W-20 synthetic oil. Clear the code and drive the vehicle to see if it returns.
  3. If the oil is good, inspect the electrical connector on the Bank 1 (passenger side) intake Oil Control Valve (OCV) for oil intrusion or damage. This is a known issue per TSB 02-170-17R. If oil is present, the OCV must be replaced, and the harness connector should be thoroughly cleaned with electrical contact cleaner.
  4. If the connector is clean, swap the intake OCV from Bank 1 with the intake OCV from Bank 2 (driver's side). They are identical and interchangeable.
  5. Clear the codes and drive the vehicle. If the code returns as P0022 (for Bank 2), the OCV you moved is faulty and needs to be replaced.
  6. If the code P0012 returns after the swap, the problem is not the OCV. The issue may be a clogged oil passage, a faulty camshaft phaser, or a timing chain issue, which may require professional diagnosis.
  7. If the problem persists, consider checking for clogged banjo bolt filters in the oil supply lines to the heads, although this is a less common issue.

Parts You'll Likely Need

  • Intake Oil Control Valve (OCV) / VVT Solenoid (Bank 1) (OEM #10921AA231) — This is the most commonly replaced part for code P0012 after oil-related issues have been ruled out. It controls oil flow to the cam phaser and is prone to clogging or electrical failure. The part number 10921AA231 supersedes previous versions 10921AA220 and 10921AA230, and contains a redesigned internal seal to prevent oil leakage into the connector.
    Trusted brands: Subaru (OEM), Denso
    OEM price range: $90-$150
    Aftermarket price range: $50-$100
  • Engine Oil and Filter — Low, old, or incorrect viscosity oil is the number one cause of this code. Using the correct 0W-20 synthetic oil and a quality filter is the first and most important step.
    Trusted brands: Idemitsu (often OEM supplier), Mobil 1, Castrol
    OEM price range: $60-$100
    Aftermarket price range: $40-$80

Related Codes That Often Appear With This One

  • P0011 — This code is for 'Timing Over-Advanced' on the same camshaft. Seeing P0011 and P0012 intermittently can point to an erratic OCV or a severe oil flow problem.
  • P0022 — This is the same 'Over-Retarded' code but for Bank 2 (driver's side). This code will appear during diagnosis if a faulty Bank 1 OCV is swapped to Bank 2 to confirm the failure.
  • P0010 — This is the circuit code for the Bank 1 intake OCV. It may appear alongside P0012 if the OCV has failed electrically or if oil has wicked into the connector, causing a short.

Technical Service Bulletins (TSBs) & Recalls

  • TSB 02-170-17R: Addresses AVCS Oil Control Valve (OCV) leaking engine oil into its electrical connector, which can then wick through the wiring harness. Affects 2013-2019 Legacy/Outback models.
  • TSB 02-157-14R (and related lawsuits): While not directly for P0012, this TSB and the associated legal settlements address the root cause of excessive oil consumption in some FB25 engines, a primary trigger for oil-pressure related codes like P0012.
  • TSB Bulletin #09-128-24: Notes that P0012 can be associated with "A" Camshaft Position - Timing Over-Advanced or System Performance Bank 2, sometimes appearing alongside communication codes like U0100.
  • TSB Bulletin #09-128-24R: A revised manufacturer bulletin that further documents P0012 as a timing performance issue for Bank 2 in the context of broader electrical and engine system diagnostics.

Platform-Specific Known Issues

  • Excessive oil consumption on some FB25 engines can lead to low oil levels, which is a primary trigger for P0012. A class action lawsuit led to extended warranties (8 years/100,000 miles) for this issue on certain model years.
  • TSB 02-170-17R describes a known defect where the OCV can leak oil into the engine wiring harness, causing poor connection and triggering this code. If left unchecked, oil can wick up the harness and damage the main bulkhead connector or ECM.

Mechanic-Grade Diagnostic Values

  • Oil Control Valve (OCV) Solenoid Resistance — expected: 6.9 - 7.9 Ohms at 68°F (20°C). Failure: A reading of 0 ohms (short), OL/infinite (open), or a value significantly outside the specified range indicates a faulty solenoid coil.
  • Live Data: AVCS Intake Angle (Bank 1) vs. Target Angle — expected: Using a scan tool, the 'AVCS In Right' or 'VVT Adv. Ang. Amount R' (actual) value should closely track the 'AVCS Intake Target' (commanded) value as engine RPM changes.. Failure: If the actual angle value consistently lags behind the target value, fails to change, or is stuck at 0 degrees when commanded, it confirms a performance issue.
  • Live Data: OCV Duty Cycle (Bank 1) — expected: The OCV duty cycle percentage, viewable on a scan tool, should increase as the ECM commands more camshaft advance with rising RPM.. Failure: A duty cycle that is commanded high by the ECM but results in no change in cam angle points to a mechanical or hydraulic issue (clogged OCV, bad phaser) rather than an electrical one.
  • Mechanical Timing Check (per TSB 02-163-16R) — expected: With the OCVs electrically disconnected, the camshaft position sensor value at idle should be close to 0°.. Failure: A reading of approximately +10° or -10° suggests the timing chain has skipped one tooth on the 36-tooth cam sprocket, indicating a base mechanical timing problem.

Hidden / Shadow Codes Worth Checking

  • Mode $06, Test ID $81, Component ID $11: This dataset within a professional scan tool can show the raw camshaft timing deviation data. It can reveal a timing issue that is on the verge of triggering a P0012 code, but has not yet crossed the threshold to illuminate the Check Engine Light. (see via A professional scan tool capable of reading manufacturer-specific Mode $06 data.)

Scan Tool Commands That Help

  • Subaru Select Monitor (SSM) or equivalent professional scanner: Actuator Test / Bidirectional Control for AVCS Intake VVT — This function allows a technician to directly command the Bank 1 intake OCV solenoid to activate (e.g., cycle it on and off). It is used to verify if the solenoid clicks audibly and if the camshaft angle changes on live data, which isolates the fault between the solenoid itself, wiring, or a mechanical/hydraulic blockage.

Wiring & Ground Locations

  • OCV Connector (E24 on some diagrams) — On the front of the passenger side (Bank 1) cylinder head, plugging into the intake Oil Control Valve.. This connector is the subject of TSB 02-170-17R. It must be inspected for oil intrusion, which indicates a failed OCV seal. The connector has two pins: Pin 1 is typically 12V+ from the main relay, and Pin 2 is the duty-cycle ground signal from the ECM.
  • Engine Ground (GE) — A key engine ground point (GE) is located on the passenger side of the intake manifold, near the AVCS solenoid area.. A loose or corroded ground at this location can cause insufficient or erratic current flow to the OCV solenoid, preventing it from operating correctly and mimicking the symptoms of a failed solenoid.
  • Engine Harness to Bulkhead Harness Connector — On top of the engine, often near the coolant crossover pipe.. Per TSB 02-170-17R, if oil wicks from the OCV, this is the next major checkpoint. If oil is found inside this large connector, the engine harness may need extensive cleaning or replacement.

Real Owner Repair Stories

  • LegacyGT.com forum user (Subaru Legacy GT (similar EJ engine, but AVCS principle is identical)) — P0011 and P0021 codes (over-advanced), rough running.
    ❌ Tried (didn't work) Oil changes, Replacing OCV solenoids
    ✅ What actually fixed it The user removed the banjo bolts for the AVCS oil feed lines and discovered the tiny mesh filters inside were clogged. After removing the filters, cleaning the bolts, and reinstalling, the codes were resolved and the car ran perfectly.
  • YouTube video by 'Eric Auto Center' (Toyota with similar VVT system) — P0012 code, engine noise, rough idle.
    ❌ Tried (didn't work) Initial diagnosis pointed to just the VVT solenoid (OCV).
    ✅ What actually fixed it The problem was a combination of a failed VVT actuator (cam phaser/sprocket) and a worn timing chain tensioner. Replacing both the phaser and the tensioner resolved the noise and the P0012 code.

When the Usual Fixes Don't Work

  • While low oil or a bad OCV are the cause over 90% of the time, there are documented cases where neither fix worked. In several forum threads, owners replaced the OCV and performed multiple oil changes with no resolution. The final fix was often removing the nearly-hidden banjo bolt filters that supply oil to the AVCS system. These tiny filters had become clogged with sludge, starving the system of pressure despite the main oil supply being clean. This indicates that on a higher-mileage or poorly maintained engine, simply changing the oil may not be enough to clear blockages upstream of the OCV.

OEM Part Supersession History

  • 10921AA22010921AA230, then 10921AA231 — The newest part number, 10921AA231, features a redesigned internal oil seal to prevent the oil wicking issue described in TSB 02-170-17R.

Model Year Variations Within This Range

  • 2014/2015 onwards: Around 2014, Subaru introduced revisions to the FB25 engine, including changes to piston rings and a slight increase in compression ratio (from 10.0:1 to 10.3:1) to help address the oil consumption issues that can lead to P0012. Later models (2019+) received the FB25D variant with direct injection, but the AVCS system and P0012 causes remain fundamentally the same.

Diagnostic Flowchart

The FB25 engine's AVCS system is highly sensitive to oil pressure. Start by checking the basics of the hydraulic system before moving to electrical or mechanical components.
→ The FB25 is prone to excessive oil consumption (per TSB 02-157-14R). Top up or perform an oil change using 0W-20 synthetic oil. Clear codes and test drive. If P0012 returns, proceed to OCV inspection.
Locate the Bank 1 (Passenger Side) Intake Oil Control Valve (OCV). Unplug the electrical connector. Is there oil inside the connector?
→ Confirmed TSB 02-170-17R issue. The OCV internal seal has failed. Replace the Bank 1 OCV and clean the harness connector thoroughly with electrical contact cleaner to prevent oil wicking to the ECM.
Swap the Bank 1 (Passenger) and Bank 2 (Driver) intake OCVs. Clear codes and drive. Which code returns?
→ The fault followed the part. Replace the faulty Oil Control Valve (approx. $90-$150). Use the updated part design mentioned in TSB 02-170-17R.
Since the OCV is functional, inspect the oil supply system. Have you checked the banjo bolt filters in the oil supply lines?
→ Clean or remove the small mesh filters inside the banjo bolts. These can clog and starve the AVCS cam phaser of the pressure required to advance/retard timing.
Are there audible ticking or rattling noises coming from the front timing cover area?
→ Possible timing chain tensioner failure or stretched chain. This requires a professional teardown of the front timing cover to inspect the guides and chain alignment.
→ The issue is likely an internal failure of the Bank 1 Camshaft Phaser (Sprocket). If oil pressure is confirmed good at the head, the phaser is failing to lock/unlock mechanically and requires replacement.

Other Known Issues on This Vehicle

Issues unrelated to this code that are worth knowing about as an owner of this generation:

  • Excessive Oil Consumption 🔴 High — Common enough to trigger a class-action lawsuit, particularly affecting 2013-2014 models. Owners may need to add oil between changes. (Ref: Settlement extended powertrain warranty to 8 years/100,000 miles for affected vehicles.)
  • CVT Transmission Issues (Shudder, Hesitation) 🔴 High — Widespread enough for Subaru to issue a warranty extension for the CVT to 10 years/100,000 miles for many models, including the Legacy. (Ref: Subaru CVT Warranty Enhancement Program (e.g., TSB 16-139-22 for some models).)
  • Failing Starlink Infotainment System 🟠 Medium — Very common across 2015-2019 models. Issues include freezing, phantom touches, rebooting, and backup camera failure. Led to multiple class-action lawsuits. (Ref: Multiple software update TSBs were released, but many owners report issues persist until the head unit is replaced.)
  • Dead Battery / Parasitic Drain 🟡 Low — Reported by numerous owners of 2015-2020 models. The issue is often attributed to the CAN system not allowing the car to fully 'sleep', draining the battery.
  • Cracked Windshields 🟡 Low — Some owners report windshields are prone to cracking easily, potentially due to the large glass area and body flex.

Used vs. New Parts: Buying Guide for This Vehicle

When a used part is the smart pick: A used Oil Control Valve (OCV) from a low-mileage, reputable junkyard can be a cost-effective option, as it is an external, bolt-on part. It is not a high-wear item in the traditional sense, but rather fails from clogging or electrical issues.

Donor-vehicle mileage cap: roughly under 80000 miles for the part to have meaningful remaining life.

What to inspect on the donor part:

  • Inspect the electrical connector pins on the donor OCV. They must be perfectly clean and free of any oil residue.
  • Check the production lot number on the face of the solenoid. If the first five digits are '17159' or higher, it is the updated part with the better seal.
  • Look at the mesh screens on the valve body. They should be intact and free of metallic debris or heavy sludge.
  • Ask for the VIN of the donor car to check its service history if possible, avoiding donors with known engine sludge problems.

OEM-only on this vehicle (don't cheap out):

  • Camshaft Phaser / AVCS Sprocket

Aftermarket brands forum-validated for this vehicle:

  • Denso (often the OEM manufacturer for Subaru electrical parts)

Brands owners have reported issues with on this vehicle:

  • Unbranded or generic 'white-box' solenoids from online marketplaces have a high rate of premature failure or being dead-on-arrival according to forum discussions.

Real Owner Stories

Aggregated from forums and TSBs cited above. Mileages and costs reflect what owners reported in those sources.

Subaru Outback 2.5L H4 (FB25)

Symptoms: Check Engine Light with code P0012.

What fixed it: Replacement of the Oil Control Valve with a non-defective unit; the owner noted that a previously installed part from an unreliable source had failed to clear the code.

Source hint: owner_reports source_name: eBay

2013 Subaru Legacy 2.5L (FB25)

Symptoms: Excessive oil consumption leading to low oil levels and timing-related error codes.

What fixed it: Repair or engine monitoring under the 8-year/100,000-mile warranty extension resulting from the class-action lawsuit regarding defective piston rings.

Source hint: TSB 02-157-14R (and related lawsuits)

Frequently Asked Questions

Does TSB 02-170-17R apply to my 2015 Subaru Legacy?
Yes, TSB 02-170-17R specifically covers 2013-2019 Legacy and Outback models. it addresses the AVCS Oil Control Valve (OCV) leaking engine oil into the electrical connector, which can trigger codes like P0012.
Is there a warranty extension for the oil consumption issues causing my P0012 code?
Yes, a class-action lawsuit settlement regarding excessive oil consumption in FB25 engines resulted in an extended powertrain warranty of 8 years or 100,000 miles for affected vehicles, including certain 2013 Legacy models.
Can I use 5W-30 oil in my FB25 engine to stop the P0012 code?
The manufacturer-recommended oil for the FB25 engine is 0W-20 synthetic. Using the incorrect viscosity can interfere with the hydraulic AVCS system, which is extremely sensitive to oil pressure and cleanliness.
Why did my mechanic suggest swapping parts between Bank 1 and Bank 2?
Since the intake Oil Control Valves (OCVs) for Bank 1 and Bank 2 are identical and interchangeable, swapping them is a diagnostic step. If the code changes from P0012 to P0022, it confirms the OCV itself is faulty.
Could my P0012 code be related to the CVT transmission warranty extension?
While both are known issues for the 2013-2019 Legacy, they are separate systems. The CVT warranty extension (up to 10 years/100,000 miles) covers transmission shudder and hesitation, whereas P0012 relates to engine camshaft timing and oil pressure.
What happens if I ignore the oil leaking into the OCV connector?
According to TSB 02-170-17R, if the OCV leak is left unchecked, oil can wick up the wiring harness and potentially damage the main bulkhead connector or the ECM.
How to Fix P0012 Engine Code in 4 Minutes [2 DIY Methods / Only $6.86]
How to Fix P0012 Engine Code in 4 Minutes [2 DIY Methods / Only $6.86]
Replace/upgrade FA20 FB20 oil control valve vvt
Replace/upgrade FA20 FB20 oil control valve vvt
Causes and Fixes P0012 Code: Intake (A) Camshaft Position Timing – Over-Retarded (Bank 1)
Causes and Fixes P0012 Code: Intake (A) Camshaft Position Timing – Over-Retarded (Bank 1)
Wrenchy
Article researched & written by
Go-Parts' AI research assistant. Every article is backed by live web research, verified OEM data, and real technician knowledge — so you get accurate, up-to-date information you can trust.
Meet Wrenchy → Updated Jul 23, 2026

The information in this article is provided for general reference and educational purposes only. Vehicle specifications, procedures, and part compatibility can vary by production date, trim level, and region. Always consult your vehicle's factory service manual and verify part numbers before purchasing or performing repairs. Safety-critical components such as airbags, seat belts, and braking systems should be installed by a qualified professional.

Year Coverage
This article covers the OBD-II Code P0012 (Deep Dive) for:
  • Subaru Legacy: 2013201420152016201720182019
In this article
🎬 Helpful Videos
Jump to ▴

Email This Guide

We'll send you a link to this article so you can read it later or share it.

Added to cart · Part