AutoLogicTools

OBD-II trouble code

P2069: Fuel Level Sensor "B" Circuit Intermittent

A large share of these are not electrical faults at all. On a divided tank the secondary float legitimately leaves the fuel on slopes and in corners, so the question is not whether the reading jumped but what shape the jump had.

Low severityPowertrainFuel SystemDrivable short-term

Quick facts

System
Powertrain
Category
Fuel System
Severity
Low severity
Drivable
Usually safe to drive short-term
Repair cost range
$90$900
DIY difficulty
Intermediate DIY

Browse every code in P2000–P20E8, or start from the full code library.

What does P2069 mean?

P2069 is set when the secondary fuel level signal stops being believable for a moment and then goes back to normal. The module is not objecting to a value; it is objecting to a change that happened faster than fuel can physically move.

That definition sounds like it points straight at a wiring fault, and on a single-tank vehicle it largely would. On a vehicle with a second sender it does not, because this particular float has a legitimate reason to misbehave. The whole point of a secondary sender is that fuel is divided between two compartments, and the far compartment is usually the awkward one — shallow, wrapped around a driveshaft tunnel or a crossmember, and far less generously baffled than the lobe the pump lives in. Below about a third full, a long corner or a sustained gradient will genuinely move that fuel off the float, the arm drops toward its stop, and it comes back when the vehicle levels out. Nothing is broken. The module simply saw a level change no tank could produce.

So the useful question on this code is not whether the reading jumped. It is what shape the jump had, and that is visible in a few minutes of logged data.

A float excursion has a path. The value slides down through intermediate readings over a second or two, sits at the bottom while the vehicle stays tilted, and slides back the same way. It correlates with what the vehicle was doing — a roundabout, a slip road, a driveway — and it is far more likely at low fuel levels than high ones. An electrical dropout has no path. The value snaps to a rail and snaps back with nothing in between, the transition is as fast as the sampling rate can show, and it correlates with vibration, temperature or nothing at all. Logging the raw sender value rather than the calculated gauge percentage, and then looking at the transitions rather than the endpoints, separates the two without removing a single fastener.

There is a third possibility that sits between them, and it is specific to this architecture: the level in the far compartment really can change quickly, because the vehicle moves it deliberately. When the jet pump or siphon runs, fuel is dragged from the far lobe to the pump lobe, and a partially blocked crossover, a failing venturi or air drawn into the transfer line makes that movement happen in steps rather than smoothly. An honest sender reporting a genuinely jumpy volume will trip a plausibility check. Checking whether the events coincide with transfer activity — main lobe falling, pump duty raised, the far lobe stepping down — tells you whether you are looking for a wiring fault or a fuel movement fault, and only one of those involves opening a tank.

This is also the one member of the family where clearing the code first is the right move rather than a mistake. The hard-fault members should be measured before anything is reset, because the fault is present and waiting. Here the defining property is absence: the fault is not there most of the time, so the only way to gather useful evidence is to clear it, note the fuel level and conditions when it returns, and reproduce those conditions deliberately. A code that comes back at the same fuel level on the same roundabout is telling you something a workshop test at three-quarters full on a flat ramp never will.

Common causes

  • Fuel moving off the secondary float on slopes or in corners at low tank level
  • Blocked or failing jet pump, siphon or crossover making the far lobe level step rather than slide
  • Corroded or loose terminal in the tank-top connector making and breaking contact
  • Chafed insulation on the harness run between lobes or tanks, touching intermittently
  • Cracked solder joint or crimp inside the sending unit that opens when cold and closes when warm
  • Worn patch on the resistance track producing dropouts only at one fuel level
  • Float arm fouling a baffle or a pump module bracket and sticking briefly
  • High-resistance ground at the secondary tank that varies with vibration
  • Harness pinched under a tank strap or access panel after previous work
  • Loose or damaged pin in the module connector at the other end of the circuit

Symptoms

  • Check engine light on with no change in how the vehicle drives
  • Fuel gauge occasionally jumping or dropping then recovering
  • Distance-to-empty resetting or recalculating without a fill
  • Low fuel warning flashing briefly on a corner or a hill
  • Gauge behaving normally on a test drive but the code returning in service
  • Fault appearing only below about a third of a tank
  • Fault appearing only on cold mornings, or only once the vehicle is warm
  • Transfer pump audible in steps rather than running smoothly
  • Code returning after clearing with no other symptom at all
  • Fault coinciding with rough road surfaces or a specific junction on the owner's route

