Go-Parts
Cart 0
Your cart is empty
Add an item to see it appear here.
Wrenchy
Go-Parts Garage
Expert guides for diagnosing, troubleshooting, and replacing auto parts Expert guides for diagnosing and replacing auto parts
Browse All Articles →
🧭 Diagnostic Flowchart 🎬 Helpful Videos 🛍️ Shop This Part

P0456 on 2020-2024 BMW X6: Causes and Fixes for a Very Small EVAP Leak

For a 2020-2024 BMW X6, code P0456 is most often caused by a faulty fuel tank breather valve (purge valve) or a failing DMTL pump. While checking the gas cap is an easy first step, these other components are more common failure points on modern BMWs. Diagnosis often requires a smoke test to pinpoint the exact location of the very small leak.

20 minutes to read 2020-2024 BMW X6
Most Likely Cause
Faulty Fuel Tank Breather Valve (Purge Valve)
Difficulty
2/5
Est. Time
1.5 hrs
DIY Doable?
✅ Yes
Shop Labor
$150 – $550
Parts Price
$30 – $250
Safe to drive — You can continue to drive with a P0456 code. It does not affect engine performance or safety; its primary impact is on emissions, and the Check Engine Light will prevent you from passing an emissions inspection.
Key Takeaways
  • P0456 is an emissions code for a very small leak and will not affect how your X6 drives.
  • Before any other repair, ensure your gas cap is tight and the seal is clean. If you replace it, use a genuine BMW part, as aftermarket caps are a common cause of this code.
  • On this vehicle, the most likely culprits beyond the gas cap are the fuel tank breather (purge) valve in the engine bay or the DMTL pump near the fuel tank.
  • Do not replace parts randomly. If a new OEM gas cap does not fix the issue, the most cost-effective next step is a professional smoke test to find the exact source of the leak.
The trouble code P0456 on a BMW X6 signifies that the vehicle's engine control unit (ECU) has detected a 'very small leak' in the Evaporative Emission Control (EVAP) system. The EVAP system is designed to capture fuel vapors from the gas tank and prevent them from escaping into the atmosphere. The vehicle periodically runs a self-test, often while parked, by pressurizing the system and checking if it holds pressure. If the ECU detects a pressure drop equivalent to a leak from a hole as small as 0.020 inches, it triggers the P0456 code and illuminates the Check Engine Light.

What's Unique About the 2020-2024 BMW X6

On modern BMWs like the G06 X6, a P0456 code is less likely to be a simple loose gas cap compared to other car brands. Experience from technicians and owners points more frequently to component failure, specifically the fuel tank breather valve (purge valve) located in the engine bay, or the Diagnostic Module Tank Leakage (DMTL) pump near the fuel tank. These parts are known failure points across many recent BMW models, so diagnosis should focus on them after the gas cap has been ruled out.

Symptoms You May Notice

  • Check Engine Light is on.
  • No noticeable impact on drivability or performance.
  • A faint fuel smell near the rear of the vehicle or gas cap may be present in rare cases.
  • On vehicles with the B58 engine, a failing (stuck open) purge valve can sometimes be accompanied by a P0172 'System too rich' code and long cranks after refueling.
⚠️ Don't Waste Money on the Wrong Fix
  • Replacing only the gas cap with an aftermarket part. Aftermarket caps are a notorious cause of P0456 codes because their seals often do not meet BMW's specific requirements for pressure testing.
  • Replacing parts without performing a smoke test. Since multiple components can cause the same code, guessing can lead to unnecessary expense. A smoke test is the most reliable way to pinpoint the leak's exact source.

