How to Check a Used Car with an OBD2 Scanner

A mechanic checking a used car with an OBD2 scanner while reviewing readiness monitor results before purchase.

A used car seller controls what you see at the lot. An OBD2 scanner gives you independent access to what the car’s computers have recorded, regardless of what the seller tells you. This guide covers the complete pre-purchase scan process: what to check before turning the ignition, how to detect recently cleared codes, which live data parameters reveal problems the seller cannot hide, how to spot odometer tampering in ECU data, and what a clean scan still cannot rule out. My reference guide on OBD2 codes and what they reveal about a vehicle’s history covers stored, pending, and permanent DTCs — what each type tells you about how recently a fault occurred and whether codes have been cleared before the sale.

Kamil Siegień, founder and writer of OBD2 Scout

About the author: Hello! I’m Kamil Siegień, founder of OBD2 Scout. My diagnostic experience started with an engine rebuild on a 2014 Skoda Superb 1.8 TSI, where tuning from 160 to 222 hp required mastering live data and ECU behavior that basic code readers cannot handle. I am a former BMW and MINI employee and regularly use diagnostic scanners on my own Audi A4 2.0 TFSI.

Any scanner that reads generic OBD2 codes and displays readiness monitor status is sufficient for the basic checks in this guide. A multi-system scanner that also reads ABS and SRS codes adds significant value. For odometer tampering detection, you need either a manufacturer-specific app or a scanner with extended module access for that vehicle brand.

The Four-Phase Scan Sequence

The sequence matters as much as the scan itself. Most guides say “connect and scan” as a single step. The correct process has four distinct phases, each providing information that the others cannot. My guide on how to use an OBD2 scanner covers the standard scan process in detail — connection, vehicle confirmation, code retrieval, and live data review — which gives the pre-purchase check its diagnostic foundation.

Phase 1: Connect before touching the ignition. Plug the scanner in before turning the key to any position. Confirm the scanner establishes communication with the vehicle. Note any modules that fail to respond. If the scanner cannot connect at all, or if multiple modules are unresponsive, that is itself a diagnostic finding that warrants investigation before going further. My guide on the standard OBD2 port position in any vehicle covers where to look under the dash for every major brand, how to locate it quickly even in vehicles with recessed or covered ports, and what the physical connection feels like when it is seated correctly.

Phase 2: Key-on, engine-off scan. Turn the ignition to the on position without starting the engine. Read all stored active and pending fault codes, and record the readiness monitor status. This is the most important phase for detecting recently cleared codes. With the engine not running, the vehicle has not had an opportunity to begin re-running the drive cycle tests that would move monitors from “not ready” toward complete. Whatever the monitor status shows here reflects the true reset state of the system at the moment you arrived.

Phase 3: Cold start live data. Start the engine and watch three things simultaneously: coolant temperature rising from cold, idle RPM stabilizing, and misfire counts per cylinder if the scanner supports it. Cold starts reveal conditions that a warmed-up vehicle hides. A vehicle that idles rough until warmed up, or shows misfire events on a specific cylinder during warm-up, is showing a problem the seller may have masked by warming the car before your visit. For a standalone scanner that handles all four phases without needing a phone, my Innova 3100RS review covers its performance across each step of the pre-purchase check.

Phase 4: Post-test-drive rescan. Immediately after the test drive, rescan for any new pending codes that set during the drive. A vehicle that drives well but sets a pending code for catalyst efficiency, evaporative emission performance, or oxygen sensor response during a 15-minute drive has a developing fault that will become an active code in the coming weeks. My guide to reliable Bluetooth OBD2 scanner options covers the adapters in that $30 to $80 range: which ones include full-system access and which are engine-code-only at that price.

Reading the Monitors: The Most Reliable Cleared-Code Red Flag

Readiness monitors are the self-diagnostic tests the ECU runs over the course of a normal drive cycle. There are typically seven to eight non-continuous monitors on a petrol vehicle: oxygen sensor response, catalyst efficiency, EVAP system integrity, EGR system performance, secondary air system, and others depending on the vehicle. Each monitor is either complete (the test ran and passed) or not ready (the test has not yet completed).

On a vehicle that has been driven normally for several weeks, all non-continuous monitors should show complete. The only exception is a cold-soak situation, where a vehicle that has not been driven in several days may have one or two monitors reset by the ECU’s internal maintenance schedule. That is normal and vehicle-specific.

My my guide on obd2 mode 6 explained use for diagnosis covers this step by step.

