P0520 Code: Engine Oil Pressure Sensor/Switch Circuit
The P0520 code means the engine oil pressure sensor circuit is not responding the way the computer expects. Before you assume it is an electrical fault, rule out that the pressure is really too low, because being wrong here is serious and cannot be undone. Check the oil level first, then confirm with a mechanical gauge.
- Severity
- High
- Can I keep driving?
- No, stop and have it checked
- Estimated cost
- $30 to $600
- Difficulty
- Easy
- System
- Computer and Outputs
- Applies to
- All OBD2 vehicles
Common in: Dodge, Jeep
On this page
What the P0520 code means
The oil pressure sensor tells the computer how much pressure the pump is building in the lubrication circuit. The dashboard warning light depends on it and, on engines with variable valve timing or a variable-output oil pump, so does a good part of how those systems are managed.
The P0520 code is the general code for that circuit. It says something is not working the way it should without saying exactly what: P0521 points to a range or performance problem, P0522 to a signal that is too low and P0523 to one that is too high.
With any of them, the priority is not electrical but safety. A bad sensor will not hurt the engine, but pressure that is really low can destroy it in minutes, and on a scan tool the two situations look alike.
That is why the right order is always the same: shut the engine off, check the oil level, listen for metallic noise and, if there is any doubt, measure the real pressure with a mechanical gauge before you start the engine again.
It is worth separating two components that get confused. Many vehicles have both a pressure switch, which only flips below a certain threshold and runs the red warning light, and an analog sensor that gives the computer a continuous reading. They are different parts with different jobs.
That difference matters when you diagnose: a red light that is off does not rule out a pressure problem, because that light only comes on once the pressure is already below about 0.5 bar (7 psi), a very low threshold. Pressure that is too low for the variable valve timing system can sit well above that point and light nothing at all.
P0520 code symptoms
- Oil pressure warning light on, either steady or flickering.
- Check engine light on.
- Metallic noise from the engine if the pressure is really low.
- Ticking from the lifters or rattle from the timing chain.
- Inconsistent pressure reading on the scan tool.
- Variable valve timing codes may show up along with it.
- On some vehicles, reduced power.
- The red warning light stays off even though the pressure is too low for other systems.
Likely causes of the P0520 code
- Low oil level. The first thing to check and the most dangerous cause.
- Sensor failed internally.
- Connector that is corroded, loose or has backed-out pins.
- Signal wire cut or shorted to ground.
- Oil of the wrong viscosity.
- Oil filter that is clogged or of poor quality.
- Worn oil pump.
- Pump pickup screen clogged with sludge.
- Worn bearings, which let pressure leak out of the circuit.
How to diagnose the P0520 code step by step
- Shut the engine off and check the oil level before anything else. It costs nothing, takes a minute and rules out the most dangerous cause.
- Listen to the engine. A metallic noise in the background means the pressure is really low, and you must stop.
- Measure the real pressure with a mechanical gauge threaded in place of the sensor. This is the test that settles the question.
- If the real pressure is fine, check the circuit: the connector, the continuity of the signal wire and the ground.
- Check the oil viscosity and whether it matches the specification.
- Check the condition of the filter and when it was last changed.
- Check whether the red warning light is on, because on many vehicles a separate switch runs it.
- Consider internal wear if the real pressure is low with a correct oil level and a good pump.
- Do not rule out low pressure just because the red light is off. That light comes on below about 0.5 bar (7 psi), far below what other systems need.
How to fix the P0520 code
- Top the oil up to the correct level with the specified oil if it was low, and find where it is being burned or leaking.
- Replace the sensor if the gauge confirms the real pressure is correct.
- Repair the signal wire and clean or replace the connector.
- Change the oil and filter using the exact viscosity the manufacturer calls for.
- Replace the oil pump if its pressure is not enough.
- Clean the pump pickup screen if sludge has built up.
- Consider an internal repair if bearing wear is confirmed.
- Measure the real pressure even when the red light is off, because its threshold is much lower than what other systems require.
Do not keep driving with the oil pressure light on until you have ruled out that the pressure is really low. An engine without lubrication can destroy itself in a few minutes.
Technical reference data
- Oil pressure at hot idle: 1 to 2 bar (about 15 to 29 psi) on most engines.
- Pressure at 3,000 rpm: 3 to 5 bar (about 44 to 73 psi).
- Typical pressure light threshold: about 0.5 bar (7 psi).
- Minimum pressure for the variable valve timing system to operate: about 1.5 bar (22 psi).
- P0521, P0522 and P0523 cover specific conditions of the same circuit.
- Oil thinner than specified lowers the pressure when hot.
- The red light switch flips at about 0.5 bar (7 psi), while the variable valve timing system needs about 1.5 bar (22 psi).
Brand-specific notes
The test that settles this code is the mechanical gauge. Threading it in place of the sensor takes a few minutes and separates an electrical fault from really low pressure for good. Those two scenarios have completely different consequences.
Oil viscosity matters more than it seems. A lubricant thinner than specified can give correct pressure when cold and drop below the threshold once the engine is hot, which sets a code that disappears when the right oil goes in.
Questions about the P0520 code
There are no questions about this code yet. Tell us about your case: vehicle, symptoms and what you have already checked.