OBD-II Code
P0AF0
Severity
Not yet reviewed
Nobody on our side has assessed this code yet, so we are not going to guess at how serious it is.
Can you drive it
We cannot say
Treat it as unknown until a shop reads it with live data. If the check-engine light is FLASHING, stop driving as soon as it is safe to — that means an active misfire, whatever the code.
Indicative cost (USD)
$400–$4,500
From this code's diagnostic notes. Varies by vehicle, diagnosis, parts, and local labor. This is not a repair quote.
$400 (single-block rebuild) to $4,500 (new OEM pack on the RX450h).
P0AF0 means the BMS calculated the hybrid battery pack's state-of-health (SOH) has dropped below the manufacturer's threshold for safe operation — typically a combination of falling pack capacity (Ah), rising internal resistance, and growing cell-block voltage delta during charge/discharge cycles.
How a shop works this
Work from evidence to part, not the other way round. A code names a circuit or a symptom; it does not name the part that failed.
Note every code that is set, not just this one.
Codes that appear together usually narrow the cause faster than any one of them read alone.
Read the freeze frame — the conditions the fault was recorded under.
Cold or warm, idle or load, road speed and engine speed. A fault that only appears cold is a different fault from one that only appears under load, even with the same code on the scanner.
Confirm the fault is current rather than history.
Clear the code and see whether it returns under those same conditions. A code that does not come back may have been logged during a repair, a flat battery, or a bad connection that has since been disturbed.
Then follow the diagnostic notes further down this page, in the order they are written.
They are written in the order a shop works this code, cheapest checks first. Where they name a component, inspect its wiring and connector before replacing it.
If the code comes back after a repair, the underlying fault is still there. That is the point to bring in a scanner with live data and freeze-frame, or a shop that has one.
Common symptoms
- Check engine light
Read the full diagnostic procedureP0AF0 means the BMS calculated the hybrid battery pack's state-of-health (SOH) has dropped below the manufacturer's threshold for safe operation — ty…
P0AF0 means the BMS calculated the hybrid battery pack's state-of-health (SOH) has dropped below the manufacturer's threshold for safe operation — typically a combination of falling pack capacity (Ah), rising internal resistance, and growing cell-block voltage delta during charge/discharge cycles. This is the canonical 'your hybrid battery is dying' code and it's almost always real.
Shop-floor ladder
- Pull live cell-block voltage data — a healthy NiMH pack (Prius/Highlander/Escape) holds all blocks within 0.2V of each other at rest, with nominal block voltage around 7.2-8.5V (six cells per block at 1.2V each); a Li-ion pack (Civic Hybrid late, Volt, Leaf, PHEV) holds cells within 50mV at rest with nominal 3.6-4.2V per cell. Any single block sagging 0.5V+ below the others under load is the failed block.
- Run a guided pack-balance / capacity test on Techstream or equivalent — pass/fail is unambiguous.
- Internal-resistance scan if your tool supports it (Dr. Prius app on Gen2/Gen3 reads block IR via OBD); blocks above 50 milliohms internal R are end-of-life.
- If one or two blocks are clearly dead, rebuild the pack with replacement blocks ($800-$1,800 reman) instead of full replacement; if more than 3 blocks are weak or the pack is high-mileage, replace the full pack. DO NOT probe HV orange-wire circuits with a standard multimeter. Always service HV with Class 0 1000V gloves, isolation tester (Megger), and DC-rated lugged probes. Pack contactor stuck-closed (P0AF1/P0AF2) is the only condition where the orange-wire bus may be live AFTER the service plug is removed. NEVER assume zero potential — always measure with an HV-rated meter.
Vehicle-specific patterns2004-2009 Toyota Prius Gen2 (NHW20) is the platform that made P0AF0 famous — the Panasonic NiMH pack typically loses a single weak cell-block at 150-…
- 2004-2009Toyota Prius Gen2 (NHW20) is the platform that made P0AF0 famous — the Panasonic NiMH pack typically loses a single weak cell-block at 150-220k miles, presenting as a sudden 'red triangle of death' on the dash; reman packs run $1,400-$2,400 installed at a hybrid specialist, OR a single-block rebuild runs $400-$800.
- 2003-2011Honda Civic Hybrid IMA is the second-most-common — Honda issued an extended warranty (under the Civic Hybrid IMA settlement) for affected VINs, and failures cluster at 70-100k miles from BCM software that mismanaged charge-discharge cycles.
- 2011-2017Nissan Leaf Gen1 throws P0AF0-equivalent (Nissan uses different code numbering) from capacity loss in hot climates — Phoenix, Vegas, and Texas fleet vehicles routinely lose 30% capacity by 60k miles because Leaf Gen1 has no active pack cooling.
- 2010-2015Lexus HS250h / CT200h and 2006-2013 RX400h/RX450h follow the Prius pattern but at slightly higher mileages because of better cooling.
Estimated repair$400 (single-block rebuild) to $4,500 (new OEM pack on the RX450h).
Look up another code
More free tools