General
P0011Camshaft position timing over advanced, bank 1
A Camshaft Position - Timing Over-Advanced or System Performance Bank 1
Get it diagnosed soon
Generic OBD-II code
Camshaft Position (CMP) Sensor
What this part does
Reports camshaft position/rotation so the control module can time fuel injection, ignition, and variable valve timing correctly.
What the computer is measuring
Variable valve timing lets the engine move the camshaft slightly relative to the crankshaft while it is running. Opening the valves a little earlier or later changes how the engine breathes, and the best compromise is different at idle, at cruise and at full throttle. Being able to shift it on the fly gives better torque low down, better power high up and lower emissions than any fixed setting could.
The mechanism is hydraulic. A phaser on the end of the camshaft is rotated by engine oil pressure, and an oil control valve meters that oil under command from the computer. The camshaft position sensor then reports where the camshaft actually ended up.
That last part is the whole test. The computer commands a position, waits, and compares what the sensor reports against what it asked for. P0011 means the camshaft on bank 1 is more advanced than commanded, and the correction is not bringing it back.
Because the actuator is driven by oil through narrow passages and a fine screen, the health of the oil matters more here than almost anywhere else on the engine. Oil that is low, old, too thick, or full of sludge simply cannot move the phaser quickly enough. That is why an oil change with the correct grade genuinely resolves a good share of these codes, and why it is worth doing before anyone quotes you for a phaser.
What you will notice
- Steady check engine light.
- Rough idle, sometimes with a noticeable shake or a tendency to stall.
- Loss of power, particularly low down or at the top of the rev range depending on the engine.
- A rattle from the front of the engine on start up, lasting a second or two.
- Worse fuel economy.
Likely causes, most common first
Ordered by how often each one actually turns out to be the problem, not alphabetically and not by part price.
Low or dirty engine oil
The most common cause and the one people skip. Variable valve timing is operated by oil pressure through very small passages. Old, sludged or low oil cannot move the phaser, and the computer sees the timing fail to follow the command.
A clogged or failed oil control valve
The solenoid that meters oil to the phaser. Its screen blocks with sludge, which produces this code with everything else in good order.
A failed camshaft position sensor or a wiring fault
The computer compares commanded timing against what the sensor reports. A bad sensor reports the wrong position and the correction never converges.
A worn or stuck camshaft phaser
The actuator on the end of the camshaft. Genuine failure happens, and it is also what a long history of neglected oil eventually produces.
A stretched timing chain or worn guides
Puts the camshaft physically out of relationship with the crankshaft, so the computer cannot correct the timing into range.
What to check, in order
Check the oil level and look at its condition on the dipstick before anything else.
Low or black sludgy oil is the leading cause. Change it with the correct grade and a new filter, clear the code, and drive it before spending anything else.
Remove the oil control valve and inspect its screen and plunger.
A screen packed with sludge explains the code directly. A clean, freely moving valve rules it out.
Check that the oil control valve is receiving its command and moving.
A solenoid that does not respond electrically points at wiring or the computer rather than at oil flow.
Compare the commanded camshaft position against the actual reported position while the engine runs.
Actual timing that never moves toward the command points at oil supply or the phaser. Actual timing that swings wildly or reads implausibly points at the camshaft position sensor.
Listen for chain noise on start up and check timing chain wear if the engine has a history of it.
A stretched chain is a mechanical fault that no amount of solenoid cleaning will fix.
Where this one turns up most
- Engines with a history of extended oil change intervals or the wrong oil grade.
- Higher mileage four cylinder engines with variable valve timing on the intake camshaft.
Codes that often show up alongside it
What a DriveDecode adapter can read
A DriveDecode adapter reads engine and emissions systems: the powertrain and emissions codes the OBD-II standard requires on every US vehicle it covers. It does not read ABS, airbag (SRS), TPMS or transmission-specific manufacturer codes. Those need make-specific decoding that generic OBD-II hardware cannot do.
Reading P0011 on your own car
DriveDecode pulls P0011 straight off the vehicle along with the freeze frame the computer stored when it set: the coolant temperature, engine load and speed at that exact moment. That context is what separates a fault that happens on a cold start from one that happens under load, and it is the first thing the list above asks you to narrow down.
Last reviewed 2026-09-05. Definition sourced from the published standard.