Most Likely Causes

  1. Faulty Fuel Tank Breather Valve (Purge Valve) 🔴 High Probability → Shop Fuel Tank This valve is a known high-failure item on many modern BMW engines, including the B58. It can fail to close completely due to internal wear or become stuck, creating a constant small leak path. BMW has issued extended warranties for this part on some models due to material and operational issues.
    How to confirm: Remove the valve from the engine bay. With the valve disconnected, try to blow through it. If any air passes, it is faulty and needs to be replaced, as it should be normally closed. A failing valve may also make a loud metallic clicking or knocking noise. The electrical resistance should be approximately 18.2 ohms.
    Typical fix: Replacement of the fuel tank breather valve. Bosch is the OEM supplier for this part. A G05 X5 owner with the same B58 engine documented this repair, which is identical for the G06 X6. 🎬 Watch this B58 engine purge valve replacement walkthrough.
    Est. part cost: $45-$150
  2. Faulty DMTL Pump or NVLD Module 🟡 Medium Probability → Shop Evaporative Emissions System Leak Detection Pump The DMTL pump (or the newer NVLD module), which pressurizes the system for testing, is a common failure point on BMWs. It can fail internally or develop cracks in its housing or seals, causing the system to fail its pressure test. BMW has extended the warranty on the NVLD module for many models to 15 years/150,000 miles due to known defects.
    How to confirm: This is difficult to confirm without a BMW-specific scan tool (like ISTA) to actuate the pump's test function or a smoke test. A smoke test may reveal a leak at the pump itself or, in cases of internal failure, smoke may exit the fresh air filter when it should be sealed.
    Typical fix: Replacement of the DMTL/NVLD module, which is located in the rear passenger-side wheel well area, attached to the charcoal canister. 🎬 See how to replace the NVLD module yourself.
    Est. part cost: $70-$250
  3. Loose or Faulty Gas Cap 🟡 Medium Probability → Shop Fuel Tank Cap While less common than on other makes, the gas cap seal can still degrade over time, preventing a perfect seal. Using non-OEM caps is a very common cause of this code. Even if the cap seems tight, a worn seal can be the culprit.
    How to confirm: First, ensure the cap is tightened until it clicks several times. Inspect the rubber seal for cracks or hardening. If the issue persists after clearing the code, replace it with a genuine BMW OEM part.
    Typical fix: Clean the fuel filler neck sealing surface and replace the gas cap with a new OEM part.
    Est. part cost: $25-$50
  4. Cracked or Disconnected EVAP Hoses ⚪ Low Probability The plastic and rubber hoses in the EVAP system can become brittle from heat and age, leading to hairline cracks, especially at connection points.
    How to confirm: A visual inspection may reveal obvious cracks, but a definitive diagnosis requires a professional smoke test to see where smoke escapes from the system.
    Typical fix: Replacement of the specific hose or connector that is found to be leaking.
    Est. part cost: $20-$100

Rare But Worth Checking

  • Cracked Charcoal Canister: → Shop Vapor Canister Physical damage to the charcoal canister can cause a leak. This is uncommon but can happen from road debris or improper jacking. A smoke test would be required to confirm.
  • Leaking Fuel Tank Filler Neck: → Shop Fuel Tank Corrosion or damage to the filler neck where the gas cap seals can prevent a proper seal, even with a new cap.
  • Failing NVLD Unit (Natural Vacuum Leak Detection): Some modern BMWs use an NVLD pressure switch as part of the EVAP system. A Reddit user with a G05 X5 reported that BMW issued an extended warranty (15 years/150k miles) for this component, suggesting it's a known failure point that can cause EVAP codes.

