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

P0021 on 2012-2019 Cadillac CTS: 'A' Camshaft Position Timing Over-Advanced (Bank 2) Causes and Fixes

On a 2012-2019 Cadillac CTS with a V6 or V8 engine, code P0021 is most often caused by a faulty Bank 2 intake camshaft position actuator solenoid or low/dirty engine oil. Replacing the solenoid (ACDelco Part #12679099) is a common DIY fix costing between $30 and $70 for the part.

16 minutes to read 2012-2019 Cadillac CTS
Most Likely Cause
Low or Dirty Engine Oil
Difficulty
2/5
Est. Time
6.2 hrs
DIY Doable?
✅ Yes
Shop Labor
$120 – $2800
Parts Price
$30 – $1018
⚠️ Drivable, but... — You can drive, but you may experience rough idling, poor acceleration, and increased fuel consumption. Ignoring the code for too long could lead to more significant engine problems, especially if the underlying cause is a timing chain issue or you hear rattling noises.
Key Takeaways
  • P0021 on a V6/V8 Cadillac CTS points to an over-advanced intake camshaft on the driver's side.
  • Before buying any parts, check your engine oil. Low or dirty oil is a very common cause.
  • The most likely failed part is the camshaft position actuator solenoid, which is relatively inexpensive and easy to replace.
  • If you also have codes P0011, P0014, or P0024, the problem is almost certainly related to oil quality/pressure affecting the whole VVT system.
  • Do not mistake the camshaft position *sensor* for the actuator *solenoid*. The solenoid is the part that fails most often.
Diagnostic Trouble Code (DTC) P0021 stands for "'A' Camshaft Position – Timing Over-Advanced or System Performance (Bank 2)". This means the Engine Control Module (ECM) has detected that the intake camshaft on Bank 2 is more advanced than it has commanded it to be. On the V6 engines used in the Cadillac CTS (which are mounted longitudinally), Bank 2 refers to the driver's side of the engine. The 'A' camshaft is the intake camshaft. This system, known as Variable Valve Timing (VVT), is oil-operated and adjusts camshaft timing to improve engine performance and fuel economy.

What's Unique About the 2012-2019 Cadillac CTS

The GM High Feature V6 engines (3.0L, 3.6L) used in the CTS are known to be sensitive to engine oil level and quality. Low oil or extended change intervals can lead to sludge, clogging the small passages in the camshaft actuator solenoids and causing timing codes like P0021. Additionally, earlier versions of this engine family had well-documented timing chain stretch issues, which can also trigger this code, though it's a less common cause than the solenoids themselves on these later models. Manufacturer bulletins, like TSB PIP5096C, confirm that P0021 often appears with other camshaft timing codes and may require a specific 'service' solenoid from a different supplier for a permanent fix, rather than just a standard replacement.

Diagnostic Flowchart

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

Is your engine oil low or dirty, or do you hear startup rattling?
→ Perform an oil and filter change using ACDelco Dexos-approved oil ($50-$100), then clear codes.
→ Seek professional diagnosis for a stretched timing chain. This is a complex $2,214-$2,773 repair.
Which model year range does your Cadillac CTS fall into?
→ Clear the codes first. TSB PIP5568E indicates this may be a software anomaly after an auto stop/start event.
Does the engine EUN sticker have an 'A' prefix before the sequence number?
→ Per TSB PIP5096C, do not swap parts. Replace the Bank 2 intake solenoid with the specific service part.
→ Inspect wiring, then swap Bank 2 intake and exhaust solenoids. If code changes to P0024, replace solenoid (OEM 12679099, $40-$70).

Generation note: This range covers the end of the second generation (2012-2014) and the entire third generation (2014-2019) of the Cadillac CTS. The code applies to all V6 and V8 engines offered (3.0L LFW, 3.6L LFX/LGX, 6.2L LSA/LT4), as they all use variable valve timing. The 2.0L 4-cylinder engine does not have a 'Bank 2' and will not set this specific code.

Symptoms You May Notice

⚠️ Don't Waste Money on the Wrong Fix
  • Replacing the camshaft position *sensor* instead of the camshaft position actuator *solenoid*. The sensor's job is to report the timing, and it is usually reporting the problem correctly. The solenoid is the part that controls the timing.

Most Likely Causes

  1. Low or Dirty Engine Oil 🔴 High Probability The variable valve timing (VVT) system is hydraulic and highly dependent on clean oil at the correct pressure. GM's V6 engines are known to be sensitive to oil condition, and low or sludgy oil is the first thing to check.
    How to confirm: Check the engine oil level on the dipstick and examine its color and consistency. If the level is low or the oil is dark, gritty, or sludgy, it needs to be changed. This is the simplest and most important first step.
    Typical fix: Perform an oil and filter change using the manufacturer-specified oil (ACDelco Dexos-approved). Clear codes and test drive.
    Est. part cost: $50-$100
  2. Faulty Intake Camshaft Position Actuator Solenoid (Bank 2) 🔴 High Probability → Shop Engine Camshaft These solenoids are a common failure point. Debris from the oil can clog their internal screens and passages, causing them to stick. Some owners report that using cheap, non-OEM solenoids can cause additional problems.
    How to confirm: Swap the Bank 2 intake solenoid with the Bank 2 exhaust solenoid (they are often the same part). Clear the codes and drive the vehicle. If the code changes to P0024 (Exhaust Camshaft Position System Performance Bank 2), the solenoid is faulty. Note: See TSB warning in Diagnosis Steps before swapping.
    Typical fix: Replace the Bank 2 intake camshaft position actuator solenoid. Use a quality OEM or reputable aftermarket brand.
    Est. part cost: $30-$70
  3. Worn or Stretched Timing Chain ⚪ Low Probability → Shop Engine Timing Chain While more common on earlier GM 3.6L engines, timing chain stretch can still occur on these models, especially if oil changes have been neglected. This causes a permanent timing correlation error.
    How to confirm: This is a complex diagnosis. A professional technician would use a scan tool to check cam/crank correlation data. A distinct rattling or clattering noise from the front of the engine on startup is a strong indicator.
    Typical fix: Replace all timing chains, tensioners, and guides. This is a labor-intensive job. RepairPal estimates the cost for a CTS between $2,214 and $2,773, with labor making up the majority of the cost.
    Est. part cost: $300-$600

Rare But Worth Checking

  • Faulty Camshaft Phaser: → Shop Engine Camshaft The actuator (phaser) that the solenoid controls can fail mechanically, getting stuck in an advanced position. This is much less common than a solenoid failure and a more expensive repair.
  • Wiring or Connector Issue: The wiring harness or connector for the Bank 2 intake solenoid could be damaged, corroded, or contaminated with oil, causing an intermittent signal. A visual inspection can sometimes reveal the problem.
  • ECM Software Glitch: On some newer models with the 3.6L LGX engine (approx. 2018+), an ECM software issue can falsely trigger P0021, often related to the auto stop/start system. In these cases, a dealer may need to perform a software update.

Diagnosis Steps

  1. Check Engine Oil: Verify the oil level is full and the oil is clean. If low or dirty, perform an oil and filter change, clear the code, and see if it returns. This is the most common and cheapest fix.
  2. Scan for Other Codes: Check for other related timing codes (P0011, P0014, P0024). Multiple codes strongly point to an oil issue.
  3. Inspect Solenoid Wiring: Visually inspect the connector and wiring going to the Bank 2 (driver's side) intake camshaft actuator solenoid for any damage, corrosion, or loose connection.
  4. Swap Solenoids (with CAUTION): The Bank 2 intake solenoid is on the front of the driver's side cylinder head. A common test is to swap it with the identical exhaust solenoid below it. Clear codes and drive. If the code changes to P0024, the solenoid is bad. WARNING: First, check for TSB PIP5096C applicability. If your engine's EUN sticker has an 'A' prefix, GM advises *against* swapping and to replace the solenoid with a specific 'service' part.
  5. Test Solenoid (Optional): If you have a multimeter, you can test the resistance of the solenoid. A typical reading is between 6.9 and 7.9 ohms. An open circuit (infinite resistance) or a reading far outside this range indicates a bad solenoid.
  6. 🎬 See how to perform simple electrical tests on your solenoids.
  7. Advanced Mechanical Diagnosis: If the steps above do not resolve the issue, the problem may be a stretched timing chain or a faulty phaser. This requires professional diagnosis, often confirmed by a startup rattle or by checking cam/crank correlation with a high-end scan tool.

Parts You'll Likely Need

  • Camshaft Position Actuator Solenoid (OEM #12679099 (supersedes 12655420, 12628347)) — This solenoid controls oil flow to the camshaft phaser and is the most common cause of P0021 due to clogging or electrical failure.
    Trusted brands: ACDelco (OEM), Delphi, Hitachi
    OEM price range: $40-$70
    Aftermarket price range: $25-$50

Related Codes That Often Appear With This One

  • P0011 — Intake Camshaft Position Timing - Over-Advanced (Bank 1). Seeing both P0011 and P0021 together strongly suggests a global problem like low/dirty oil affecting both banks.
  • P0014 — Exhaust Camshaft Position Timing - Over-Advanced (Bank 1). As noted in TSBs, these codes often set in groups, pointing to a common cause.
  • P0024 — Exhaust Camshaft Position Timing - Over-Advanced (Bank 2). As noted in TSBs, these codes often set in groups, pointing to a common cause.

Technical Service Bulletins (TSBs) & Recalls

  • PIP5096C: DTC P0011 P0014 P0021 Or P0024 Light With No Drivability Concerns.
  • PIP5568E: Investigation into DTCs P0011, P0014, P0021, P0024 setting together or in pairs.
  • PIP5568B: Preliminary information about an investigation into this group of DTCs setting together.

Platform-Specific Known Issues

  • TSB #PIP5096C - Special Solenoid Replacement Procedure: This bulletin notes that for codes P0011, P0014, P0021, or P0024 with no other drivability concerns, technicians should inspect the engine EUN sticker (on the left side of the block or back of the right head). If an 'A' is present before the sequence number, do NOT swap the solenoid. The correct fix is to replace the solenoid with a specific 'service' part from a different supplier, which is designed to make up for a clearance issue in the engine.
  • TSB #PIP5568E - Codes Setting in Pairs: This TSB notes an ongoing investigation into these codes setting together or in pairs, which reinforces the idea of a single underlying cause like an oil pressure or quality issue affecting multiple components.
  • ECM Software Updates (LGX Engines): On some 2018 and newer models with the 3.6L LGX V6, P0021 can be triggered by a software glitch related to the auto stop/start system. Before replacing hardware, a dealer should check if an ECM reprogram is available, as noted in bulletins for platform-mate vehicles.

Mechanic-Grade Diagnostic Values

  • Camshaft Position Actuator Solenoid Resistance — expected: 6.9 - 7.9 Ohms at 68°F (20°C). Failure: A reading of OL (open circuit/infinite resistance) or a value significantly outside the specified range.
  • Engine Oil Pressure (3.6L Engine, Hot at Idle) — expected: Minimum 24 psi at 1,000 RPM. Failure: Pressure significantly below 24 psi when the engine is at operating temperature can starve the VVT system and trigger timing codes.
  • Camshaft Position Sensor (CMP) 5V Reference Circuit — expected: 4.8 - 5.2 Volts (Ignition ON, Engine OFF). Failure: Voltage below this range suggests a short to ground or an open/high resistance in the reference circuit from the ECM, which would likely set other sensor codes as well.

Scan Tool Commands That Help

  • GDS2 / Tech2 (or equivalent high-end scan tool): Camshaft Position Actuator Control / VVT System Test — This bidirectional command allows a technician to manually command the solenoid to advance or retard the camshaft timing while monitoring the desired vs. actual position on live data. It is used to confirm if the solenoid is responding to commands and if the phaser is physically moving, helping to isolate a failed electrical component from a mechanical one without disassembly.

Wiring & Ground Locations

  • ECM Connector C1, Pin 12 — On the Engine Control Module (ECM). On many CTS models, the ECM is located on the front right (passenger side) valve cover.. This specific pin is the control circuit for the Bank 2 Intake Camshaft Actuator Solenoid. A technician can test for a pulsed ground signal here during engine operation to confirm the ECM is commanding the solenoid, or check for continuity from this pin to the solenoid connector to find a wiring break.
  • G131 — On the rear of the left (driver's side) cylinder bank.. This is a primary engine ground on the same cylinder head (Bank 2) where the P0021 fault is occurring. A poor connection at this ground point could cause erratic behavior for sensors and actuators on that bank.
  • Camshaft Actuator Solenoid Connector — On the front of the driver's side cylinder head, connecting to the intake VVT solenoid.. This is a 2-pin connector. One pin receives ignition voltage, and the other is the control wire that goes back to the ECM (Pin 12). Testing for voltage and the control signal directly at this connector is a key diagnostic step.

Real Owner Repair Stories

  • GM Truck Forum User (GM Truck with VVT V8 (similar system logic)) — Low oil pressure at idle when warm, followed by traction control light and code P0011 (the Bank 1 equivalent of P0021). Stumbling idle, misfiring, and limp mode.
    ❌ Tried (didn't work) Replacing the Camshaft Position Sensor (broke during removal)., Multiple oil changes., Replacing the VVT solenoid., Replacing the oil pump and pickup tube o-ring.
    ✅ What actually fixed it The story was ongoing, but after all common parts failed to fix the issue despite improving oil pressure, the final diagnosis was pointing toward a more complex internal oil pressure leak, likely from the valley cover gasket (related to the AFM system) or, in the worst case, worn cam bearings. This highlights a scenario where the timing code is a symptom of a deeper lubrication system failure, not a VVT component failure.

"I Checked Everything" — The Actual Cause

  • While not a smoke test issue, a similar pattern exists for P0021 where all external electrical tests and component swaps fail. In one documented case involving a GM V8 with a similar VVT system, oil pressure was confirmed good at the sensor, and the VVT solenoid was replaced, but the timing code (P0011) persisted. The root cause was suspected to be an internal oil pressure leak from a faulty valley cover gasket, which is part of the Active Fuel Management (AFM) system. This leak would starve the VVT phasers of adequate pressure, but would not be detectable with external tests.

OEM Part Supersession History

  • 12578517, 12628347, 12646783, 1265542012679099 — Standard part evolution for improved reliability, material changes, or manufacturing process updates.
    Heads up: While physically interchangeable, TSB PIP5096C warns that some engines require a specific 'service' part from a different supplier to correct an internal clearance issue, and a standard replacement (even the latest OEM number) may not resolve the code.

Model Year Variations Within This Range

  • 2012-2015 (LFX Engine): These earlier models use the LFX V6. While prone to P0021 from oil and solenoid issues, they do not have the Active Fuel Management (AFM) system found in later engines. Diagnosis can focus more on the VVT solenoids, phasers, and timing chains without the added complexity of AFM-related oil pressure leaks.
  • 2016-2019 (LGX Engine): The LGX V6 is a significant redesign. It introduced Active Fuel Management (AFM) and a variable displacement oil pump. This adds a potential failure point: the oil control manifold (valley cover) for the AFM system can leak internally, causing oil pressure loss to the VVT system and triggering codes like P0021, even if the oil pump and VVT solenoids are good. The VVT system itself was also improved with an 'intermediate park' feature.
Easily Fix p0011 p0014 variable valve timing solenoid. Cadillac CTS 3.6L V6. 2014-2019. (Part Links)
Easily Fix p0011 p0014 variable valve timing solenoid. Cadillac CTS 3.6L V6. 2014-2019. (Part Links)
2012 Cadillac CTS4 3.0L Variable valve timing solenoid(VVT) locations
2012 Cadillac CTS4 3.0L Variable valve timing solenoid(VVT) locations
How to Fix a P0021 OR P0011 Code
How to Fix a P0021 OR P0011 Code
Simple Tests - Camshaft Position Actuator Solenoids - Chevy Holden Ecotec Engine - Problem Fixed
Simple Tests - Camshaft Position Actuator Solenoids - Chevy Holden Ecotec Engine - Problem Fixed
Symptoms Of A Bad Camshaft Actuator You Should NOT Ignore!
Symptoms Of A Bad Camshaft Actuator You Should NOT Ignore!
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 Apr 30, 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 P0021 for:
  • Cadillac CTS: 20122013201420152016201720182019
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