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

**Verdict:** Drive to a shop this week

Camshaft timing - Generic OBD-II code, applies to all gasoline cars and light trucks sold in the US since 1996.

- **Typical cost:** $80-$2,800
- **Urgency:** This week
- **Most likely:** Oil problem or the exhaust cam solenoid
- **DIY?:** Steps 1-4

## Quick answer

P0015 means the engine computer found the bank 1 "B" camshaft, the exhaust cam on most engines, later (more retarded) than it should be. The cam timing system could not hold the exhaust cam where it was commanded. Oil problems, a sticking exhaust cam solenoid and a worn exhaust cam phaser are the usual causes.

## What does P0015 mean?

On engines with variable timing on both camshafts, the exhaust cam has its own phaser and oil control solenoid. Shifting exhaust valve timing lets the engine keep a small amount of exhaust gas in the cylinders, which cuts emissions and works like built-in exhaust gas recirculation. Under SAE J2012, "B" means exhaust, right or rear, so on most engines P0015 concerns the exhaust cam, but service information confirms it for yours.

On many engines the exhaust phaser rests at full advance and uses oil pressure, often helped by a return spring, to move toward retard. P0015 sets when the actual exhaust cam angle sits later than the computer expects, by more than a set amount, for long enough. Some makers check it at startup, when the phaser should be parked at its stop, and many need two trips. Bank 1 is the cylinder 1 side. P0014 is the over-advanced partner code.

## What are the symptoms of P0015?

- Check engine light on
- Rough idle, often worse once the engine is warm
- Stalling at idle or when coming to a stop
- Weaker acceleration and slightly lower fuel economy
- Brief clatter from the top or front of the engine at a cold start

## What causes P0015?

Ranked from most to least likely. Check them in this order: the cheap, common causes first.

1. **Low, dirty or wrong-viscosity oil** (most common). The exhaust phaser moves on engine oil pressure, and on many designs a return spring helps park it. Low, aged or wrong-viscosity oil leaves the phaser slow or unable to move back to its rest position, so the cam lingers late. Short-trip driving and stretched oil changes raise the risk, so check the dipstick and service records first.
2. **Sticking exhaust cam timing solenoid** (common). Varnish or a metal particle can hold the exhaust solenoid's spool partly open, feeding oil to the retard side when it should not. The coil can still test normal. Where the intake and exhaust solenoids are the same part, swapping them and seeing whether the code moves to the intake side is a quick home check.
3. **Worn or failed exhaust cam phaser** (common). Worn internal seals let oil leak past the vanes, and a broken return spring or a lock pin that will not engage can leave the exhaust cam drifting late. A failing phaser often clatters for a second or two at a cold start. Replacing it usually means removing the valve cover and some timing components.
4. **Stretched timing chain** (less common). Chain stretch lets both cams fall behind the crankshaft, so it usually sets intake cam codes or correlation codes such as P0017 alongside P0015. It builds slowly on high-mileage engines with poor oil care. If P0015 appears alone with no rattle, the chain is less likely than the oil, solenoid or phaser.
5. **Exhaust cam timed wrong after engine work** (rare). If P0015 appeared right after timing chain, phaser or head work, the exhaust cam may have been installed a tooth off, or the phaser was not locked correctly during assembly. The engine may run nearly normally. Checking the timing marks and cam correlation values on a scan tool confirms it before any parts are replaced.

## How do you diagnose P0015?

1. Check oil level, age and grade, and top up or change it if needed.
2. Read all codes and note whether P0015 is alone or with P0014, P0017 or intake cam codes.
3. Watch desired versus actual exhaust cam angle on a scan tool, and command the exhaust solenoid if the tool allows.
4. Inspect the exhaust solenoid for debris, or swap it with an identical intake solenoid to see whether the fault moves.
5. If oil and solenoid are fine, check the timing marks, chain stretch and the exhaust phaser.

