What a crankshaft position sensor does and why it matters
Your crankshaft position sensor tells your engine's computer where the crankshaft is at any given moment. The computer uses this information to time the spark plugs and fuel injectors correctly. When the sensor fails, your engine may not start, may stall while driving, or may run rough and waste fuel.
A faulty sensor is one of the most common reasons a check engine light comes on. The good news is that you can narrow down whether the sensor itself is the problem before you take the car to a mechanic, and you can do most of the checking yourself with basic tools.
Key Takeaways
- A crankshaft position sensor that is failing will usually trigger a check engine light and produce a code between P0335 and P0338 when you read the diagnostic trouble codes.
- You can read the diagnostic codes yourself using an inexpensive code reader (around $25 to $100) plugged into the OBD-II port under your steering wheel.
- Visual inspection of the sensor and its wiring harness for corrosion, cracks, or loose connections is the first step and often reveals the problem.
- Testing the sensor's electrical output with a multimeter requires some electrical knowledge but can confirm whether the sensor is producing a signal.
- If the sensor looks fine but the codes point to it, the problem may be the wiring, the connector, or the engine computer itself rather than the sensor.
Reading the diagnostic trouble codes first
Before you touch anything under the hood, read the diagnostic trouble codes stored in your engine computer. These codes are the fastest way to confirm the sensor is even involved. You will need an OBD-II code reader, which plugs into the diagnostic port located under the steering wheel on the driver's side of most vehicles made after 1996.
Turn the key to the "on" position without starting the engine, plug in the reader, and follow the device's instructions to retrieve codes. A crankshaft position sensor problem will show up as code P0335 (general crankshaft position sensor malfunction), P0336 (sensor range or performance), P0337 (sensor low voltage), or P0338 (sensor high voltage). If you see one of these codes, the sensor or its circuit is definitely involved. If you do not see one of these codes, the sensor itself is probably not the problem.
Locating and visually inspecting the sensor
The crankshaft position sensor is mounted near the crankshaft, usually on the engine block, the timing cover, or inside the distributor. The exact location varies by make and model — check your vehicle's service manual or search online for "[your year, make, model] crankshaft position sensor location." Most sensors are small cylindrical or rectangular devices with a wire harness attached.
Once you find it, look for obvious damage: cracks in the plastic housing, corrosion on the connector pins, or a loose wire harness. Check that the connector is fully seated and not corroded. Corrosion on the connector is one of the most common reasons a sensor fails electrically even though the sensor itself is fine. If you see corrosion, disconnect the harness, clean the pins with a small wire brush or fine sandpaper, and reconnect it firmly. This alone often solves the problem.
Also check the wiring harness along its entire length for cuts, pinches, or places where it rubs against the engine. Damaged wiring can cause the same codes as a bad sensor.
Testing the sensor with a multimeter
If the sensor looks clean and the connector is tight, you can test whether the sensor is actually producing an electrical signal. This requires a digital multimeter (around $15 to $30 at any hardware store) and some comfort working with electrical connections.
Set your multimeter to DC voltage mode. Locate the three wires on the sensor connector: power (usually red or brown), ground (usually black), and signal (usually yellow or white). With the key in the "on" position but the engine off, probe the power wire — you should read 5 to 12 volts depending on your vehicle. Probe the ground wire — you should read 0 volts or very close to it. If either of these is wrong, the problem is in the wiring or power supply, not the sensor itself.
Now have someone crank the engine while you watch the signal wire with the multimeter set to AC voltage. The signal wire should show a changing voltage (usually between 0.5 and 5 volts) as the engine cranks. If it stays at zero or does not change, the sensor is not producing a signal and is likely faulty. If it does change, the sensor is working and the problem may be elsewhere in the circuit or in the engine computer.
When the sensor looks fine but the codes persist
Sometimes the sensor itself is fine, the wiring is clean, and the connector is tight, but the codes keep coming back. In this case, the problem is usually one of three things: a corroded connector pin that looks clean from the outside but is still not making good contact, a break in the wiring inside the insulation where you cannot see it, or a fault in the engine computer itself.
If you suspect a hidden connector problem, disconnect the harness and reconnect it several times to work out any corrosion. If the codes return, the wiring or computer is likely at fault, and you will need a mechanic with diagnostic equipment to pinpoint which one. A mechanic can also test the engine computer's ability to read the sensor signal, which requires specialized tools.
When to replace the sensor versus when to seek help
If your testing shows the sensor is not producing a signal, or if the codes point to the sensor and visual inspection found damage, the sensor itself needs to be replaced. Replacement is usually straightforward — disconnect the harness, unbolt the sensor (typically one or two bolts), and install the new one. The whole job usually takes 15 to 45 minutes depending on the location.
If your testing is inconclusive, the wiring looks damaged, or the codes persist after you have cleaned the connector and replaced the sensor, take the vehicle to a mechanic. At that point, you need someone with a scope or advanced diagnostic equipment to trace the signal from the sensor all the way to the computer. You have already ruled out the most common causes, so the problem is in the wiring or the computer, and that diagnosis requires tools most home mechanics do not have.
Frequently Asked Questions
Can a bad crankshaft position sensor prevent the engine from starting?
Yes. The engine computer needs the crankshaft position signal to know when to fire the spark plugs. Without that signal, the engine will not start at all, or will crank but not turn over. If your engine cranks but will not start and you see a P0335 code, the sensor is almost certainly the problem.
How much does a crankshaft position sensor cost to replace?
The sensor itself usually costs between $50 and $250 depending on the vehicle. Labor at a shop typically runs $100 to $300. If you replace it yourself, you only pay for the part. Some vehicles have the sensor in an straightforward-to-reach spot; others require removing other components first, which is why labor costs vary so widely.
What happens if I keep driving with a bad crankshaft position sensor?
Your engine will run poorly, stall unexpectedly, and waste fuel. You may also damage the catalytic converter if the engine misfires for too long. It is not safe to drive long distances with a faulty sensor. If you cannot replace it right away, have it towed or drive directly to a mechanic.
Can I test the sensor without a multimeter?
Not reliably. You can read the diagnostic codes without a multimeter, and you can visually inspect the sensor and wiring. But to confirm the sensor is actually producing a signal, you need a multimeter or an oscilloscope. A code reader alone cannot tell you whether the sensor itself is working.
Is the crankshaft position sensor the same as the camshaft position sensor?
No. The crankshaft sensor monitors the crankshaft rotation; the camshaft sensor monitors the camshaft rotation. They are separate sensors in different locations. A vehicle can have trouble codes for either one or both. Check your diagnostic codes carefully to see which sensor is actually at fault.