Diagnosis Steps

  1. Read the code with an OBD-II scanner to confirm P0456 is present. Check for BMW-specific shadow codes like 190302 for more detail.
  2. Inspect the gas cap. Ensure it is tightened until it clicks at least three times. Check the rubber seal for any signs of cracking, stiffness, or damage.
  3. Clean the fuel filler neck's sealing surface with a clean cloth to remove any dirt or debris.
  4. If the cap is suspect, replace it with a new, genuine OEM BMW part (Part # 16117222391 is a common fit). Clear the codes and drive for a few days to see if the light returns, as the EVAP monitor runs intermittently.
  5. If the light returns, visually inspect the Fuel Tank Breather Valve (purge valve) and its connecting hoses in the engine bay for any obvious cracks or damage.
  6. Perform a functional test on the purge valve: remove it and try to blow through it. If air passes, it has failed and needs replacement. You can also check its resistance, which should be around 18.2 ohms.
  7. If no obvious issues are found, the most effective next step is to have a professional smoke test performed. This involves injecting low-pressure smoke into the EVAP system to visually identify the source of the leak.
  8. 🎬 Watch: How to perform a professional EVAP smoke test.
  9. During the smoke test, pay close attention to the purge valve, the DMTL/NVLD pump (in the rear passenger wheel well area), and all connecting hoses. Note if smoke exits the DMTL pump's fresh air filter, as this indicates an internal valve failure within the pump.

Parts You'll Likely Need

  • Fuel Tank Breather Valve (Purge Valve) (OEM #13907643106) — This is a very common failure point on modern BMWs that causes a small, persistent leak when it fails to seal completely. It can also cause rich running conditions and hard starts after fueling.
    Trusted brands: Bosch (OEM), BMW (Genuine)
    OEM price range: $80-$130
    Aftermarket price range: $45-$90
  • Gas Cap (OEM #16117222391) — The seal can wear out, or an incorrect aftermarket cap may have been installed previously. Always use an OEM cap to ensure a proper seal. It's an inexpensive first step after checking for tightness.
    Trusted brands: BMW (Genuine)
    OEM price range: $25-$50
    Aftermarket price range: $15-$30
  • DMTL Pump (Leak Diagnosis Pump) (OEM #16137193479 (superceded part number, confirm fitment)) — This pump is essential for the EVAP self-test and is a known failure point, either from an internal fault or a cracked housing. Note that part numbers have been updated over the years.
    Trusted brands: Bosch (OEM), BMW (Genuine)
    OEM price range: $150-$250
    Aftermarket price range: $70-$120

Technical Service Bulletins (TSBs) & Recalls

  • A Reddit user on a G05 X5 forum mentioned receiving a letter from BMW extending the warranty on the NVLD (Natural Vacuum Leak Detection) unit to 15 years/150,000 miles, which can be a cause for EVAP codes. This is confirmed by SIB 01 09 21.
  • SIB 01 03 24, released in 2024, extends the warranty for the EVAP system's purge valve to 15 years/150,000 miles on many G-chassis vehicles with B46/B58 engines due to known material and operational issues.

Mechanic-Grade Diagnostic Values

  • Fuel Tank Breather Valve (Purge Valve) Solenoid Resistance — expected: ~18.2 ohms. Failure: A significantly higher (open circuit) or lower (shorted) reading.

Hidden / Shadow Codes Worth Checking

  • 190302: Tank ventilation and purge air system, fine leak: leakage greater than 0.5mm. This is the manufacturer-specific code that often accompanies the generic P0456. (see via BMW-specific diagnostic software like ISTA or advanced OBD-II scanners (e.g., BimmerLink, Foxwell for BMW).)
  • 190F08: Fuel tank ventilation system malfunction. Often points specifically to a failing fuel tank breather (purge) valve. (see via BMW-specific diagnostic software like ISTA or advanced OBD-II scanners.)
  • 191C02: Fuel tank ventilation system, 2nd largest discharge point malfunction. Also associated with a failing purge valve. (see via BMW-specific diagnostic software like ISTA or advanced OBD-II scanners.)

Scan Tool Commands That Help

  • ISTA (BMW Dealer Software) or equivalent advanced scan tool: EVAP System Test Plan / DMTL Activation — This function allows the technician to command the DMTL pump, vent valve, and heater to run individually. It is used to diagnose if the DMTL pump itself is faulty, or if the issue lies with the wiring or the DME's control circuit (driver).

Wiring & Ground Locations

  • DMTL/NVLD Module Connector — On the DMTL/NVLD module, located in the rear passenger-side wheel well, attached to the charcoal canister.. Wiring schematics show that power is supplied to the DMTL at pin 4. The grounds for the internal pump motor, vent valve, and heater are controlled by the DME. A technician can use a test light connected to ground and back-probe the control pins while activating them with a scan tool to verify the DME driver and wiring integrity.

Real Owner Repair Stories

  • YouTube video by a 2021 BMW 530i (G30) owner (2021 BMW 530i (G30 chassis, similar EVAP components)) — Check Engine Light with code P0456 and BMW code 190302.
    ❌ Tried (didn't work) Replacing the gas cap.
    ✅ What actually fixed it The owner took the car to the dealership, who diagnosed a failing NVLD module. The owner then purchased the NVLD module (approx. $200) and replaced it themselves in the rear passenger wheel well, which permanently resolved the code.

"I Checked Everything" — The Actual Cause

  • A common scenario is performing a smoke test and finding no visible leaks from any hoses, the gas cap, or the canister. However, smoke is observed exiting the fresh air intake filter of the DMTL pump. This is not normal. It indicates a failure of the internal change-over valve inside the DMTL pump, which should be closed during the test phase. The 'leak' is the system's inability to seal itself for the test, caused by a faulty component, not a cracked hose.

OEM Part Supersession History

  • 1390764586013907643106 — Part revision/update by BMW.
  • 16136752551, 1613676419116137193479 — The DMTL pump has been redesigned and superseded multiple times by BMW.
    Heads up: Always verify the latest part number with a VIN, as multiple revisions exist.

Model Year Variations Within This Range

  • 2024: The 2024 model year is the LCI (facelift) for the G06 X6. It features engine updates, including the B58TU2. While the fundamental EVAP system design is the same, some ancillary parts or software calibrations may differ from the 2020-2023 models. However, service bulletins for common EVAP parts like the purge valve still apply to these newer engines.

Diagnostic Flowchart

Start by checking for any additional codes alongside P0456. The presence of codes like P0172 on a B58 engine can immediately point to the most likely cause.
This combination on the B58 engine strongly suggests a stuck-open Fuel Tank Breather Valve (Purge Valve). After removing the valve, can you blow air through it?
→ The purge valve has failed. It's stuck open, causing both the EVAP leak and the rich condition. Replace it. Check with your dealer, as this part may be covered by an extended warranty (SIB 01 03 24) for 15 years/150,000 miles.
→ The valve may be failing intermittently. Given the specific code combination, replacing the purge valve is still the highest probability fix. If the issue persists after replacement, investigate other causes starting with the gas cap.
Have you inspected the gas cap and fuel filler neck?
→ First, tighten the gas cap until it clicks 3+ times. Clean the filler neck sealing surface. Inspect the cap's rubber seal for cracks or damage. If in doubt, replace it with a genuine BMW OEM part, clear the code, and drive for a few days to see if the light returns.
Let's test the Fuel Tank Breather Valve (Purge Valve). After removing it from the engine bay, can you blow air through it?
→ The purge valve has failed and needs to be replaced. It should be normally closed. This is a very common failure on B58 engines and may be covered by an extended warranty (SIB 01 03 24).
The most common causes have been ruled out. The next step is a smoke test to find the leak. Do you have access to an EVAP smoke machine?
After connecting the smoke machine, where is the smoke leaking from?
→ The DMTL/NVLD module has likely failed. Replace it. This is a known issue, and BMW has extended the warranty on this part for many models (SIB 01 09 21) to 15 years/150,000 miles.
→ A hose has likely become brittle and cracked. Identify the specific leaking component and replace it.
→ A professional diagnosis with a smoke test is recommended. Ask the technician to pay close attention to the DMTL/NVLD module in the rear passenger wheel well, as it's a common failure point that may be covered by an extended warranty (SIB 01 09 21).

Other Known Issues on This Vehicle

Issues unrelated to this code that are worth knowing about as an owner of this generation:

  • 48V Mild-Hybrid System Faults 🟠 Medium — Becoming more common as vehicles age. Can manifest as charging problems, battery degradation, or starter/generator failure. Repair costs can be high if out of warranty.
  • Unexplained Coolant Loss 🟠 Medium — Many owners report needing to top off coolant without visible leaks. Causes can range from minor (evaporation from expansion tank) to serious (internal engine leaks). BMW has issued bulletins suggesting some initial loss is due to seals absorbing coolant. (Ref: A service bulletin exists suggesting some initial coolant absorption by seals is normal.)
  • iDrive 7.0 Software Glitches 🟡 Low — Owners report issues like dropped connections, sudden reboots, or problems with the backup camera display. These are often resolved with a software update from the dealer. (Ref: Multiple recalls for backup camera software have been issued.)
  • Low-Speed Brake Squeal 🟡 Low — A widely reported annoyance, especially in stop-and-go traffic. It's often a matter of brake pad compound and not a safety issue, but can be frustrating for owners.
  • Wind Noise from Door Seals/Window Frame 🟡 Low — Some owners have reported excessive wind noise at highway speeds (above 50 mph). This can often be resolved by a dealer adjustment of the door or seals under warranty.

Used vs. New Parts: Buying Guide for This Vehicle

When a used part is the smart pick: For this specific repair, used parts are generally not recommended. The primary failure items (purge valve, DMTL/NVLD module) are plastic and electronic components that degrade with heat and time. A used part may have limited remaining life or could be faulty already. Given the relatively low cost of new OEM-supplier parts, new is the smarter investment.

Donor-vehicle mileage cap: roughly under 40000 miles for the part to have meaningful remaining life.

What to inspect on the donor part:

  • Verify the part number on the used component matches the latest superseded part number.
  • Inspect plastic housings for any hairline cracks, especially around hose nipples and mounting tabs.
  • Check electrical connectors for corrosion or damage.
  • If possible, ask for the donor vehicle's VIN to check its age and mileage.

OEM-only on this vehicle (don't cheap out):

  • Gas Cap: Aftermarket gas caps are a well-documented cause of P0456 on BMWs due to incorrect seal tolerances. Only a Genuine BMW cap should be used.

Aftermarket brands forum-validated for this vehicle:

  • Bosch: Bosch is the Original Equipment Manufacturer (OEM) for both the Fuel Tank Breather Valve (Purge Valve) and the DMTL Pump. Buying the Bosch-branded part is identical to the Genuine BMW part but typically costs significantly less.

Brands owners have reported issues with on this vehicle:

  • Unbranded/white-box parts from online marketplaces. While they may be cheap, their internal components (solenoids, diaphragms, pump motors) often lack the durability and precise calibration of the OEM parts, leading to repeat failures.

Real Owner Stories

Aggregated from forums and TSBs cited above. Mileages and costs reflect what owners reported in those sources.

2020 BMW G05 X5 (B58 Engine)

Symptoms: Check Engine Light on with codes P0456 and P0172.

What fixed it: Replacement of the Fuel Tank Breather Valve (Part # 13907643106) and gas cap (Part # 16117222391).

Source hint: Bimmerpost (G05 X5 Forum): A user with a 2020 G05 X5 (B58 engine) created a detailed YouTube video of their P0456 and P0172 diagnosis

2019 BMW G05 X5

Symptoms: Experienced a P0456 code and was seeking advice on the cause.

What fixed it: Informed of the NVLD unit extended warranty (15 years/150k miles) which covers this failure.

Source hint: Reddit (r/BmwTech): A user with a 2019 G05 X5 experiencing P0456 was informed by another user about an extended warranty letter for the NVLD unit

Frequently Asked Questions

Is there an extended warranty for the NVLD module on my 2020-2024 BMW X6?
Yes, according to SIB 01 09 21, BMW has extended the warranty on the Natural Vacuum Leak Detection (NVLD) unit to 15 years or 150,000 miles for many models due to known defects.
Does the Fuel Tank Breather Valve on the B58 engine have a special warranty extension?
Yes, SIB 01 03 24, released in 2024, extends the warranty for the EVAP system's purge valve to 15 years or 150,000 miles on many G-chassis vehicles, including those with the B58 engine, due to material and operational issues.
What specific BMW part numbers should I look for to fix a P0456 on my X6?
Commonly cited OEM parts for this repair include the Fuel Tank Breather Valve (Part # 13907643106) and the Gas Cap (Part # 16117222391).
Can a faulty purge valve cause issues other than the P0456 code?
Yes, on B58 engines, a failing purge valve that is stuck open can cause long cranks after refueling and may be accompanied by a P0172 'System too rich' code.
Where is the DMTL pump or NVLD module located on the G06 X6?
The DMTL/NVLD module is located in the rear passenger-side wheel well area, attached to the charcoal canister.
Are there any BMW-specific codes I should look for alongside P0456?
Yes, you should check for BMW-specific shadow codes such as 190302 or 190F08, which provide more detail regarding the tank ventilation system.
Bmw X5 G05 B58 TU Gen2  Fuel tank breather valve P0456 P0172
Bmw X5 G05 B58 TU Gen2 Fuel tank breather valve P0456 P0172
How I fixed code P0456/ BMW CODE 190302 on my 2021 BMW 530i (5 series) (NVLD MODULE REPLACEMENT)
How I fixed code P0456/ BMW CODE 190302 on my 2021 BMW 530i (5 series) (NVLD MODULE REPLACEMENT)
BMW X5 NVLD Module Replacement DIY (2019-2026 BMW G05 X5, G06 X6, EVAP Purge Canister)
BMW X5 NVLD Module Replacement DIY (2019-2026 BMW G05 X5, G06 X6, EVAP Purge Canister)
How To Perform An EVAP Smoke Test To Look For Leaks
How To Perform An EVAP Smoke Test To Look For Leaks
Wrenchy
Article researched & written by
Go-Parts' AI research assistant. Every article is backed by live web research, verified OEM data, and real technician knowledge — so you get accurate, up-to-date information you can trust.
Meet Wrenchy → Updated Jun 8, 2026

The information in this article is provided for general reference and educational purposes only. Vehicle specifications, procedures, and part compatibility can vary by production date, trim level, and region. Always consult your vehicle's factory service manual and verify part numbers before purchasing or performing repairs. Safety-critical components such as airbags, seat belts, and braking systems should be installed by a qualified professional.

Year Coverage
This article covers the OBD-II Code P0456 for:
  • BMW X6: 20202021202220232024
In this article
🧭 Diagnostic Flowchart
Jump to ▴

Email This Guide

We'll send you a link to this article so you can read it later or share it.

Added to cart · Part