## How do you fix P0015, and what does it cost?

| Fix | Typical cost | What it involves |
| --- | --- | --- |
| Oil and filter change | $80-$150 | Use the exact viscosity your engine specifies. |
| Replace exhaust cam timing solenoid | $150-$450 | Often reachable from the top of the engine. |
| Replace exhaust cam phaser (often with timing chain) | $800-$2,800 | Higher end when the chain, guides and tensioner are replaced at the same time. |

Full price breakdowns: [oil change cost](/cost/oil-change), [timing chain replacement cost](/cost/timing-chain-replacement).

## Is it safe to drive with P0015?

> **Drive to a shop this week.** Usually safe to drive gently for a short time once you confirm the oil level is correct. Stop and arrange a tow if the engine stalls repeatedly, a loud rattle develops or the check engine light flashes, since that suggests a timing or misfire problem that can cause damage.

## Will P0015 fail an emissions test?

P0015 will fail an OBD-II emissions test in most states because the check engine light is on. Exhaust cam timing is part of how many engines control emissions, so a cam stuck out of position can change tailpipe readings and idle quality. After clearing the code, wait until the readiness monitors report complete before going for a retest.

## After the repair: clearing P0015

After the repair, clear the code and drive several trips with cold starts, idling and steady cruising, since many makers check exhaust cam position at startup. A scan tool should show actual exhaust cam angle closely matching the desired angle. The fix worked if no pending code appears after a few days and the warm idle stays smooth.

## How to prevent P0015

- Use only the oil viscosity and specification printed in the owner's manual or on the oil cap.
- Shorten oil change intervals for towing, dusty roads, extreme heat or mostly short trips.
- Top up oil between changes so the cam phasers never run on a low oil level.
- Ask for the cam solenoid and any oil screens to be checked during valve cover work.

## Codes often seen with P0015

- [P0014](/codes/p0014): "B" Camshaft Position - Timing Over-Advanced or System Performance (Bank 1)
- [P0013](/codes/p0013): "B" Camshaft Position Actuator Circuit (Bank 1)
- [P0012](/codes/p0012): "A" Camshaft Position - Timing Over-Retarded (Bank 1)
- [P0017](/codes/p0017): Crankshaft Position - Camshaft Position Correlation (Bank 1 Sensor B)
- [P0011](/codes/p0011): "A" Camshaft Position - Timing Over-Advanced or System Performance (Bank 1)

## Frequently asked questions

### Can I drive with a P0015 code?

Yes, in most cases you can drive short distances with P0015 after confirming the oil is full. Expect a rougher idle and slightly weaker response. Stop and get a tow if the engine starts stalling often, a loud rattle appears from the timing area, or the check engine light begins flashing.

### What does "B" camshaft mean in P0015?

The "B" camshaft is the exhaust camshaft on most engines. SAE J2012 defines "B" as exhaust, right or rear, while "A" is intake, left or front. A few makers apply the letters differently, so a shop should confirm which cam the code refers to using service information for your engine.

### What causes P0015?

Low or dirty oil, a sticking exhaust cam timing solenoid and a worn exhaust cam phaser are the main causes of P0015. A stretched timing chain, or timing parts installed a tooth off after engine work, can also set it. Start with the oil, since it is the cheapest and most common fix.

### How much does it cost to fix P0015?

Most P0015 repairs cost $80 to $2,800 at an independent shop. An oil and filter change runs $80 to $150 and an exhaust cam solenoid $150 to $450. An exhaust cam phaser costs $800 to $2,800, with the top of that range when the timing chain is replaced too.

### What is the difference between P0014 and P0015?

P0014 means the bank 1 exhaust cam is too far advanced or not responding, while P0015 means it is stuck too far retarded. Both share the same solenoid, phaser and oil supply, so diagnosis starts the same way. The direction helps a technician judge whether oil is reaching the right side of the phaser.

### Can I swap the cam solenoids to test P0015?

