Guide step
Start with what kind of imbalance the ECU is accusing
P0171 and P0174 are broad correction codes. They say the ECU had to keep adding fuel because the bank looked lean overall. P0300 says combustion is unstable across multiple cylinders. P219A and P219B are narrower and more interesting: they point toward uneven combustion contribution within one bank. That means distribution matters more than a simple whole-engine rich or lean story.
Guide step
Why injector and cylinder contribution clues matter more than the code name
A single weak injector, one slightly weak coil, a runner leak, or a mechanically soft cylinder can distort one bank enough to trip an imbalance code without immediately handing you a neat P0301 or P0304. That is why many P219A/P219B diagnoses go wrong when shops skip misfire counters, balance tests, and bank-to-bank comparison and jump straight to oxygen sensors.
Guide step
Use idle versus cruise behavior as the tie-breaker
If trims are positive everywhere and both banks look broadly lean, think classic air leak, fuel pressure, or MAF-style errors first. If one bank behaves worse than the other and the roughness follows that bank at idle or light load, the imbalance story becomes stronger. If the engine runs much worse under load and one cylinder begins to stand out, ignition or injector contribution rises quickly.
Guide step
Do not confuse feedback parts with root cause parts
The upstream oxygen sensor may be the messenger that reports the unstable exhaust stream, but that does not make it the source. Bank imbalance codes often happen because the sensor is accurately reporting a messy bank created by injector, ignition, intake, or mechanical differences. Replacing the messenger before proving the cylinders are balanced is how expensive guesswork starts.
Guide step
The practical diagnostic order
Capture freeze-frame first. Compare trims bank to bank second. Check misfire counters, plugs, coils, and injector contribution on the accused bank third. Verify fuel pressure and intake sealing fourth. If the pattern stays bank-local and one cylinder keeps looking weak, finish with mechanical testing. That order is much cheaper than treating P219A/P219B like mysterious sensor-only codes.
Guide step
Real-world takeaway
When the engine is simply lean, diagnose why the whole bank wants more fuel. When it is randomly misfiring, confirm whether the issue is broad or cylinder-specific. When it sets P219A or P219B, think distribution: one bank is not behaving evenly, and the fix usually comes from proving which cylinder or subsystem is tilting that bank out of balance.