P0315 Crankshaft position system variation not learned
What P0315 means
To detect misfires accurately, the engine computer has to learn the small manufacturing variations in the crankshaft sensor's toothed wheel. That learned value is missing, usually after the engine computer, crankshaft sensor or flywheel has been replaced. Until it is learned, misfire detection may not work and the emissions readiness check cannot complete.
P0315 is a generic SAE J2012 code: it means the same on every make. The exact cause still depends on the car, so read the freeze-frame data before replacing parts.
At a glance
- Severity
- High
- Typical repair cost
- 10–100 €
- Workshop time
- 0.2–1 h
- Repair difficulty
- Easy
- DIY possible
- Yes
- Check engine light
- Yes
- Affects emissions test
- Yes
Parts and labour at an independent workshop in Europe. Main dealers charge more; the cause decides the bill, not the code.
Symptoms
- Check engine light on
- Usually no change in how the engine runs
- Misfire monitor not completing
- Car may fail technical inspection on readiness
Common causes
- Crankshaft variation relearn not performed after a repair (most common)
- Engine control unit replaced or reprogrammed
- Crankshaft position sensor, reluctor ring or flywheel replaced
- Damaged reluctor ring or faulty crankshaft sensor preventing the relearn
Can I keep driving with P0315?
Have it dealt with within a few days. The car usually drives normally, but real misfires may go undetected while the learned value is missing, and an underlying sensor or tone-wheel fault could get worse.
What to check first
- Check whether the engine computer, crankshaft sensor, flywheel or timing parts were recently replaced or reprogrammed.
- Run the crankshaft position variation relearn with a scan tool that supports it, following the conditions it asks for (warm engine, specific rpm).
- If the relearn will not complete, check the crankshaft sensor signal and its wiring.
- Inspect the reluctor ring for damaged or missing teeth.
Related codes
- P0316 Engine misfire detected on start-up (first 1,000 revolutions)
- P0320 Ignition/distributor engine speed input circuit
- P0308 Cylinder 8 misfire detected
- P0307 Cylinder 7 misfire detected
- P0306 Cylinder 6 misfire detected
- P0305 Cylinder 5 misfire detected
- P0325 Knock sensor A circuit (bank 1 or single sensor)
- P0304 Cylinder 4 misfire detected
Data: TORKO fault-code catalogue, built on OBDex (CC0-1.0) and reviewed against workshop practice. Informational only — it does not replace a diagnosis by a mechanic.
Updated: