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 →
🎬 Helpful Videos 🛍️ Shop This Part

P2099 on 2013-2019 Cadillac XTS: Post Catalyst Fuel Trim Too Rich Causes & Fixes

On a 2013-2019 Cadillac XTS with the 3.6L V6 engine, code P2099 usually points to a fuel delivery problem, not a bad oxygen sensor. A GM Technical Service Bulletin (TSB) highlights leaking fuel injectors as a primary cause. Before replacing any sensors, a fuel injector balance test is highly recommended, as excess fuel can damage the expensive catalytic converter over time.

16 minutes to read 2013-2019 Cadillac XTS
Most Likely Cause
Leaking or Faulty Fuel Injector(s)
Difficulty
3/5
Est. Time
2.8 hrs
DIY Doable?
✅ Yes
Shop Labor
$250 – $950
Parts Price
$50 – $450
⚠️ Drivable, but... — You can continue driving, but the rich fuel condition will cause poor fuel economy and higher emissions. Over time, the excess unburned fuel can overheat and damage the catalytic converter, which is a very expensive repair.
Key Takeaways
  • For a P2099 on a Cadillac XTS, do not automatically replace the oxygen sensor.
  • A GM Technical Service Bulletin (PIP4964F) strongly suggests a leaking fuel injector is the most likely cause.
  • The first diagnostic step after checking for exhaust leaks should be a fuel injector balance test.
  • Ignoring this code can lead to poor fuel mileage and eventual damage to the catalytic converter.
The trouble code P2099 stands for "Post Catalyst Fuel Trim System Too Rich Bank 2". This means the engine's main computer, the Powertrain Control Module (PCM), has detected too much fuel and not enough oxygen in the exhaust gases after they have passed through the catalytic converter on Bank 2. Bank 2 on the 3.6L V6 in the XTS refers to the bank of cylinders closer to the radiator. The "post-catalyst" or downstream oxygen sensor (also called B2S2) is reporting a rich condition that the PCM cannot correct through normal fuel trim adjustments.

What's Unique About the 2013-2019 Cadillac XTS

For many vehicles, a P2099 code immediately leads to replacing the downstream oxygen sensor. However, on GM's 3.6L V6 engine (RPO code LFX) used in the Cadillac XTS, this is often the wrong approach. A specific Technical Service Bulletin (TSB #PIP4964F) was issued because this code is frequently caused by fuel injector issues. The direct injection system on this engine can be prone to leaking injectors, which creates a rich condition that the oxygen sensors correctly detect. Technicians are advised to perform fuel injector tests before considering sensor replacement to avoid misdiagnosis.

🎬 Watch: Understanding P2099 causes and common fixes for Bank 2

Diagnostic Flowchart

Tap your situation to follow the diagnostic path that matches what you're seeing on this vehicle.

Which of these best describes what you have checked or noticed on your XTS?
Have you performed an injector balance test or checked Bank 2 spark plugs?
→ Replace Bank 2 fuel injectors (OEM 12638530, ~$100-$180 each) as per GM TSB PIP4964F.
→ Remove spark plugs on cylinders 2, 4, 6 (front bank). If wet or sooty, replace the injectors.
→ Visually inspect and use a smoke machine to find exhaust leaks at the Bank 2 manifold gasket ($20-$300).
Does a scan tool show Bank 2 Sensor 2 voltage stuck above 0.8V?
→ Replace the downstream O2 sensor (Bank 2 Sensor 2, OEM 213-4764) located on the front catalytic converter 🎬 Watch: Step-by-step guide to replacing the Bank 2 O2 sensor ($50-$120).
→ Connect a fuel pressure gauge to verify high-side and low-side pressures, ruling out a faulty high-pressure pump 🎬 See a technician explain the root causes of code P2099 ($100-$400).

Symptoms You May Notice

  • Check Engine Light is on
  • Decreased fuel economy
  • Engine may run rough, hesitate, or lack power during acceleration
  • Black smoke or soot from the exhaust, or a black sooty residue on the rear bumper
  • Smell of raw gasoline from the exhaust
  • Engine may stall at times
⚠️ Don't Waste Money on the Wrong Fix
  • Replacing the downstream (post-catalyst) O2 sensor without performing further diagnosis. The TSB for this vehicle strongly suggests the root cause is often a fuel injector, and the O2 sensor is simply doing its job by reporting the resulting rich condition.

