P0340 on a Subaru: Causes, Fixes & Repair Cost

⚠️ Severe · not recommended to drive

The engine may not start, or it may stall while driving, so have the car towed if it won't start.

What P0340 means on a Subaru

On a Subaru, P0340 means the engine computer is getting no signal or a bad signal from the camshaft position sensor. Without camshaft position, the computer can't time fuel injection correctly, and the engine may refuse to start or may stall.

Is P0340 common on Subarus?

P0340 shows up on Subarus with higher mileage, often Outback, Forester, Impreza, and Legacy models. Subaru's boxer engines have a camshaft position sensor on each cylinder head, and these sensors fail with age and mileage. Oil leaks or wiring damage near the timing covers can also trigger it.

Commonly reported on: Outback, Forester, Impreza, Legacy.

Symptoms

Common causes

How to fix it

FixDIY?Typical cost
Replace the camshaft position sensorYes$50–150
Repair damaged sensor wiring or connectorMechanic$100–250
Have a mechanic check the timing belt or chain and its componentsMechanic$600–1200

Frequently asked questions

Will my Subaru start with a P0340 code?
It may not. A lost camshaft position signal can stop the engine from starting or make it stall. If it won't start, have it towed to a shop.
What usually causes P0340 on a Subaru?
The camshaft position sensor fails with age and mileage. Since boxer engines use one sensor per head, either side can be the problem.
How much does it cost to fix P0340 on a Subaru?
A new camshaft position sensor plus labor is about $100–280 on most Subarus. It's a fairly quick repair on most boxer engines.

Other common Subaru codes

P0420
P0420 on a Subaru
P0171
P0171 on a Subaru
P0300
P0300 on a Subaru
P0456
P0456 on a Subaru
P0430
P0430 on a Subaru
P0128
P0128 on a Subaru
P0455
P0455 on a Subaru
P0174
P0174 on a Subaru

P0340 on other brands

Toyota
P0340 on a Toyota
Honda
P0340 on a Honda
Ford
P0340 on a Ford
Chevy
P0340 on a Chevy
Nissan
P0340 on a Nissan
BMW
P0340 on a BMW
Mercedes-Benz
P0340 on a Mercedes-Benz
Volkswagen
P0340 on a Volkswagen
Hyundai
P0340 on a Hyundai
Mazda
P0340 on a Mazda
Jeep
P0340 on a Jeep
GMC
P0340 on a GMC
Lexus
P0340 on a Lexus
Volvo
P0340 on a Volvo

Looking for the full (non-brand-specific) guide? See the P0340 code page →

Browse all Subaru codes: Subaru hub →

Updated 2026-08. This page is informational and not a substitute for professional diagnosis.