AutoLogicTools

OBD-II trouble code

P0015: Camshaft Position B — Timing Over-Retarded (Bank 1)

The exhaust camshaft on Bank 1 is more retarded than the engine computer commanded. The 'B' camshaft is the exhaust cam on dual-VVT engines. As with all over-retarded cam codes, dirty oil or a stuck VVT solenoid lead the suspect list.

Quick facts

System
Powertrain
Category
Variable Valve Timing
Severity
Medium severity
Drivable
Usually safe to drive short-term
Repair cost range
$150$1,500
DIY difficulty
Intermediate DIY

What does P0015 mean?

P0015 belongs to the same family as P0011, P0012, and P0014, but it points to a specific camshaft: the 'B' cam on Bank 1, which on dual-overhead-cam engines with variable timing on both cams is the exhaust camshaft. (P0014 is the over-advanced version of this same exhaust cam; P0015 is the over-retarded version.) If your engine has only intake-side VVT, you won't see a 'B' code at all — so P0015 by itself tells you the engine adjusts exhaust valve timing too.

The exhaust cam phaser works the same way as the intake one. The engine control module (ECM) commands oil pressure through a dedicated oil control valve — the exhaust-side VVT solenoid — to rotate the exhaust cam phaser, tuning valve overlap for emissions, idle quality, and efficiency. The exhaust camshaft position sensor reports the actual position. P0015 sets when the ECM commands the exhaust cam to advance but it stays retarded, or drifts retarded, past the allowed tolerance after several tries.

As with every over-retarded cam code, the dominant root cause is oil. The phaser and solenoid depend on clean oil at the right pressure flowing through narrow passages; thick, sludged, contaminated, or low oil simply can't move the cam, so it stays retarded and the code sets. An oil and filter change with the exact specified viscosity is always the right first move. After oil, the suspects are the exhaust-side VVT solenoid (stuck, clogged screen, or failed), a worn exhaust cam phaser, a stretched timing chain on a high-mileage engine, and an inaccurate exhaust camshaft position sensor. Because P0015 is exhaust-side, the symptoms can lean toward rough idle and emissions-related running quality more than raw power loss, though both are possible. It's not a leave-you-stranded code, but a chain or phaser left unaddressed gets costly.

Common causes

  • Dirty, sludged, or low engine oil starving the exhaust-side VVT solenoid (the most common cause)
  • Wrong oil viscosity for the engine specification
  • Stuck exhaust-side VVT solenoid (oil control valve) unable to advance the cam
  • Clogged screen filter on the exhaust VVT solenoid
  • Failed exhaust VVT solenoid
  • Worn exhaust cam phaser/actuator that can't reach or hold the commanded position
  • Stretched timing chain on a high-mileage engine altering exhaust cam timing
  • Faulty exhaust camshaft position sensor reporting an inaccurate retarded position

Symptoms

  • Check engine light is on
  • Rough or unstable idle
  • Hesitation or reduced throttle response
  • Loss of power, especially in the mid range
  • Reduced fuel economy
  • Occasional hard starting or stalling
  • Cold-start rattle if a phaser or timing chain is involved

Diagnostic steps

  1. 1.Check engine oil level and condition first. Low or dirty oil is the leading cause across all over-retarded cam codes — change the oil and filter with the exact specified viscosity, clear the code, and recheck after 50 to 100 miles.
  2. 2.Use a scan tool to monitor commanded versus actual exhaust cam position on Bank 1. With P0015 the exhaust cam will fail to reach the commanded advance.
  3. 3.Test the exhaust-side VVT solenoid resistance and inspect its screen filter for debris blocking oil flow.
  4. 4.Command the solenoid with a bidirectional scan tool if available and confirm whether the exhaust cam position responds.
  5. 5.On a high-mileage engine, review cam-to-crank correlation data for signs of a stretched timing chain.
  6. 6.Confirm the exhaust camshaft position sensor signal is accurate before replacing mechanical parts.

Repair cost

$150$1,500

An oil and filter change is $50-150 and resolves a real share of P0015 cases on neglected engines. Exhaust-side VVT solenoid replacement runs $200-700 in parts and labor. A worn exhaust cam phaser is more labor-intensive. Timing chain replacement is the expensive worst case at $1,000-2,500+ depending on the engine. Work cheapest-first, starting with oil.

Estimate your repair

Run the numbers for your vehicle

Open the Repair Cost Estimator with vvt solenoid replacement preselected. Adjust labor rate and vehicle category to fit your situation.

DIY vs shop

This is an intermediate DIY job. It usually involves diagnostic steps, specialty parts, and some careful work in tight spaces. If you have the tools and a service manual or trustworthy video for your specific vehicle, it is achievable in a weekend. Otherwise, a competent independent shop will be faster.

Related codes

Frequently asked questions

What does the 'B' camshaft mean in P0015?

On engines with variable timing on both camshafts, 'A' is the intake cam and 'B' is the exhaust cam. So P0015 is specifically about the exhaust camshaft on Bank 1 being over-retarded. If your engine only has intake-side VVT, you'd never see a 'B' code — the fact that P0015 exists for your engine means it phases the exhaust cam too. Bank 1 is the side of the engine containing cylinder 1.

What's the difference between P0014 and P0015?

Both involve the Bank 1 exhaust ('B') camshaft. P0014 means it's over-advanced — ahead of the commanded position. P0015 means it's over-retarded — lagging behind, usually because it was commanded to advance and couldn't get there. P0015 points more strongly toward a flow problem feeding the phaser, which is why low or dirty oil starving the solenoid is an especially common cause.

Will an oil change fix P0015?

Frequently, yes. The exhaust cam phaser needs clean oil at the right pressure to move, and dirty, sludged, or low oil is the most common reason it can't. If your oil is overdue or dark, change it with the manufacturer's specified viscosity, clear the code, and drive 50 to 100 miles before deciding anything else is wrong. It's the cheapest first step and a common fix.

How much does it cost to fix P0015?

Best case is a $50-150 oil and filter change. An exhaust-side VVT solenoid is typically $200-700 installed. A worn cam phaser or a stretched timing chain raises the cost to $1,000-2,500 or more depending on the engine. Diagnose cheapest-first so you don't pay for a chain when fresh oil would have cleared the code.

AutoLogicTools provides general automotive planning information. Trouble code interpretations, repair cost ranges, and DIY guidance vary by vehicle, model year, location, parts quality, and shop labor rate. Always verify a diagnosis with a scan tool and a qualified automotive professional before approving repairs.