P0017 means the engine control module compared the crankshaft position sensor signal against the “sensor B” camshaft position sensor on bank 1 and found the timing relationship between them outside the acceptable range. On the vast majority of vehicles that set this code, sensor B is the exhaust camshaft — which only exists as a separately monitored signal on engines with dual independent variable valve timing, where the intake and exhaust camshafts are phased independently of each other. That single fact does most of the diagnostic work: P0017 isolates a fault to the exhaust cam side specifically, which narrows the suspect list a lot faster than people expect.
The table below is the short version. Read the “How Urgent” column before anything else if the check engine light just came on.
| Cause | Telltale Sign | Typical Cost |
|---|---|---|
| Failed exhaust VVT phaser/actuator | Rattle for 1–3 seconds at cold startup, disappears once oil pressure builds | $250 – $750 per phaser |
| Stretched timing chain | Code returns after clearing, sometimes paired with P0016 | $400 – $1,800 |
| Worn chain guides/tensioner | Chain slap noise, deviation worsens with RPM | $500 – $1,800 |
| Clogged exhaust-side oil control valve screen | Sets more often cold or after a long idle | $60 – $250 |
| Low or degraded oil pressure | Overdue oil change, wrong viscosity, low oil level | $40 oil change – $600 oil pump |
| Skipped timing chain tooth | Rough idle, misfire code, sets right after a timing repair | $600 – $2,000 |
| Camshaft (sensor B) or crankshaft sensor fault | Intermittent code, no unusual noise | $80 – $250 |
Stop driving if the code is accompanied by a rough idle, a noticeable loss of power, or a rattling noise from the front of the engine that continues after startup. Those signs point toward actual timing chain slack rather than a sensor or wiring fault, and on an interference engine a chain that jumps further can bend valves. A P0017 with no drivability symptoms and no noise is reasonable to drive on for a few days while you get it diagnosed, but do not ignore it indefinitely.
What P0017 Actually Means
Engines that vary valve timing on both the intake and exhaust camshafts independently — often marketed as “dual VVT,” “Ti-VCT,” “Dual VVT-i,” or similar depending on manufacturer — need two separate camshaft position signals per bank to know where each cam actually sits, because the two are no longer mechanically locked together at a fixed relationship. SAE convention labels the intake cam sensor “sensor A” and the exhaust cam sensor “sensor B” on these engines. P0016 checks the crank-to-intake-cam relationship; P0017 checks the crank-to-exhaust-cam relationship. If your engine only has a single VVT system on the intake side, or no VVT at all, it will not have a P0017-capable circuit in the first place — so seeing this code confirms the engine has independent exhaust cam phasing, which matters for parts sourcing since the two phasers are rarely interchangeable.
Like P0016, this is a correlation code, not a circuit code. A circuit code such as P0335 (crank) or a camshaft circuit fault means the module got no valid signal at all. P0017 means both sensors are reporting valid signals, but the actual angular relationship between them has drifted past the calibrated threshold — almost always because something physically holding that angle has worn or lost hydraulic control, not because a sensor needs replacing.
Pull freeze frame data before anything else. Note the RPM and load at the moment the code set, and if your scan tool reports a commanded-versus-actual exhaust cam angle PID, compare the two at idle and at 2,000–2,500 RPM. A gap that is largest at idle and narrows as RPM rises points toward oil delivery or a slow-to-respond phaser; a gap that stays roughly proportional across the RPM range points more toward mechanical chain stretch.
Symptoms You May Notice Alongside the Code
P0017 sometimes sets with no noticeable driveability change, particularly when the deviation is small. When symptoms are present, the most common is a rattle for a second or two on cold startup that quiets once oil pressure builds — the same signature associated with worn VVT phasers generally, but here specifically traceable to the exhaust side. A rough or uneven idle and a slight loss of power under load are also common, since exhaust valve timing affects how efficiently the cylinder scavenges spent gases before the next intake stroke. A misfire code (P0300 or cylinder-specific) can accompany P0017 if the timing drift is large enough to disrupt combustion, and reduced fuel economy is a quieter symptom that’s easy to miss because it develops gradually as the phaser wears rather than appearing all at once.
1. Failed Exhaust VVT Phaser or Actuator
The exhaust cam phaser is a separate hydraulic actuator from the intake phaser, mounted on the exhaust camshaft and commanded by its own oil control valve. It wears the same way the intake phaser does — internal play develops between the phaser’s vanes and housing, which is exactly what produces the classic startup rattle before oil pressure takes up the slack. Because it is a distinct part from the intake phaser, it is entirely possible for the exhaust phaser to fail while the intake side (and P0016) stays clean, which is the most common single-code presentation of P0017. This is the most likely cause on any engine with meaningful mileage and no other correlation codes present.
2. Stretched Timing Chain
A chain that has stretched from normal wear lets both the intake and exhaust cam sprockets ride looser than designed, which can push either or both correlation checks out of tolerance depending on how the slack distributes around the chain path. This is the cause most likely to produce P0016 and P0017 together, since a stretched chain affects the whole timing set rather than one phaser in isolation. Chain stretch is the leading cause of a genuine, non-intermittent correlation fault on engines in the 80,000–150,000 mile range, and it is confirmed by physically measuring chain elongation with the timing cover off rather than by scan tool data alone.
3. Worn Chain Guides or a Weak Tensioner
The chain can measure within spec while the plastic guides that keep it aligned, or the tensioner that keeps it under proper preload, have failed independently. A worn guide lets the chain flex more under load, so the correlation deviation tends to be worse at higher RPM than at idle — a useful way to tell this apart from a phaser problem, which is typically worse at idle. A tensioner that has lost hydraulic pressure allows slack to develop even with a chain and guides that measure fine on their own, which is why this cause requires opening the timing cover to confirm rather than relying on chain-stretch measurement alone.
4. Clogged Exhaust-Side Oil Control Valve Screen
The oil control valve that feeds the exhaust phaser has its own small mesh filter screen, separate from the one feeding the intake phaser. Sludge and metal particulate collect there over time and restrict oil flow to the exhaust phaser specifically, even when overall engine oil pressure and the intake phaser are both normal. This produces the same slow-to-respond symptom as a failing phaser, but the fix is cleaning or replacing the screen and valve rather than the phaser itself — worth checking before condemning the more expensive part, especially on engines with a history of extended oil change intervals.
5. Low or Degraded Oil Pressure
Both phasers depend on adequate oil pressure to hold their commanded position, and low oil level, an overdue change with sludge partially blocking the feed galley, the wrong viscosity, or a weakening oil pump can all delay how fast the exhaust phaser reaches and holds its target angle. The correlation check has a limited tolerance window for that lag before it flags P0017. This is worth ruling out early since it is the cheapest possible cause — a correct oil change can resolve a P0017 with no mechanical fault at all.
6. Skipped Timing Chain Tooth
If the chain has actually jumped a tooth on the exhaust cam sprocket — from severe wear, oil starvation, or a chain installed slightly loose during a prior repair — the crank/cam relationship shifts by a large, fixed amount rather than drifting gradually, producing a much bigger deviation than ordinary stretch. This version is typically paired with a rough idle, a misfire code, and sometimes a no-start, and on an interference engine it carries real risk of valve-to-piston contact if driven on.
7. Camshaft (Sensor B) or Crankshaft Sensor Fault
The least likely cause, but real: a degrading signal from the sensor B camshaft sensor itself — a widening air gap, a chipped reluctor tooth, or an intermittent connector — can distort the signal enough to fail the correlation calculation while still passing the basic circuit check, so P0017 can appear without a companion circuit code. This is more plausible when the code is intermittent, temperature-dependent, or clears for a long stretch after a battery disconnect and no mechanical repair.
Diagnostic Order
Start cheap and work toward invasive. Check oil level and condition first — if low, dark, or overdue, address that and clear the code before anything else, since it costs nothing to rule out. With a scan tool that shows commanded versus actual exhaust cam angle, compare the gap at idle and at 2,000–2,500 RPM; a gap that narrows as RPM and oil pressure rise points toward the phaser or oil delivery, while one that holds steady or worsens with load points toward chain or guide wear. Listen specifically for the one-to-three-second startup rattle that identifies phaser wear. Check whether P0016 is also stored — if both correlation codes are present together, that shifts the likely cause toward a shared source like the timing chain or oil pressure rather than the exhaust phaser alone. If mechanical inspection is warranted, pulling the valve cover or timing cover to physically measure chain slack and inspect the guides is the only way to confirm stretch versus a phaser-only problem. Do not replace the sensor as a first guess — it is the least statistically likely cause of a correlation fault.
Repair Cost
A single exhaust VVT phaser replaced on its own, when the chain and guides test fine, typically runs $250 to $750 including parts and labor — on the higher end when the exhaust phaser sits in a harder-to-reach position than the intake phaser, which is common on some V6 and V8 layouts. A full timing chain kit — chain, guides, tensioner, and sprockets replaced together, the correct way to do this repair rather than the chain alone — runs $400 to $1,800 depending on engine layout. An oil control valve or its filter screen is $60 to $250. An overdue oil change that resolves a low-oil-pressure cause costs under $100. Sensor replacement, when it genuinely is the cause, is usually $80 to $250.
Can You Keep Driving With It?
A P0017 with no noise and no drivability symptoms, on an engine with clean, correct-level oil, is reasonable to drive on for a short period while you arrange diagnosis — the deviation triggering the code is often small enough to be a trend flag rather than an emergency. That changes the moment a startup rattle, rough idle, misfire, or noticeable power loss shows up alongside the code, since those indicate either advancing chain slack or a phaser that has degraded further, both of which worsen with continued driving. On an interference engine, a P0017 accompanied by any rattling noise is worth having checked within days rather than weeks; the cost difference between replacing a worn phaser proactively and replacing bent valves after a skipped tooth is not small. If the check engine light starts flashing or the engine begins to misfire noticeably, stop driving and have it towed.
Related Codes
P0016 is the equivalent correlation fault for bank 1, sensor A — typically the intake camshaft on the same dual-VVT engines that support P0017. A vehicle throwing both codes together points strongly toward a shared cause, usually the timing chain or oil pressure affecting both phasers, rather than two independent phaser failures. P0335 and P0340 are the underlying circuit codes for the crank and cam sensors; if either sets alongside P0017, diagnose the circuit fault first, since a genuinely broken sensor signal can also disturb the correlation check as a side effect. A vehicle that sets P0017 alone, with no P0016 and no circuit code, has isolated the fault specifically to the exhaust side — the cleaner diagnostic case this article is built around.
What Scanner Do You Need for P0017?
As covered above, the most useful data for P0017 is commanded against actual cam angle, alongside the freeze frame recorded when the code set. A scanner that reads live data, not just codes, shows both. Our guide to the best OBD2 scanners compares models at a range of prices.
What does P0017 mean?
The engine control module compared the crankshaft position sensor signal against the bank 1, sensor B camshaft position sensor — typically the exhaust camshaft on dual-VVT engines — and found the timing relationship between them outside the acceptable range. Both sensors are sending valid signals; the physical timing between them has drifted.
Is P0017 the same as P0016?
No. Both are correlation codes, but P0016 covers sensor A (typically the intake camshaft) and P0017 covers sensor B (typically the exhaust camshaft) — two separate phasers on engines with independent intake and exhaust variable valve timing. If both codes are stored together, suspect a shared cause like the timing chain or oil pressure rather than two unrelated phaser failures.
How much does it cost to fix a P0017 code?
A single exhaust VVT phaser replaced alone typically runs $250 to $750. A full timing chain kit (chain, guides, tensioner) runs $400 to $1,800. An oil control valve or its filter screen is $60 to $250. If low or overdue oil is the cause, a proper oil change can resolve it for under $100.
Is it safe to drive with a P0017 code?
Short term, if there is no rattling noise, rough idle, or misfire, it is reasonable to keep driving while you arrange diagnosis. If any startup rattle, rough running, or power loss appears alongside the code, have it checked promptly — those signs point to advancing chain slack or phaser wear, which get worse with continued driving and carry real risk on interference engines.
Will clearing a P0017 code make it come back?
If the underlying cause is mechanical — a worn exhaust phaser, a stretched chain, or worn guides — clearing the code resets the light temporarily but it returns once the correlation check runs again, usually within one drive cycle. If the cause was low or degraded oil, a proper oil change can resolve it permanently.
Which cars commonly set a P0017 code?
Only engines with independent intake and exhaust variable valve timing have a sensor B camshaft signal at all, so P0017 only appears on those platforms — many modern GM, Ford, and Toyota engines with dual VVT systems among others. An engine with only intake-side VVT, or no VVT, cannot set this code.
As an Amazon Associate we earn from qualifying purchases.