For buyers inspecting a used Audi Q5, my guide to the best OBD2 scanner for Audi Q5 covers which tools provide the VAG-specific readiness monitor access that distinguishes a normal ECU maintenance reset from a deliberately cleared fault.

What is not normal: multiple monitors showing “not ready” on a vehicle the seller says has been driven regularly up until today. If four or five monitors are incomplete on a car that supposedly just drove to the lot, the ECU was reset recently. The reset could be from a battery disconnect, a code-clearing scan, or a module replacement. Any of those is possible with an innocent explanation. Combined with other red flags, multiple incomplete monitors are a strong indicator of deliberate code clearing.

My battery disconnect obd2 codes monitors covers this step by step.

My my guide on reset check engine light without a scanner covers this step by step.

Subaru Crosstrek buyers should check CVT and EyeSight module status on top of standard readiness monitors; my top OBD2 scanner picks for the Crosstrek covers the right tools for that check.

The reason sellers clear codes before showing a car is not to make the check engine light go away permanently. They know the light will return. The goal is to create enough time between the clearing and your inspection that the car looks clean. What sellers often do not realize is that clearing codes also resets all readiness monitors, and that reset is visible on any scanner. A car with a recently cleared code has typically driven fewer than 100 miles since the reset. In that window, most monitors will not have completed, and the incomplete status tells the story. My guide to the OBD2 emissions inspection pre-check covers the same three-criteria check in detail — MIL status, permanent codes, and readiness monitors — and what to address when any one is not ready. My guide on how clearing OBD2 codes affects monitor status covers what the reset looks like on the scanner, how long recovery typically takes, and what to look for when evaluating whether a recent clear was part of a legitimate repair.

Active and Pending Codes: What Each Means

A man using an OBD2 scanner inside a used car while reviewing active and pending trouble codes before buying the vehicle.

Active codes triggered the malfunction indicator light. Pending codes have been detected once or twice but have not met the threshold of confirmed detections that turns on the light. Both matter for a pre-purchase inspection.

A pending code means the problem is developing. The fault has been seen by the ECU in conditions that did not yet justify a warning, but the same condition on the next drive cycle may set the active code. Buying a car with a pending misfire code (P0300 pending) without a compression test is accepting an unknown risk that could range from a fouled spark plug to a cylinder with low compression. My guide to the OBD2 monitor reset drive cycle covers what it takes to complete each monitor, why a seller driving the car for two days is not enough, and how to distinguish a genuine drive history from a rushed reset.

The fault code is not a repair cost. It is the starting point for a repair diagnosis. P0420, the catalyst efficiency code, most commonly indicates a failing catalytic converter at $1,500 to $2,500 at an independent shop. But P0420 can also be caused by a failed downstream oxygen sensor at $150 to $300, or by an exhaust leak upstream of the sensor that contaminated the reading. The code tells you which system is outside its performance threshold; it does not tell you which component failed. Use the code to require a diagnostic before agreeing to a price. My guide on reading and interpreting OBD2 fault codes covers the full process from retrieving the code to understanding what the five-character identifier tells you, how to cross-reference freeze frame data with the code, and why the code description is the beginning of diagnosis, not the conclusion.

For each code found: photograph the screen, note the code number and description, and research the typical diagnostic and repair range. This becomes the documentation for the negotiation conversation at the end of the inspection. If you need a scanner recommendation at this level, my guide to the best budget OBD2 scanner options covers tools that handle every phase of this inspection.

Freeze Frame Data: Reading the Conditions When the Fault Set

When the ECU stores a fault code, it simultaneously saves a snapshot of operating conditions at the moment the fault was detected. This freeze frame data includes engine load percentage, RPM, coolant temperature at the time of the fault, short-term and long-term fuel trim values, vehicle speed, and sometimes additional parameters depending on the vehicle and the fault type.

Freeze frame data is useful in two ways. First, the operating conditions narrow the diagnostic direction. A P0171 lean code with freeze frame showing low RPM, low load, and cold coolant temperature points toward an idle-related issue such as a vacuum leak or dirty throttle body. The same code with freeze frame showing high load and high RPM points toward a fuel delivery problem under demand. Second, freeze frame reveals code management. If a vehicle has an active code with no freeze frame data, the most common explanation is that the code re-set after the freeze frame was cleared. The code is new; the freeze frame was erased with the previous clearing. A code that set this morning on the drive to the lot will have a freeze frame timestamp. A code that was cleared yesterday and re-set on today’s drive may have very recent freeze frame data relative to the claimed history of the problem. Silverado buyers can find the best compatible diagnostic tools for their truck in my recommended OBD2 scanners for the Silverado.

Live Data: The Five Parameters That Matter

