Finding: Tesla’s Energy tab is not a trustworthy measurement surface under mixed regen and heat load.

  • Signed rate showed −261.1 Wh/mi.
  • Same window printed Consumed 2.6 kWh over the last 10 miles.
  • Correct signed total is about −2.6 kWh (recovered), not consumed.
  • Separately, hot Texas driving at 100°F+ makes optimistic range estimates a navigation hazard.

This is not a vibe post about “the UI feels weird.” It is a concrete analysis of one Energy-tab failure mode, why it matters for trip safety, and what a better Energy screen + range algorithm should do.

1. Evidence

Context A — mountain regen window: crossing Monarch Pass, elevation loss produced strong regeneration. Projected range ballooned to 999+ mi.

Context B — hot-road range trust: Texas driving in temps in excess of 100°F, where cabin cooling and battery thermal management dominate consumption and projected range drifts from actual remaining range enough to break navigation trust.

Annotated Tesla Energy panel highlighting negative Wh/mi and incorrect Consumed 2.6 kWh line
Enhanced, annotated Energy panel. Green: signed rate is negative. Red: 10-mile total still says Consumed +2.6 kWh.

Displayed rate

−261.1 Wh/mi

536.2 Wh/mi less than Rated

Displayed 10-mi total

Consumed 2.6 kWh

Wrong sign + wrong verb

Correct 10-mi total

−2.6 kWh

Recovered / net energy in

Projected range

999+ mi

Not an actionable nav quantity

2. Defect analysis

CheckResultWhy it matters
Unit consistency Rate in Wh/mi, total in kWh Fine if conversion is correct
Sign consistency FAIL Rate negative, total presented positive
Language consistency FAIL “Consumed” for a recovery window
Arithmetic check −261.1 × 10 = −2611 Wh ≈ −2.6 kWh Magnitude matches; side of zero does not
Likely code smell abs(integral) or non-negative template Classic display-layer footgun
Safety impact Medium alone / High with nav coupling Teaches drivers to distrust energy UX, then over-trust green range elsewhere

Security / reliability frame: treat Energy UX as a safety surface, not cosmetics. Drivers use these numbers to decide whether a mountain descent is “free,” whether heat is killing range, and whether the next charger is reachable. A UI that flips signs is an integrity bug.

# What the UI appears to do
rate = mean_wh_per_mi_last_10   # correctly signed, e.g. -261.1
total_kwh = abs(rate * 10) / 1000
label = f"Consumed {total_kwh:.1f} kWh over the last 10 miles"

# What it should do
energy_kwh = (rate * 10) / 1000  # keep the sign
if energy_kwh >= 0:
    label = f"Used {energy_kwh:.1f} kWh over the last 10 miles"
else:
    label = f"Recovered {abs(energy_kwh):.1f} kWh over the last 10 miles"
# always also expose: Net {energy_kwh:+.1f} kWh

3. Why range estimates strand people

The sign bug is the easy defect. The harder one is range as a false fuel gauge.

In Texas heat above 100°F, real consumption is dominated by:

When projected range is optimistic, navigation plans become fiction: the car “thinks” you can skip a charger, then the estimate collapses late. That is how people get stranded — not because physics is unknowable, but because the UI sells a single confident number instead of a condition-aware band.

Condition

100°F+

Texas heat, A/C + thermal load

What breaks

Nav trust

Projected range treated as fuel

Failure mode

Stranding

Optimistic plan, late collapse

Needed output

Range band

Conservative bound for routing

4. Recommended Energy screen layout

Recommended Tesla Energy screen layout with signed totals and condition-aware range
Recommended layout: NOW column with signed power/rate/window energy; RANGE panel with conservative/median/optimistic band and visible adjustments; NAV contract rules at the bottom.