Yes, on engines where the intake and exhaust solenoids are the same part, swapping them is a common home test. If the code changes to an intake cam code such as P0012, the solenoid is bad. If P0015 stays, look at the oil supply, the exhaust phaser or the timing chain instead.

### Can P0015 cause stalling?

Yes, P0015 can cause stalling, mainly at idle or when coming to a stop. An exhaust cam stuck late increases valve overlap, so more exhaust stays in the cylinders and the idle gets rough or dies. The stalling usually stops once the cam returns to its proper position.

### Can I fix P0015 myself?

Partly, yes. Checking and changing the oil and replacing an easy-to-reach exhaust cam solenoid are reasonable home jobs with basic tools. Exhaust phaser replacement needs cam locking tools and precise timing, and a mistake can damage the engine, so most owners leave that part to a shop.

### Is P0015 an expensive fix?

P0015 is often an inexpensive fix when oil or the solenoid is to blame, usually $450 or less. It becomes expensive only if the exhaust phaser or timing chain must be replaced, which can reach about $2,800 on some engines. Proper testing before buying parts keeps the bill down.

### Will P0015 clear itself?

P0015 can clear itself if the exhaust cam returns to normal on later trips, for example after an oil top-up. On most cars the light turns off after a few good trips, but the computer keeps a history of the code. If P0015 keeps coming back, the cause is still there.

## Sources

- [SAE J2012: Diagnostic Trouble Code Definitions](https://www.sae.org/standards/content/j2012_201812/)
- [EPA: On-Board Diagnostics (OBD)](https://www.epa.gov/state-and-local-transportation/vehicle-emissions-board-diagnostics-obd)
- [fueleconomy.gov: Keeping your vehicle in shape](https://www.fueleconomy.gov/feg/maintain.jsp)

## Other camshaft timing codes

- [P0010 "A" Camshaft Position Actuator Circuit (Bank 1)](https://diagxcar.com/codes/p0010)
- [P0011 "A" Camshaft Position - Timing Over-Advanced or System Performance (Bank 1)](https://diagxcar.com/codes/p0011)
- [P0012 "A" Camshaft Position - Timing Over-Retarded (Bank 1)](https://diagxcar.com/codes/p0012)
- [P0013 "B" Camshaft Position Actuator Circuit (Bank 1)](https://diagxcar.com/codes/p0013)
- [P0014 "B" Camshaft Position - Timing Over-Advanced or System Performance (Bank 1)](https://diagxcar.com/codes/p0014)
- [P0016 Crankshaft Position - Camshaft Position Correlation (Bank 1 Sensor A)](https://diagxcar.com/codes/p0016)
- [P0017 Crankshaft Position - Camshaft Position Correlation (Bank 1 Sensor B)](https://diagxcar.com/codes/p0017)
- [P0018 Crankshaft Position - Camshaft Position Correlation (Bank 2 Sensor A)](https://diagxcar.com/codes/p0018)
- [P0019 Crankshaft Position - Camshaft Position Correlation (Bank 2 Sensor B)](https://diagxcar.com/codes/p0019)
- [P0021 "A" Camshaft Position - Timing Over-Advanced or System Performance (Bank 2)](https://diagxcar.com/codes/p0021)

## Symptoms

- [Why is my car idling rough?](https://diagxcar.com/symptoms/rough-idle)
- [Why does my car stall while driving?](https://diagxcar.com/symptoms/car-stalls-while-driving)
- [Why does my car shake at idle?](https://diagxcar.com/symptoms/car-shakes-at-idle)

## Repair costs

- [Oil change cost](https://diagxcar.com/cost/oil-change): $45-$150
- [Timing chain replacement cost](https://diagxcar.com/cost/timing-chain-replacement): $1,200-$3,500

---

Source page: https://diagxcar.com/codes/p0015
Updated: 2026-11-03
General information, not a substitute for a qualified mechanic.