A mechanic reviewing coolant temperature and live engine data on a diagnostic tablet beside an open engine bay.

Live data is the scanner’s view of the vehicle while it is running. These five parameters deliver the most diagnostic value during a pre-purchase inspection with limited time.

Coolant temperature: Watch the temperature rise from cold start and observe where it stabilizes. A healthy thermostat opens at the design temperature and holds coolant at 195 to 220 degrees Fahrenheit under normal driving conditions. A thermostat stuck open holds the temperature around 165 to 175 degrees Fahrenheit and never reaches the normal operating range. The heater output will be weak, fuel economy will be reduced, and the engine will run slightly rich during extended warmup. This condition may have no active code if the thermostat performance is outside the code threshold only at lower temperatures. The live temperature reading reveals it directly.

For buyers inspecting a used Audi Q7, especially 3.0 TDI or TFSI variants where thermostat faults develop over high mileage, my Q7 scanner guide for used car checks covers which tools access the coolant circuit live data channels that surface this pattern before a code appears.

Fuel trim: Long-term fuel trim (LTFT) reflects how much the ECU has adjusted fuel delivery from its base map to compensate for a lean or rich condition. A healthy reading is within plus or minus 5% at idle and at cruise. LTFT above positive 10% on one or both banks at idle indicates the engine is running lean, which points toward a vacuum leak, a dirty or failed mass airflow sensor, or a fuel delivery problem. LTFT below negative 10% indicates over-fueling, which may point toward leaking injectors or a fuel pressure regulator that is holding too much pressure.

My my guide on diagnose vacuum leaks covers this step by step.

My my guide on read maf sensor data covers this step by step.

My my guide on stft vs ltft read fuel trims covers this step by step.

Forester buyers should also check CVT slip data and AVCS timing parameters during a test drive; my Subaru Forester OBD2 scanner guide covers which tools provide that data on the Forester.

Oxygen sensor voltage: The upstream (pre-catalyst) oxygen sensor on a petrol engine should switch back and forth between approximately 0.1 and 0.9 volts at a rate of roughly once per second at idle. This switching behavior indicates the ECU is actively adjusting fuel trim and the sensor is responsive. A sensor reading that stays near 0.45 volts and does not switch is a failed sensor. A sensor that switches very slowly may be lazy from age or contamination. Either condition may not have set an active code yet.

My my guide on read o2 sensor live data covers this step by step.

For buyers inspecting a used Audi Q8, the same situation can arise in the 48V MHEV BSG system, where a developing motor fault produces inconsistent torque recovery without triggering a stored code, and my Q8 scanner coverage guide covers which tools read the BSG live data channels to catch this before purchase.

Battery voltage with engine running: A healthy charging system maintains 13.8 to 14.7 volts at the battery with the engine running. Below 13.5 volts with the engine running indicates the alternator is not fully charging the battery. This will eventually cause a no-start condition, and the battery will begin to deteriorate from chronic undercharging. Above 15 volts indicates an overcharging condition that damages the battery and electronics over time.

Idle RPM: A stable idle at 600 to 900 RPM is normal for most petrol engines at operating temperature. RPM that fluctuates by more than 100 RPM, that hunts up and down, or that drops toward stall and recovers indicates a vacuum leak, a dirty idle air control valve, or a misfire event at idle. Watch for RPM behavior at two points: immediately after cold start (a slightly higher cold idle of 1,000 to 1,200 RPM is normal) and after the engine reaches operating temperature (which is where idle quality problems become visible).

A check engine light with no codes stored is a related blind spot, and my guide on why the check engine light comes on with no codes stored covers the ECU behavior behind it and how to find the fault.

Detecting Odometer Tampering via ECU Data

The dashboard odometer is a single display. The mileage stored in the vehicle’s control modules is a separate set of records written to non-volatile memory across multiple ECUs. The engine control module, body control module, transmission control module, and ABS module all log cumulative mileage independently during normal operation. These values are not synchronized to the cluster in a way that makes them easy to reset. A scanner with access to these individual module records, such as the one covered in my Autel MaxiCOM MK808BT Pro review, can read the stored mileage values across all modules and flag inconsistencies.

A vehicle where the odometer cluster has been swapped, or where the cluster’s mileage has been rolled back with specialist equipment, will typically show inconsistent mileage values across ECUs. The cluster may display 80,000 miles while the body control module and transmission control module hold values in the 130,000 to 150,000 mile range. These stored values cannot be reset by code clearing or battery disconnection. Overwriting them requires physical access to the module’s memory with specialist programming equipment, and doing so across four or more independent modules consistently is impractical for most sellers. For a scanner with the multi-module access to perform this comparison, my guide to the best professional OBD2 scanners covers options across price tiers.

