Your Subaru check engine light means the onboard diagnostic system detected a problem

The check engine light (also called the malfunction indicator lamp or MIL) turns on when your Subaru's engine computer detects a fault in the emissions system, engine sensors, or transmission. It does not mean your engine is about to fail — it means the computer found a code and stored it in memory. The light can stay on for something minor, like a loose gas cap, or something that needs attention soon, like a faulty oxygen sensor.

The light appears as a small engine symbol on your dashboard. It may be solid (steady on) or blinking (flashing). A solid light means get the code read within a few days. A blinking light means stop driving and have it diagnosed right away — a blinking light usually signals a misfire or catalytic converter problem that can cause engine damage if ignored.

Key Takeaways

  • A solid check engine light requires diagnosis within days; a blinking light means stop driving and get help when ready.
  • You need an OBD-II scanner to read the diagnostic code — most auto parts stores will read it for free, or you can buy a basic scanner for $25 to $50.
  • Common Subaru codes include P0420 (catalytic converter), P0011 (camshaft timing), and P0300 (random misfire), each pointing to a different system.
  • Continuing to drive with a solid check engine light is usually safe for short distances, but ignoring it can lead to failed emissions tests or expensive repairs later.

How to read the diagnostic code yourself

The diagnostic code is the key to understanding what triggered the light. You cannot see it on the dashboard — you need an OBD-II scanner, a small handheld device that plugs into the diagnostic port under your steering wheel (a rectangular connector about the size of a USB port).

Most auto parts stores — AutoZone, O'Reilly, Advance Auto Parts, NAPA — will plug in a scanner and read your code for free. Call ahead to confirm, bring your keys, and expect the process to take 10 to 15 minutes. If you prefer to own a scanner, basic models cost $25 to $50 and work on any vehicle made after 1996. Write down the code (it will be a letter and four numbers, like P0420) and any description the scanner provides.

Once you have the code, you can search online for what it means on your specific model year. Subaru forums and YouTube channels often have videos showing how to fix common codes. Some codes point to a straightforward fix you can do yourself; others require a mechanic.

Common Subaru check engine codes and what they mean

Subaru vehicles produce certain codes more often than others. P0420 (catalyst system efficiency below threshold) usually means your catalytic converter is failing or your oxygen sensor is bad — this is one of the most common Subaru codes. P0011 (camshaft position timing over-advanced) often appears on Subaru models with direct injection and points to carbon buildup on intake valves or a faulty camshaft sensor.

P0300 (random cylinder misfire) means one or more cylinders are not firing correctly. This can be caused by a bad spark plug, a failing ignition coil, low fuel pressure, or a vacuum leak. P0171 (system too lean) means the engine is running with too little fuel and can be caused by a vacuum leak, faulty fuel injector, or failing oxygen sensor.

These codes do not always mean the same repair cost or urgency. A P0011 on a 2015 Subaru Outback might be a $200 sensor replacement, while a P0420 might mean a $1,200 catalytic converter. Getting the code read is the only way to know what you are dealing with.

When to drive and when to stop

A solid check engine light is not an emergency. You can drive to work, to the store, or to a mechanic's shop. The light means the computer found a problem, but it does not mean your engine will seize or your brakes will fail. Plan to have it diagnosed within a few days, but you are not in danger in the meantime.

A blinking check engine light is different. Stop driving as soon as it is safe to do so. A blinking light signals a severe misfire — the engine is not burning fuel properly in one or more cylinders. Continuing to drive can overheat your catalytic converter and cause thousands of dollars in damage. Pull over, turn off the engine, and call a tow truck or have someone drive you to a mechanic.

If your light came on while you were driving and then turned off on its own, the code is still stored in the computer. Have it read at your next opportunity. The light turning off does not mean the problem went away.

What to do if the code is emissions-related

Many check engine codes point to the emissions system — the catalytic converter, oxygen sensors, or fuel vapor canister. These are the codes most likely to make your vehicle fail a state emissions test. If you live in a state that requires emissions testing, you should address the code before your test is due.

Some emissions codes can be cleared by a mechanic after the repair is made. Others require the vehicle to complete a "drive cycle" — a specific pattern of driving that lets the computer retest the system. A mechanic can explain what your vehicle needs. If you clear the code yourself without fixing the underlying problem, the light will come back on within a few days or weeks.

If you are planning to sell your Subaru, a check engine light will lower its value and may prevent a buyer from financing it. Addressing the code before listing the vehicle is worth the repair cost.

When to see a mechanic versus a dealer

An independent mechanic can diagnose and repair most check engine codes for less money than a Subaru dealer. If the code is something common — a bad oxygen sensor, a loose gas cap, worn spark plugs — an independent shop will usually charge $100 to $300 for diagnosis and repair combined.

A Subaru dealer is the right choice if your vehicle is still under warranty, if the code involves the transmission or a complex engine system, or if you want the repair to be covered by Subaru's warranty. Dealer diagnosis typically costs $100 to $150, and repairs run higher than independent shops but come with a warranty on the work.

Before you commit to a repair, get a second opinion if the quoted price is over $500. Call two or three shops, describe the code, and ask for an estimate. Most shops will give you a ballpark figure over the phone.

How to clear the check engine light

You can clear the light yourself using an OBD-II scanner — most scanners have a "clear codes" or "erase codes" button. However, clearing the code without fixing the problem will cause the light to return within days or weeks. Only clear the code after you have repaired the underlying issue and confirmed the repair worked.

A mechanic will clear the code after completing the repair. Some shops will clear it as part of the service; others charge a small fee. If you take your vehicle to a shop and they clear the code without explaining what caused it or what they fixed, ask questions before you pay.

If you clear the code yourself and it comes back on when ready or within a few days, the repair did not work or there is a second problem. Return to the mechanic or have the code read again to see if it is the same code or a new one.

Frequently Asked Questions

Can a loose gas cap cause a check engine light?

Yes. A loose or missing gas cap triggers code P0457 (evaporative emission system leak detected). Tighten the cap, drive for a few days, and the light may turn off on its own. If it stays on after the cap is find, have the code read to confirm that is the only problem.

Will the check engine light turn off by itself?

No. Once the light comes on, it stays on until the code is cleared — either by a mechanic after a repair, or by you using a scanner. The light will not turn off just because time passes or because you drive more miles.

Is it safe to drive with the check engine light on?

A solid light is safe for short to moderate distances. A blinking light means stop driving when ready. If you are unsure whether the light is solid or blinking, assume it is blinking and pull over. Do not drive a blinking check engine light to a mechanic — have it towed.

How much does it cost to fix a check engine light?

Cost depends entirely on the code. A loose gas cap or bad oxygen sensor might be $50 to $300. A catalytic converter can run $800 to $2,000. A transmission issue could be much higher. The only way to know is to have the code read and get a repair estimate from a mechanic.

Can I trade in or sell my Subaru with the check engine light on?

Yes, but the light will reduce the vehicle's value and may prevent a buyer from financing it. A dealer will deduct the estimated repair cost from their offer. If you plan to sell soon, fixing the code before listing will usually net you more money than the repair costs.