Most Likely Causes

  1. Leaking or Faulty Fuel Injector(s) 🔴 High Probability A GM Technical Service Bulletin (PIP4964F) specifically identifies fuel injector problems as a common cause for P2099 on this powertrain. The high-pressure direct injectors can develop internal leaks, causing excess fuel to enter a cylinder and creating a rich condition.
    How to confirm: Perform a fuel injector balance test using a capable scan tool (like GM's Active Fuel Injector Tester, AFIT). This is the manufacturer's recommended first step. An alternative method is to remove the spark plugs on Bank 2 (cylinders 2, 4, 6) and check for a wet, fuel-fouled plug or excessive black soot, which indicates a rich cylinder.
    Typical fix: Replace the faulty fuel injector(s) and their seals. It is often recommended to replace all three injectors on the affected bank (Bank 2) at the same time to prevent future failures.
    Est. part cost: $50-$150 per injector
  2. Exhaust Leak 🟡 Medium Probability Leaks can occur at the exhaust manifold gasket or the flange connecting to the catalytic converter. The integrated exhaust manifold design of the LFX engine means a leak at the cylinder head gasket is also a possibility.
    How to confirm: Visually inspect the exhaust system on Bank 2, from the cylinder head to the downstream O2 sensor. Look for cracked manifolds, broken flange bolts, or failed gaskets. A smoke machine can be used to pressurize the exhaust and reveal small, hard-to-see leaks. Soot trails around joints are also a key indicator.
    Typical fix: Replace the leaking gasket or tighten loose hardware. In some cases, a cracked exhaust manifold may need to be replaced. Temporary repairs can sometimes be made with exhaust putty for small leaks.
    Est. part cost: $20-$300
  3. Faulty Downstream Oxygen (O2) Sensor ⚪ Low Probability While less common on this platform, the sensor itself can fail. It is often replaced unnecessarily when the actual cause is a fuel or exhaust issue.
    How to confirm: After confirming there are no exhaust leaks or fuel injector issues, monitor the Bank 2 Sensor 2 voltage with a scan tool. A healthy downstream sensor should show a relatively stable voltage. If it's stuck high (above 0.8V) or fluctuating wildly like an upstream sensor, it may be faulty.
    Typical fix: Replace the Bank 2, Sensor 2 (downstream) oxygen sensor. On the XTS, this sensor is located on the catalytic converter for the front bank (closer to the radiator).
    Est. part cost: $50-$120
  4. High Fuel Pressure ⚪ Low Probability
    How to confirm: Connect a fuel pressure gauge to the fuel rail and check that the pressure is within the manufacturer's specified range. A faulty fuel pressure regulator or a failing high-pressure fuel pump (common in direct injection systems) could be the cause.
    Typical fix: Replace the faulty fuel pressure regulator or high-pressure fuel pump.
    Est. part cost: $100-$400

Rare But Worth Checking

  • Faulty Powertrain Control Module (PCM): A software glitch or internal failure in the PCM can cause incorrect fuel calculations. This is rare and should only be considered after all other possibilities have been exhausted. A dealer may need to check for software updates.
  • Faulty Mass Air Flow (MAF) Sensor: A dirty or failing MAF sensor can send incorrect airflow readings to the PCM, causing it to command an incorrect fuel mixture. While this usually affects both banks and might set a P2097 as well, it can sometimes manifest on a single bank. Cleaning the MAF sensor with a dedicated cleaner is a good first step.

Diagnosis Steps

  1. Scan for Codes: Read the trouble codes with an OBD-II scanner and confirm P2099 is present. Note any other codes, such as P2097 or misfire codes (P030x), as they provide critical clues.
  2. Check TSBs: Be aware of TSB #PIP4964F, which points to fuel injectors as a primary cause. This should guide your diagnostic priority.
  3. Inspect for Exhaust Leaks: Carefully inspect the Bank 2 exhaust manifold (front, near radiator) and downpipe for any signs of leaks before the downstream O2 sensor. Use a smoke machine for best results.
  4. Analyze Live Data: Use a scan tool to monitor long-term and short-term fuel trims for both banks. Also, observe the voltage of the Bank 2 Sensor 2. A reading stuck high (e.g., >0.8V) confirms the rich condition being reported.
  5. Perform Injector Test: Following the TSB's advice, perform a fuel injector balance test with a professional scan tool. This is the most critical step to rule out the most common cause.
  6. Inspect Spark Plugs: As a proxy for an injector test, remove and inspect the spark plugs from Bank 2 (cylinders 2, 4, 6). Heavy black soot or a wet, fuel-smelling plug points to the leaking injector's cylinder.
  7. Test the O2 Sensor: If injectors test good and no exhaust leaks are found, test the O2 sensor's response. A sensor that is slow, stuck, or has damaged wiring may be the culprit.
  8. Check Fuel Pressure: Verify that both low-side and high-side fuel pressure are within OEM specifications to rule out a faulty regulator or pump.

Parts You'll Likely Need

  • Fuel Injector (OEM #12638530) — Identified by a manufacturer TSB as the most likely cause for this code on the 3.6L LFX engine.
    Trusted brands: ACDelco (GM Genuine), Bosch
    OEM price range: $100-$180
    Aftermarket price range: $50-$120
  • Downstream Oxygen Sensor (Bank 2, Sensor 2) (OEM #213-4764) — This is a common misdiagnosis but can be the cause if fuel delivery and exhaust integrity are confirmed to be good. This sensor is for the radiator-side bank, post-catalyst.
    Trusted brands: ACDelco (GM Genuine), Denso, Bosch, TRQ
    OEM price range: $80-$150
    Aftermarket price range: $50-$120
  • Exhaust Manifold Gasket — A leak at the exhaust manifold is a common source of exhaust leaks that can trigger this code. The LFX engine has an integrated manifold, so this refers to the gasket between the cylinder head and manifold section.
    Trusted brands: Fel-Pro, ACDelco
    OEM price range: $30-$60
    Aftermarket price range: $15-$40

Related Codes That Often Appear With This One

  • P2097 — This is the identical code but for Bank 1 (firewall side). If both P2097 and P2099 are present, it strongly suggests a systemic problem affecting both banks, like a faulty fuel pressure regulator, MAF sensor, or a major vacuum leak.
  • P0300, P0302, P0304, P0306 — These are misfire codes for Bank 2 cylinders (P0300 is a random multiple misfire). A severely leaking fuel injector can foul a spark plug, causing a misfire on that specific cylinder and triggering one of these codes alongside P2099.
  • P0175 — System Too Rich (Bank 2). This code is set based on the upstream (pre-catalyst) oxygen sensor reading. If you have both P0175 and P2099, it confirms the rich condition is starting in the engine and not being caused by the catalytic converter or downstream sensor.

Technical Service Bulletins (TSBs) & Recalls

  • PIP4964F: Advises technicians to check for Diagnostic Trouble Code P2097 or P2099 and perform an injector balance test prior to further diagnosis.

Platform-Specific Known Issues

  • TSB #PIP4964F specifically addresses DTC P2097 or P2099 on this platform. It advises technicians to perform a fuel injector balance test before proceeding with other diagnostics, as leaking injectors are a known issue.
  • The 3.6L LFX engine has an integrated exhaust manifold cast into the cylinder head. While this simplifies design, an exhaust leak can sometimes mean a more complex repair than a simple gasket replacement.

Mechanic-Grade Diagnostic Values

  • High-Pressure Fuel Rail Pressure — expected: Over 2,000 PSI under load.. Failure: Significantly lower pressure, or pressure that does not increase with engine RPM, especially if codes like P0087 are also present.
  • Low-Pressure Fuel Pump Pressure — expected: Approximately 43-51 PSI (300-350 kPa) at idle, feeding the high-pressure pump.. Failure: Pressure below this range indicates a weak in-tank fuel pump, which can starve the high-pressure pump.
  • Downstream O2 Sensor (B2S2) Voltage — expected: A relatively stable voltage, typically between 0.6V and 0.8V on a healthy, warm engine.. Failure: A voltage signal that is stuck high (consistently above 0.8V) confirms the rich condition reported by the PCM.
  • Ground Circuit Resistance — expected: Less than 5 Ω.. Failure: Higher resistance indicates a poor ground connection, which can cause erratic sensor readings and control module behavior.

Scan Tool Commands That Help

  • GM GDS2 / Professional Scan Tool: Active Fuel Injector Tester (AFIT) / Injector Balance Test — This is the manufacturer's recommended first step after checking for exhaust leaks, as per TSB PIP4964F. This command actuates and flow-tests the direct injectors to identify leaks or balance issues that are the most common cause of P2099 on this engine.
  • GM GDS2 / Professional Scan Tool: Fuel Pressure Control — Allows a technician to command changes in fuel pressure to test the response of both the high-pressure fuel pump and the fuel rail pressure sensor, helping to isolate a faulty component in the fuel delivery system.

Wiring & Ground Locations

  • G110 / G102 — Located on the rear of the cylinder heads. G110 is often on the right (firewall side) head, while G102 may be on the left (radiator side) head. These are critical grounds for the ECM and other engine sensors.. A loose or corroded ground at these locations can cause erratic signals from sensors, including oxygen sensors and fuel system components, leading to false rich readings and codes like P2099. This is especially common after major repairs like a transmission replacement where these grounds may have been disturbed.
  • Injector and O2 Sensor Harness — The wiring harnesses for Bank 2 (radiator side) injectors and O2 sensor run across the front of the engine.. This area is susceptible to damage from heat, abrasion, or rodents. A short or open in the wiring to an injector or O2 sensor can mimic a component failure. Damage is often found right at the base of the connector where it is difficult to see.

Real Owner Repair Stories

  • Reddit user on r/Chevy (2011 Chevy Traverse (with 3.6L engine, platform-mate to XTS)) — Intermittent no-crank/no-start, multiple communication DTCs between modules.
    ❌ Tried (didn't work) Initial diagnosis pointed towards module failures.
    ✅ What actually fixed it The root cause was a loose, cross-threaded G110 ground bolt on the back of the cylinder head from a previous transmission replacement. Tightening the ground connection resolved all electrical issues.
  • Tahoe Yukon Forum user (2016 GMC Yukon Denali) — P2099 Check Engine Light appeared during a long road trip at high elevation and high ambient temperatures.
    ❌ Tried (didn't work) Visual inspection of wiring and MAF sensor showed no issues.
    ✅ What actually fixed it The owner cleared the code. After driving another 700 miles in cooler temperatures and at a lower elevation, the code did not return. This suggests that extreme operating conditions can sometimes trigger an intermittent P2099 without a hard fault being present.
  • YouTube video by 'Under Construction Network' (2009 Cadillac CTS 3.6L DI (Direct Injection)) — Misfiring and multiple, seemingly unrelated trouble codes.
    ❌ Tried (didn't work) Replacing components based on codes would have been a misdiagnosis.
    ✅ What actually fixed it The actual cause was a rodent-chewed wiring harness for a fuel injector. Repairing the damaged wires at the base of the connector fixed the issue. This highlights how wiring faults can mimic injector failure.

OEM Part Supersession History

  • 12638530 (Fuel Injector)12669384 — Part has been updated by the manufacturer.
    Heads up: While other numbers like 12632255 and 12611545 are often cross-referenced with 12638530 for earlier 3.6L engines, 12669384 is a more recent supersession. Always verify with VIN.
  • 213-4764 (Downstream O2 Sensor)Uncertain, potential incompatibility. — Part number 213-4764 is frequently listed by suppliers for smaller GM engines (1.4L Cruze/Sonic) and not the 3.6L XTS.
    Heads up: This is a common point of confusion. While Pass 2 listed 213-4764, a more likely GM Genuine part number for the XTS 3.6L downstream sensor is 12640453. Reputable aftermarket brands also list direct-fit alternatives like Denso 234-4341 or Bosch 13444. Ordering 213-4764 may result in receiving an incorrect part. Always confirm fitment with the vehicle's VIN.

Model Year Variations Within This Range

  • 2013-2019: GM issued Special Coverage Adjustment #14329 related to premature failure of the high-pressure fuel pump (HPFP) on many 3.6L V6 engines. Owners experiencing HPFP-related symptoms (like P0087) should contact a GM dealer with their VIN to check for eligibility for a no-cost replacement, even if out of the standard warranty.
  • 2013-2019: Per GM bulletin #07-06-04-025M, the direct injection system on the 3.6L LFX engine produces a normal, audible ticking sound from both the high-pressure fuel pump and the fuel injectors. This is a characteristic of normal operation and should not be misdiagnosed as a fault. The sound is more noticeable at idle and during cold starts.
  • 2018-2019: The 2018 model year introduced a significant refresh with updated styling, a recalibrated chassis, and the CUE 3.0 infotainment system. However, the core 3.6L LFX powertrain and the likely causes of code P2099 remained consistent with earlier models.
Causes and Fixes P2099 Code: Post Catalyst Fuel Trim System Too Rich (Bank 2)
Causes and Fixes P2099 Code: Post Catalyst Fuel Trim System Too Rich (Bank 2)
How to Fix P2099 Engine Code in 4 Minutes [2 DIY Methods / Only $9.49]
How to Fix P2099 Engine Code in 4 Minutes [2 DIY Methods / Only $9.49]
check engine code P2099 causation
check engine code P2099 causation
 How to replace O2 sensor bank 2 on a 2013  - 2017 Cadillac XTS 
 How to replace O2 sensor bank 2 on a 2013 - 2017 Cadillac XTS 
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 Jul 21, 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 P2099 for:
  • Cadillac XTS: 2013201420152016201720182019
In this article
🎬 Helpful Videos
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