This check requires a scanner or app with manufacturer-specific extended module access for the vehicle’s brand, not a generic OBD2 reader. Apps like Carly, OBDEleven for VW Group vehicles, and manufacturer-specific professional tools can perform this comparison. On a vehicle priced above $10,000, the additional cost and time of this check is justified given what it reveals. A dedicated scanner like the Autel MaxiSYS Elite II Pro provides this level of multi-module access across most common brands.

VIN Verification via OBD2 Scanner

A man comparing the VIN shown on an OBD2 scanner with the physical VIN label on the driver-side door frame.

Every vehicle control module stores the full 17-character VIN in non-volatile memory. An OBD2 scanner reads the VIN directly from the ECM as part of its standard connection procedure. This takes no additional steps: the scanner displays the VIN automatically on connection.

Outback buyers who also want to check CVT module status and EyeSight fault history alongside the VIN will find my Subaru Outback scanner picks covers which tools provide full module access.

Compare the VIN the scanner returns against three physical locations: the dashboard stamp visible through the driver-side windshield, the door frame compliance sticker (driver’s side B-pillar or door edge), and the engine block stamp if accessible. All three physical locations must match the scanner-returned VIN. A mismatch between the electronic VIN and any physical stamp indicates either module replacement from a different vehicle, a stolen and re-VIN’d vehicle, or a salvage-title vehicle that has had major structural components swapped from a different car. None of these situations warrants proceeding with a purchase without a full title history check, a VIN verification with the DMV, and an independent inspection. If the car is a BMW, my guide to the best OBD2 scanners for BMW covers the tools that give the deepest module-level access and VIN-based history verification for that make.

What a Clean Scan Still Cannot Rule Out

A complete scan with all monitors ready, no active or pending codes, clean live data, and consistent VIN and mileage values is a positive finding. It is not a clean bill of health for the vehicle. A scanner that also covers ABS and SRS codes adds another layer to this finding: my Foxwell NT630 Plus review covers how it handles both systems on a pre-purchase inspection.

The OBD2 system monitors what its sensors measure. The following conditions are completely invisible to any scanner: brake pad thickness and rotor condition, engine oil quality and contamination, coolant pH and corrosion protection status, brake fluid moisture content, transmission fluid condition, suspension component wear (ball joints, wheel bearings, bushings), and structural or frame damage from a prior collision. A vehicle with a clean scan can have compromised brakes, degraded fluid across all systems, worn suspension components, and undetected collision history simultaneously.

My obd2 codes after car accident covers this step by step.

A pre-purchase inspection by an independent mechanic on a lift, separate from the seller’s workshop, is the only way to assess these conditions. The OBD2 scan and the physical inspection together cover what neither does alone. My guide on what an OBD2 scanner cannot detect covers every category of invisible fault with the engineering reason behind each.

Using the Results to Negotiate

Every confirmed fault code is a documented repair cost to subtract from the asking price or to require the seller to address before sale. The negotiation is not emotional; it is a cost calculation based on what the scanner found. For a scanner that documents ABS and SRS codes alongside engine faults in the same session, my guide to the best OBD2 scanner for ABS and SRS codes covers the options.

For each active code, research the typical diagnostic cost at an independent shop plus the median repair cost for the most common cause. Present this as a documented finding, not an accusation. A P0420 catalyst code on a vehicle priced at market value represents a $1,500 to $2,500 repair that the buyer would inherit immediately after purchase. Requesting that amount off the asking price, or requiring the seller to replace the catalyst and provide a receipt, is a straightforward ask supported by the scan data. For a Bluetooth scanner that pairs this cost research with its integrated repair database, my BlueDriver Pro review covers how it presents each finding and its estimated repair range.

For pending codes, the ask is different: a conditional offer subject to a full diagnostic of the pending fault. A seller who refuses to allow a diagnostic on a pending misfire is making a decision that tells you something. A seller who agrees and the diagnostic returns a $60 spark plug set resolves the issue cleanly.

For a vehicle with multiple incomplete readiness monitors and no satisfactory explanation, the ask is a wait period: allow the vehicle to complete a full drive cycle, then rescan. If monitors complete and no codes appear, the reset was incidental. If monitors remain incomplete or a code sets during the drive cycle, the problem is confirmed.

My my guide on verify repair fixed obd2 covers this step by step.

The Bottom Line