Layout rules:

  1. NOW column: net power (kW), signed Wh/mi, signed 1/5/10/50 mi energy totals.
  2. Verb grammar: Used / Recovered / Net — never “Consumed” for negative windows.
  3. Sparkline through zero: green below zero (regen), amber/red above (draw).
  4. Condition chips: elevation, cabin A/C, speed, hot day — always visible when active.
  5. Confidence chip: LOW / MED / HIGH. If not HIGH, nav must not use optimistic numbers.
  6. RANGE panel: primary number = conservative nav range; secondary = median/optimistic; always show band.
  7. Adjustment list: climate, thermal, grade, speed/wind, closed-loop bias — each with signed mile impact.
  8. No 999+ as actionable fuel: fantasy projections stay diagnostic, never route inputs.

5. Range algorithm improvements

Recommended range algorithm pipeline from signed measurement to closed-loop navigation
Recommended pipeline: measure signed energy → context features → physics model → uncertainty → conservative outputs → closed-loop bias update.
StageDo thisDo not do this
Measure Keep signed Wh integrals for 1/5/10/50 mi abs() before display or logging
Context Cabin setpoint, outside temp, pack temp, grade path, speed, wind Flat “average consumption” only
Model Split rolling / aero / HVAC / thermal / regen capture One blended Wh/mi forever
Uncertainty Produce P10 / P50 / P90 style band Single fake-precise mile count
Navigation Route on conservative bound when conf < HIGH or temp ≥ 100°F Route on optimistic or 999+
Closed loop Each trip: predicted vs actual Wh; update bias Forget error after arrival
Mountain logic Credit descent recovery; reserve energy for next climb Let descent alone print 999+ as trip truth
Heat logic HVAC + thermal as first-class terms Treat summer desert like a dyno cell

Concrete algorithm contract for nav:

nav_range_mi = conservative_range(
    route_grade_profile,
    speed_plan,
    cabin_load,
    pack_thermal_state,
    ambient_temp,
    recent_prediction_bias,
)

if ambient_temp_f >= 100 or confidence < HIGH:
    route_using(nav_range_mi)          # P10 / conservative only
    show_arrival_soc_band = True
    allow_skip_charger = False
else:
    route_using(nav_range_mi)
    show_median_optional = True

6. Priority fix list (ship order)

  1. P0 — Sign integrity: stop absolute-valuing window energy; fix Used/Recovered labels.
  2. P0 — Shared quantity: Energy tab, trip cards, and nav planner must read the same signed energy model.
  3. P0 — Nav conservative mode: under heat or low confidence, route on the low bound only.
  4. P1 — Range band UI: replace single-point range with conservative/median/optimistic + confidence.
  5. P1 — Adjustment transparency: show mile impacts for climate, thermal, grade, speed.
  6. P1 — Closed-loop bias: learn predicted vs actual Wh every trip.
  7. P2 — Cap fantasy projections: 999+ can exist as a diagnostic artifact, never as a trip plan input.
  8. P2 — Arrival SoC band: “12–21% at charger” beats “17%” false precision.

7. Photo provenance

Cleaned crop of Tesla Energy panel
Cleaned Energy-panel crop after contrast/sharpen/autocontrast pass.
Cleaned full Tesla center display showing Energy tab
Wider cleaned frame of the center display. Dust/glare reduced; content preserved.
Also on screenReadout
Current Drive289.4 Wh/mi · 8.2 kWh · 28.3 mi · 33 min
Since Charge285.4 Wh/mi · 8.2 kWh · 28.3 mi · 33 min
Trip A271.6 Wh/mi · 3,617 kWh · 13,317 mi
Trip B305.7 Wh/mi · 452.6 kWh · 1,481 mi · 1 day

Caveats: screenshot software version not captured. Monarch Pass explains the signed regen moment. Texas 100°F+ experience is the separate range-estimate / navigation-risk context. This is phone-photo evidence plus engineering analysis, not a CAN-bus lab capture.

Bottom line

−261.1 Wh/mi × 10 mi is −2.6 kWh, not “Consumed 2.6 kWh.”

Fix the sign. Fix the verb. Then stop letting optimistic range theater drive navigation in heat and mountains. Energy UX is a safety surface — design it like one.