Skip to content

Methodology

How our calculations work

Every number we show is either arithmetic on what you entered, a figure from a named source with its date, or an estimate whose formula is below. We say which.

Last updated October 31, 2026 · Edited by Carlos Gil, publisher

Three kinds of numbers

  • From your numbers: your price per kWh, kWh per day, appliance costs. Exact arithmetic on your inputs.
  • Published figures: statewide averages (EIA), utility rates (FPL, JEA), program amounts. Shown with the source and the period they cover, and labelled as context, never as your own numbers.
  • Estimates: anything that depends on an assumption you choose, such as hours of use or expected savings. Labelled "Estimate".

Example values in calculators are labelled "Example values" until you change them.

Price per kWh

All-in average = this period's electric charges ÷ kWh. Example: $250 ÷ 1,500 kWh = $0.1667/kWh (16.67¢). Per-kWh (marginal) rate = the charges priced per kWh ÷ kWh. We use the marginal rate to value a kWh saved, because fixed monthly charges don't fall when you use less. Percentage-based taxes do scale, so actual savings can be slightly higher than the rate alone suggests.

Appliance running cost

kWh = watts ÷ 1,000 × hours on per day × share of time at full power × days × units. Cost = kWh × price per kWh. Example: 1,500 W × 4 hours a day × 30 days = 180 kWh; at $0.18/kWh that's $32.40. Label wattage is a maximum, and appliances with thermostats or compressors cycle, so we ask for the share of time at full power, or for measured average watts from a plug-in meter.

Upgrade payback

Net upfront cost = installed cost − confirmed upfront incentives. Simple payback = net cost ÷ (annual savings − added upkeep), shown only when that's positive. Example: $300 ÷ $100 a year = 3 years. We don't include financing, inflation, future price changes, unconfirmed incentives or tax credits, or equipment life, and we say so next to every result.

Bill comparison

Each bill is modelled as B = q × r + F, where q is kWh, r is the price per kWh and F is everything that doesn't scale with kWh (fixed charges, most taxes, credits). With the per-kWh lines from both bills, r = per-kWh charges ÷ q and F = total − per-kWh charges. Without them, r is the all-in average and F = 0, and we say the price part then includes fixed-charge changes.

  • Usage effect = (q₁ − q₀) × r₀
  • Price effect = q₁ × (r₁ − r₀)
  • Other-charge effect = F₁ − F₀

These sum exactly to B₁ − B₀ (we test that the difference is zero apart from floating-point rounding). The usage effect is split into a billing-days part, r₀ × (d₁ − d₀) × u₀, and a daily-use part, r₀ × d₁ × (u₁ − u₀), where u = kWh per day. Those two add up to the usage effect, so billing days are never counted on top of it.

This is one valid convention. Valuing the usage change at the later price instead would shift some dollars between usage and price without changing the total.

Supported rates, and what we don't model

  • Supported exactly: one price per kWh with separately itemized fixed charges.
  • Tiered rates (FPL and JEA charge more above 1,000 kWh): the utility estimators on the FPL and JEA pages model the tiers before taxes; our FPL model reproduces FPL's own published 1,000 kWh example to the cent. In the bill comparison, a tiered bill's price effect also includes how much usage fell into the higher tier, and the tool says so.
  • Time-of-use, demand charges and solar net metering: not modelled. The comparison still reconciles, but it flags that the split can't separate timing, peak demand or solar exports, and names the data that would be needed.
  • Weather and occupancy: possible explanations only. Two bills can't prove that weather or a specific appliance caused a change.

The bill check

The bill check computes only what your answers support: price per kWh (when the amount is electricity-only and kWh is known), use per day, and labelled comparisons with EIA averages. When a number is missing, it tells you where to find it instead of filling in an average. Suggestions are framed as possibilities to check. The plan lists actions in order of information, free, low-cost and project, and never adds savings estimates together, because many actions overlap.

Uploaded bills

An AI model reads the values printed on the bill: dates, kWh, electric charges, line items and the amount due. It's instructed to return nothing it can't read and never to estimate. Our code then validates every value, separates electric charges from past balances and other services, flags inconsistencies and low-confidence readings, and asks you to review and correct the values before calculating. The model doesn't produce any savings figure.

Testing

The formulas above are covered by automated tests, including the worked examples on this page, invalid and out-of-range inputs, unequal billing periods, unsupported rate types, and FPL's and JEA's published rate examples. Bill reading is tested with synthetic bills; those tests check our validation, not the AI provider's accuracy.

Found a mistake in a formula or a number? Tell us at the address on the About page and we'll correct it.