An OBD2 scanner does not replace a mechanic’s inspection. It gives you independent, unfiltered access to the vehicle’s fault history before you hand over any money. The cleared-code red flag from incomplete monitors is the single most valuable finding a scanner provides on a used car lot. Any purchase over a few thousand dollars justifies bringing a scanner, following the four-phase scan sequence, and using every code as a documented line item in the price negotiation. If you are deciding which scanner type to bring, my comparison of OBD2 code reader vs scanner explains what each tier can and cannot do.

FAQs

What scanner do I need to check a used car before buying?

A basic OBD2 scanner that reads generic engine codes and displays readiness monitor status is sufficient for the core checks: active codes, pending codes, and monitor completeness. For a more thorough inspection, a mid-range multi-system scanner that also reads ABS and SRS codes adds significant value, since transmission, brake, and airbag faults are otherwise invisible. For odometer tampering detection via ECU module comparison, you need either a manufacturer-specific diagnostic app for that vehicle’s brand or a professional-grade scanner with extended module access. Expect to spend $30 to $80 for a reliable basic scanner, $150 to $400 for a capable multi-system scanner.

How do I know if someone cleared the OBD2 codes before selling?

The most reliable indicator is the readiness monitor status. When codes are cleared, all readiness monitors reset to “not ready” simultaneously. A vehicle that has been driven normally for several weeks should have all non-continuous monitors showing complete. If multiple monitors show “not ready” on a car the seller claims drives daily, the ECU was reset recently. A secondary indicator is the absence of freeze frame data on a vehicle with an active code: if the code exists but no freeze frame data is stored, the code re-set after the data was cleared on a previous scan. The third indicator is a check engine light that appears within 50 to 100 miles after purchase despite being off during inspection.

What does it mean if multiple readiness monitors show Not Ready?

It means the ECU was reset recently and has not had enough drive time to complete its self-diagnostic tests. The reset could come from a code-clearing scan, a battery disconnect, a module replacement, or a software update. Any of those is possible with an innocent explanation. The concerning scenario is a vehicle whose seller claims it has been driven regularly but cannot explain why multiple monitors are incomplete. On a car being sold by a private seller without mechanical knowledge, ask directly: has the battery been disconnected recently, or has the car been scanned and codes cleared? The answer, or the hesitation in the answer, provides information.

Should I scan the car before or after the test drive?

Scan before, during, and after the test drive: that is the four-phase approach described in this guide. The most important scan is before the ignition is turned on, and then again with the engine cold and the key in the on position without starting. This captures the true monitor status before any drive cycle activity begins. Scanning only after a test drive gives the drive cycle time to move some monitors toward complete, which reduces the visibility of a recent code-clearing event. After the test drive, rescan immediately to catch any pending codes that set during the drive.

Can an OBD2 scanner detect odometer fraud?

Not with a basic generic scanner. A generic OBD2 reader reads only what the ECM reports over the standardized diagnostic connection, which typically returns the odometer value from the cluster, not the independently stored values in individual modules. Detecting odometer rollback requires a scanner or app with manufacturer-specific extended module access that reads mileage stored independently in the BCM, TCM, and ABS module and compares those values to the cluster reading. Inconsistency between these independently stored values and the cluster display indicates tampering. Apps like Carly (for supported brands) and professional tools like AUTEL MaxiSYS with the relevant vehicle database perform this comparison.

Which fault codes should make me walk away from a used car?

No single code is an automatic dealbreaker. The context matters: the asking price, the seller’s explanation, and whether a diagnostic is permitted before purchase. That said, certain codes carry higher stakes. P0300 through P0308 (misfires) on a high-mileage vehicle without a maintenance history may indicate internal engine wear that requires a compression test to assess. P0700 series transmission codes on an automatic with no service history represent an unknown repair cost that can reach several thousand dollars. Any B-code in the SRS airbag system that has not been cleared after a confirmed pretensioner replacement may mean an unrepaired collision. Multiple codes across different systems on a vehicle presented as clean is a pattern worth walking away from without a full independent inspection.

Can I use a free phone app to check a used car?

A free app paired with an inexpensive Bluetooth ELM327 adapter (typically $15 to $25) can read generic OBD2 codes and display readiness monitor status, which is enough for the core cleared-code and fault code checks. Apps like Car Scanner ELM OBD2 and Torque Lite on Android and OBD Fusion on iOS provide this capability at no software cost. The limitation is that free apps and budget adapters typically cover generic engine codes only, not multi-system ABS and SRS codes, and not manufacturer-specific extended module data. For a thorough inspection on a purchase above $8,000 to $10,000, the investment in a proper multi-system scanner is worthwhile.

Scroll to Top