Redline Garage is reader-supported. We earn affiliate commissions from qualifying purchases — how this works.

How to Clear or Reset an OBD2 Code (and When You Shouldn't)

A mechanic's hand holding a mid-range OBD2 scanner displaying a clear confirmation screen, plugged into the OBD2 port beneath a car dash, natural workshop lighting, shallow depth of field, photorealistic

Affiliate Disclosure

Some links on this page are affiliate links. As an Amazon Associate, we earn from qualifying purchases — at no extra cost to you. We do not buy, test, or physically handle the products we cover; our rankings come from aggregated owner reviews, ratings and expert consensus. Commissions never change our verdicts. How we rank & full disclosure.

Your check engine light is on. You plug in a scanner, pull the code, and think: can I just clear it and see what happens? Yes, you can. But there's a right way to do it, a crude way to do it, and a genuinely bad idea way to do it — and they're not always the same thing. This guide walks you through all three, plus the part most YouTube tutorials skip: what clearing a code actually destroys and when you absolutely should not touch that erase button.

What Clearing a Code Actually Does

When you clear an OBD2 code, you're telling the ECU to wipe its diagnostic memory. That sounds simple, but the collateral damage is significant:

The underlying fault? Still there. Every single time. Clearing a code does not fix anything. It just removes the warning until the monitor runs again and the fault re-trips — usually within one to three drive cycles.

An OBD2 scanner screen showing an I/M readiness monitor status list with multiple incomplete entries, resting on a car seat next to a notebook and pen, photorealistic

Method 1: Clear with an OBD2 Scanner (The Right Way)

This is the correct approach. A dedicated scanner or a phone-based adapter with a proper app gives you control over what you're doing and lets you confirm the code before you erase it.

  1. Read the code first. Write it down or take a photo. Once you clear, it's gone. You want a record. (Step-by-step guide to reading an OBD2 code here.)
  2. Record the freeze frame data. Check RPM, load, short-term and long-term fuel trim values. Screenshot everything. This information is invaluable for diagnosis and you lose it permanently when you clear.
  3. Turn the ignition on, engine off (key to position II, or press start without pressing the brake on push-button cars). You do not need the engine running.
  4. Plug your scanner into the OBD2 port — usually under the dash on the driver's side, within reach of the steering column.
  5. Navigate to “Erase Codes” or “Clear DTC.” The label varies by scanner. Confirm when prompted.
  6. Wait for the confirmation message, then turn the ignition off and back on. The check engine light should be out.
  7. Verify readiness monitor status. Most scanners show this under “I/M Readiness” or “Readiness Monitors.” Expect to see them all reset to “incomplete.” That's normal. They'll complete as you drive through a standard drive cycle.

That's the clean version. Takes five minutes. Leaves you with a record of what was there.

Method 2: Disconnect the Battery (The Crude Way)

Disconnecting the negative battery terminal for 15 to 30 seconds is the old-school reset. It works — sort of — but it comes with costs people rarely mention:

Bottom line: battery disconnect is an acceptable last resort if you have no scanner and need the light off immediately. It's not a diagnostic tool. It's a blunt instrument.

Permanent Codes (P-DTCs): The Ones You Cannot Clear

This is the part most guides leave out entirely.

Since OBD2 regulations were tightened, vehicles (roughly 2010 and newer, with variation by market) store a category called permanent diagnostic trouble codes, or P-DTCs. These are emissions-related faults that the ECU writes to a protected memory area specifically designed to be immune to manual clearing.

You cannot erase a permanent code with a scanner. You cannot erase it by disconnecting the battery. The only way a permanent code clears is for the ECU itself to confirm the fault no longer exists — meaning the underlying problem is fixed, the relevant monitor runs and passes, and the ECU marks it resolved on its own terms.

This matters enormously for emissions testing. An inspector's scan tool will show permanent codes even if your dash light is off. If you cleared a stored code to pass a smog check, the permanent code remains as evidence. The car fails anyway. (Read more about the difference between stored, pending, and permanent codes.)

Will the Code Come Back After Clearing?

If the fault is still present: yes, always.

The ECU continuously runs diagnostic monitors while you drive. When the relevant monitor completes its test cycle and detects the same fault condition, it sets the code again. Depending on the fault type and your driving pattern, that can happen within a single drive or take a few days of mixed driving.

For two-trip faults (which covers most emissions codes), you'll typically see the pending code return after one drive and the stored code confirmed on the second. The light comes back on, you're back where you started, and you've now lost your freeze frame data that could have told you what was happening.

This is why clearing without diagnosing is a trap. It feels like you've done something. You haven't.

Legit Reasons to Clear a Code

Clearing is not always wrong. There are two situations where it's the correct move:

  1. After a confirmed repair. You've identified the fault, replaced the part or fixed the condition, and you want to verify the repair holds. Clear the code, drive through the appropriate monitor cycle, confirm the code does not return and the monitor completes. That's how you verify a fix properly.
  2. After a non-fault trigger. Loose fuel caps, condensation in a sensor connector, and one-off misfires during a cold start can all trip codes that never recur. Clear the code, drive normally, and see if it comes back. If it doesn't, the issue may have genuinely been transient. If it does, you have a real problem to find.

In both cases, you're using the clear as a diagnostic step with intention — not as a way to make a warning disappear and pretend it didn't happen.

The Smog Test Problem

If your car is due for a smog check or state emissions inspection and you've recently cleared codes for any reason, do not take it straight in.

Inspectors check two things beyond the presence of a dash light: readiness monitor completion status and, on newer vehicles, permanent codes. A car with incomplete monitors — even with no active faults — is an automatic failure in most jurisdictions. You typically need anywhere from one to three complete drive cycles to get monitors back to ready status, and some monitors (particularly EVAP) require very specific conditions to complete.

The correct sequence is: fix the fault, clear the code, run a proper drive cycle until all applicable monitors show complete, then go for the test. Skipping any of those steps costs you the test fee and another booking. (Everything you need to know about readiness monitors and smog checks is here.)

Quick Reference: Clear vs. Don't Clear

The check engine light exists to tell you something needs attention. Clearing it without acting on that information is the automotive equivalent of pulling the battery out of a smoke alarm. The problem doesn't go away because the warning does.

Start with the OBD2 code reading hub if you haven't diagnosed the fault yet. Know what you're dealing with before you decide whether to clear it.

We aggregate owner reviews rather than test tools ourselves. A proper scanner is the difference between clearing a code deliberately — recording the freeze frame first and checking readiness monitors after — and the blunt battery-disconnect method. None of these can erase a permanent (P-DTC) code; only fixing the fault does that.

#2OBDLink MX+ OBD2 Bluetooth Scanner
Best Bluetooth
OBDLink MX+ OBD2 Bluetooth Scanner

Best for power users who want fast, secure Bluetooth and deep vehicle access

  • Fast, stable connection with strong app support
  • Reads many manufacturer-specific systems
  • Shows readiness monitors clearly
  • Highly rated by enthusiasts

Why buy it: the enthusiast pick for confirming monitors are complete before a smog test, not just clearing the light.

Check Price on Amazon Live price on Amazon
#3FOXWELL NT301 OBD2 Scanner
Best Handheld
FOXWELL NT301 OBD2 Scanner

Best for anyone who prefers a standalone tool with no phone needed

  • Colour screen with live data and freeze frame
  • Reads and clears codes, shows I/M readiness
  • No app or subscription required
  • Very large owner base

Why buy it: a self-contained tool that shows readiness status on screen — ideal before an emissions test.

Check Price on Amazon Live price on Amazon
#4ANCEL BD310 2-in-1 OBD2 Scanner
Best Value
ANCEL BD310 2-in-1 OBD2 Scanner

Best for a wired-plus-Bluetooth combo at a friendly price

  • Works handheld or via phone app
  • Reads and clears codes with freeze frame
  • Shows readiness monitors
  • Good value rating

Why buy it: flexible and affordable — enough to record and clear codes the right way without overspending.

Check Price on Amazon Live price on Amazon
#5Autel AutoLink AL319 OBD2 Code Reader
Best Budget
Autel AutoLink AL319 OBD2 Code Reader

Best for a cheap, no-frills reader that still shows freeze frame

  • Reads and clears codes
  • Displays freeze frame data
  • Shows I/M readiness status
  • Simple one-button operation

Why buy it: the low-cost entry point that still lets you record freeze frame before you erase — the step most people skip.

Check Price on Amazon Live price on Amazon
#6Veepeak OBDCheck BLE OBD2 Scanner
Cheapest Bluetooth
Veepeak OBDCheck BLE OBD2 Scanner

Best for phone-based scanning on the tightest budget

  • Tiny BLE adapter for iOS and Android
  • Reads and clears codes via free apps
  • Shows live data and monitors in supported apps
  • Huge owner base

Why buy it: the least you can spend and still clear codes deliberately from your phone rather than yanking the battery.

Check Price on Amazon Live price on Amazon
// Straight Answers

Frequently Asked

Can I clear an OBD2 code without a scanner?

Yes, by disconnecting the negative battery terminal for 15 to 30 seconds. This will reset stored codes and turn off the check engine light on most vehicles, but it also wipes engine and transmission adaptations, loses radio presets on many cars, resets readiness monitors just like a scanner does, and will not clear permanent (P-DTC) codes. A dedicated scanner or OBD2 adapter app is a cleaner and less disruptive approach.

Will the check engine light come back after I clear the code?

If the underlying fault is still present, yes — reliably. The ECU continuously monitors for the same fault condition while you drive. For most emissions-related codes, the light will return within one to three drive cycles once the relevant monitor completes its test. Clearing the code removes the warning temporarily, not the cause.

Does clearing an OBD2 code affect a smog check or state emissions inspection?

Yes, significantly. Clearing codes resets readiness monitors to “incomplete,” and most smog checks and state emissions inspections will fail a vehicle with incomplete monitors even if no fault light is on. You need to drive through a complete drive cycle — sometimes more than one — after clearing before the monitors are ready. On newer vehicles, permanent codes also remain visible to the inspector's tool regardless of clearing.

What is a permanent OBD2 code and can I clear it?

A permanent diagnostic trouble code (P-DTC) is an emissions-related fault stored in protected ECU memory that cannot be erased by a scanner or battery disconnect. It clears only when the ECU itself confirms the fault no longer exists after the relevant monitor runs and passes. These codes were introduced to prevent people from clearing codes to pass emissions tests without actually fixing anything.

Why should I write down the code before clearing it?

Because once you clear, all stored fault information is gone permanently — including the freeze frame data that records engine conditions at the moment of failure. That data (RPM, load, coolant temperature, fuel trim) is often the most useful diagnostic information you have. Recording the code and freeze frame before erasing gives you something to work from if the fault returns or if a mechanic needs context later.

Is there ever a good reason to clear a code without fixing the fault?

One scenario: a code triggered by a known one-off event — a loose fuel cap, a sensor connector that got wet and dried out, a single cold-start misfire — where you want to verify it doesn't recur. Clearing and monitoring for return is a legitimate diagnostic step. But clearing to pass a test, to silence an annoying light, or because a fix is too expensive is not a solution. The fault remains, the light returns, and you've lost the freeze frame data that could have helped.