Diagnostic steps

  1. 1.Log the raw secondary sender voltage at the fastest rate the tool allows and look at the shape of each event. A transition that passes through intermediate values over a second or more is fuel moving; a transition that snaps to a rail and back is electrical.
  2. 2.Note the fuel level at which events occur. A fault that only appears below about a third of a tank, and only on gradients or corners, is the float leaving the fuel rather than a circuit dropping out.
  3. 3.Check whether the events coincide with transfer activity. If the far lobe steps down while the pump is working the crossover, the level really is changing quickly and the sender is reporting honestly.
  4. 4.Clear the code deliberately, then drive the vehicle at the fuel level and on the route where it failed. This is the one member of the family where clear-and-reproduce is a legitimate first step rather than the destruction of evidence.
  5. 5.Wiggle-test the tank-top connector and the harness run between lobes while watching the live raw value, and repeat the test at the temperature the fault occurs at — a cracked internal joint may only open cold.
  6. 6.Inspect the connector on top of the secondary sender for moisture, green corrosion and terminal tension before removing anything; a terminal that has lost its grip produces textbook intermittent behaviour.
  7. 7.Measure voltage drop on the sender's ground path while tapping the harness. A ground that varies with vibration will produce events indistinguishable from a signal fault until it is measured under load.
  8. 8.If the sender can be reached, sweep the float arm slowly through full travel while watching resistance for momentary dropouts, and check that the arm clears baffles and brackets over the whole sweep.
  9. 9.Read the freeze frame for vehicle speed, fuel level and engine load at the moment the code set. On an intermittent fault that snapshot is worth more than an hour of inspection.
  10. 10.Relieve fuel pressure and disconnect the battery before opening a tank access panel, and observe proper fuel handling precautions throughout.

Repair cost

$90$900

Diagnosis is $90 to $180 and is the majority of the work on this code, because the fault has to be caught rather than found. A number of these need no repair at all beyond confirming the behaviour is fuel movement on a low tank. Cleaning and re-tensioning a tank-top connector is $60 to $180. Repairing a chafe or a pinched section of harness between lobes runs $150 to $450, higher when the tank must be lowered. A replacement secondary sending unit is $60 to $350 in parts with 0.7 to 3.5 hours of labour depending on whether an access panel exists, and $250 to $700 in parts where only a complete pump and sender module is sold. A blocked crossover or failed jet pump is usually addressed as part of pump module work.

Estimate your repair

Run the numbers for your vehicle

Open the Repair Cost Estimator with fuel level sensor / sending unit replacement preselected. Adjust labor rate and vehicle category to fit your situation.

DIY vs shop

This is an intermediate DIY job. It usually involves diagnostic steps, specialty parts, and some careful work in tight spaces. If you have the tools and a service manual or trustworthy video for your specific vehicle, it is achievable in a weekend. Otherwise, a competent independent shop will be faster.

Related codes

Frequently asked questions

Can I keep driving with P2069?

Yes. The engine is not affected and the signal is correct most of the time. The practical caution is that the calculated fuel total depends on this input, so treat the distance-to-empty with a little suspicion and refuel before the last quarter until it is resolved. If the vehicle has also started stumbling on hills with fuel showing, that is a different matter and should be looked at promptly.

Is it worth clearing the code and seeing if it comes back?

On this code, yes — and that is unusual. The fault is defined by being absent most of the time, so there is nothing to measure while it is gone. Clear it, then pay attention to the fuel level, the road and the temperature when it returns. A code that reappears at a quarter tank on the same slip road every time has told you more than a workshop test ever would.

Could this just be fuel sloshing?

Often, yes, and it is the first thing to rule out. The secondary sender lives in the shallower, less baffled compartment, so on a low tank a gradient or a long corner genuinely moves fuel off the float. The way to tell is the shape of the event in logged data: real fuel movement slides through intermediate readings over a second or two and follows what the vehicle was doing, while an electrical dropout jumps straight to a limit and straight back with nothing in between.

Why does the gauge look normal when the code is stored?

Because the reading that reaches the needle is not the reading the module is judging. The signal is heavily processed before it becomes a gauge position, and a brief event is smoothed out long before it reaches the dashboard. The module is watching the raw value, which is why it can object to something the driver never sees. A stored code with a normal-looking gauge is consistent, not contradictory.

Editorial context

About This Diagnostic Information

AutoLogicTools diagnostic guides explain OBD-II trouble codes using recognized code definitions, standard automotive diagnostic principles, and practical automotive context. A trouble code records a condition detected by a control module. It does not automatically identify a failed part, and the right diagnostic procedure can vary by vehicle.

Manufacturer service information, technical service bulletins, wiring diagrams, and vehicle-specific procedures should take precedence when available.

AutoLogicTools was founded by Vincent Fisk, an automotive locksmith and shop owner in San Diego with hands-on experience in vehicle keys, immobilizer systems, electrical issues, modules, programming, and diagnostics.