Skip to content
Skanyx
DTC/P0016·BMW

P0016 on BMW: Causes, Symptoms and Fix Cost

Quick Answer
High SeverityNot safe to driveBMW

P0016 on a BMW means the crankshaft and intake camshaft on Bank 1 are not in the correct rotational relationship. The ECU detects that camshaft position deviates from what it commanded based on crankshaft position. Causes range from low oil level to timing chain stretch.

Typical repair cost, all makes€50 - €2600

Connect any standard Bluetooth OBD2 adapter to your BMW and Skanyx tells you what P0016 means on that engine, whether it is safe to keep driving, and what the fix should cost. Free on iPhone and Android.

Get Skanyx free

What does P0016 mean on a BMW?

The Quick Answer above is the generic definition. What follows is the model-specific detail for the BMW models that log P0016.

BMW 3 Series

2006-2024

The N47 diesel (if applicable) and N20/N26 4-cylinder turbos are known for timing chain issues. The N20 chain is on the transmission side of the engine, requiring engine-out or transmission-out removal for replacement, dramatically increasing labour cost. The N52/N55 inline-6 engines have more robust timing chains but VANOS solenoid failures are common and trigger P0016.

What causes P0016 on a BMW?

Beyond the generic causes listed on the main P0016 page, these are the patterns noted for BMW models:

BMW 3 SeriesN20/N26 timing chain on transmission side (engine-out labour required)
BMW 3 SeriesVANOS solenoid failure on N52/N55 inline-6

How to diagnose P0016 on a BMW with OBD2

Follow these steps to pinpoint the root cause of P0016:

  1. Check engine oil level and condition. If low, dirty, or overdue for change, start here. Putting the specified oil back in is a common enough fix to rule out before anything else
  2. Listen for cold-start rattle from front of engine (1-5 seconds on startup). This is the classic timing chain stretch symptom
  3. Read live data: check camshaft position deviation from commanded position. Deviation over 5-10 degrees indicates timing issue
  4. Test VVT solenoid: check resistance with multimeter, inspect mesh screen for debris. A clogged screen is a common quick fix
  5. If oil change and VVT solenoid check don't resolve, a timing chain kit replacement is likely needed. Have a shop confirm with a timing chain wear measurement

How much does P0016 cost to fix on a BMW? (EUR)

Estimated repair costs for P0016 in EUR, compiled across makes. Expect BMW parts and labour towards the upper end of each range.

Repair Parts Cost Labor Cost Total Estimate DIY Difficulty
Oil change (correct spec oil) €30–€80 €20–€50 €50–€130 Easy
Replace VVT/VCT solenoid €30–€150 €40–€150 €70–€300 Moderate
Replace timing chain kit (chain, guides, tensioner) €150–€600 €500–€2000 €650–€2600 Professional
Replace camshaft position sensor €20–€80 €30–€100 €50–€180 Moderate

Prices estimated as of March 2026. Costs vary by region, vehicle, and shop.

These codes are often seen alongside P0016 or point to related issues, on any make:

Looking for the full P0016 reference (all makes, full diagnosis flow, complete repair cost matrix)?

See the main P0016 guide
Skanyx · BMW

Diagnose P0016 on your BMW

Your car logged P0016. Skanyx reads it on any standard Bluetooth OBD2 adapter, tells you whether it is safe to keep driving, and shows the €50-€2600 repair range so you know the number before a shop quotes you. Free on iPhone and Android, and you do not need to be a mechanic to read it.

Get Skanyx free