Skip to content

How We Calculate Your Numbers

Grid Getter shows you two different kinds of number, and it’s worth knowing which one you’re looking at.

Measured figures come from your own Powerwall history. Your report, the monthly savings report, and the demand target we fill in for you are all measured: real readings from your battery, priced against the rates on your account.

Estimated figures are modeled. The savings range on the iOS and Android plan step is the main one. It starts from your plan and your battery, then applies assumptions about how a battery like yours typically behaves.

Neither one is your bill. This page explains how each is put together, what we assume when the data doesn’t tell us, and where the two can part company with what your utility charges you.


Your report reads the trailing 30 days ending today. Tesla serves that history in buckets, usually 15 or 30 minutes wide depending on the site, and every bucket gets priced at the rate in force at that moment.

Two things get dropped before anything is counted:

  • Buckets your rate plan can’t price. If a timestamp doesn’t land inside any season or period your tariff defines, we drop it rather than treating it as off-peak. “We couldn’t price this hour” isn’t the same as “this hour was cheap.”
  • Buckets Tesla reported nothing for. On the demand report, an hour with no grid reading is a hole, not a measured zero, so it doesn’t draw a bar on your chart or widen the window we claim to have read.

How much history you have decides what the report can say:

Days of usable dataWhat you see
28 or moreThe full report
3 to 27The same report, marked as partial, filling in as days come in
Under 3No measurement yet; the step says so rather than showing a thin sliver

The interval count printed under your report (“reading 2,880 intervals at 30 minutes”) is counted after the 30-day trim, so it describes the window you’re actually being shown.


Every report ends in the same three: what the window cost you, what it would have cost with the battery run differently, and the gap between them. What sits behind them depends on which question you answered.

Demand. We find your single worst interval of grid draw inside your plan’s on-peak windows. Then we work out the lowest cap your battery could have held across the whole event. Shaving the top off a single interval instead gives a number two or three times too flattering. Because demand charges bill the worst moment of the cycle, the floor is the hardest day’s cap, not the peak day’s.

Time-of-use. Each day’s cheapest rate sets the bar; every kilowatt-hour you bought above it is expensive. We fill those hours from the battery, dearest first, until the day’s energy budget runs out, and charge the round-trip loss at the cheap rate. A day where the rates sit closer together than the round trip costs to cross is dropped from both columns rather than counted as a saving.

Solar. We look for solar you exported and bought back on the same day. What the battery could have kept is bounded three ways: you can’t keep more than you sold, you can’t avoid buying back more than you bought, and you can’t store more than the pack holds. We take the smallest of the three. Keeping it isn’t free either: you give up the export credit, and the conversion loss still has to be bought at retail.


Some of what the arithmetic needs isn’t in the data, so we assume it. All of it is listed here.

Your battery holds 13.5 kWh per Powerwall. That’s the usable figure for a Powerwall 2, multiplied by the pack count Tesla reports for your site. A different pack size will make the floor slightly wrong in one direction or the other.

Your backup reserve comes off the top. The energy budget behind the floor is everything above the reserve you keep. Hold more back for outages and the lowest peak your battery can defend goes up, which is exactly why the demand target is phrased against your current reserve. One wrinkle: we apply today’s reserve to a historical charge level, so if you changed it partway through the month, the floor is a little off.

Round-trip efficiency is measured, within reason. Storing power and taking it back out loses some of it. We work your battery’s own ratio out over the same 30 days rather than taking Tesla’s datasheet number, but we only believe it between 80% and 98%. Outside that band it isn’t an efficiency measurement at all; usually it means the battery ended the window much fuller or emptier than it started. Then we fall back to 90% and say so in the fine print, rather than printing a confident-looking artifact.

Time-of-use and solar assume a full pack into every expensive window. That’s what a peak-time schedule actually delivers, and it’s why a high reserve shrinks the figure. The demand report makes no such assumption. It works from how full your battery actually was at your worst interval.

Expensive hours are decided by rate, not by name. We never look for a period called “on-peak.” The day’s own cheapest rate sets the bar, so partial-peak and super-peak tiers price correctly, and a genuinely flat plan reports an honest zero instead of an invented window.

Demand rates are priced in blocks, matched by date. A tiered schedule (first 3 kW at one rate, the next 7 at another) is charged block by block in order. The season comes from where your peak falls in the calendar, never from a season’s name. Utilities and our own registry label the same season differently often enough that matching on names misprices real bills.

A zero rate on your Tesla account isn’t taken at face value. If Tesla reports no demand rate but your plan is one we recognize with high confidence, we price against our copy of that plan’s rate and tell you we did.

Anything under a dollar a month is zero. A 34-cent gap is a real measurement and a bad argument, so the report treats it as nothing found rather than rounding it into a headline.


Your report and your savings report are both counterfactuals: what the same 30 days would have cost with the battery run differently. That’s a useful number for deciding what to do next. It is not a promise or a quote. Here’s where it parts company with your bill.

  • Your utility measures peaks on its own clock. We average over the buckets Tesla gives us, usually 15 or 30 minutes. If your utility bills on a different interval, its peak and ours won’t be the same number; a peak averaged over 30 minutes is always lower than the same peak averaged over 15.
  • Only the parts a battery can move are counted. No taxes, fixed monthly charges, riders, minimum bills, or consumption tiers. Your bill has all of those and a battery doesn’t touch most of them.
  • The floor is a best case, measured backwards. It’s what your battery could have done over days that already happened, with perfect timing and hindsight. A real automation runs forward, against weather and usage nobody has seen yet, so it will land above the floor rather than on it.
  • History starts when you connect. Anything before that date isn’t in the system, so an early report covers less than the Tesla app shows for the same period.
  • A partial window is labeled rather than scaled up. Eleven days of data stays eleven days of data; we don’t extrapolate it into a month.

Before your measured report is available, the iOS and Android plan step shows a savings range instead. This one is modeled, and the app lists its assumptions under the figure.

The energy half:

  • If we have at least 14 days of your Powerwall history, we use your own average daily discharge. Below that, we fall back to your battery’s capacity and assume it cycles 60% to 85% of it a day.
  • We then assume 60% to 90% of that output displaces peak-priced power, at the spread between your plan’s peak and off-peak rates, over a 30.4-day month.

The demand half, on plans that have a demand charge, assumes DemandGuard brings a typical 6 kW peak down to a 2 kW target, a 2 to 4 kW reduction priced at your plan’s demand rate.

The total is then capped at a deliberately implausible upper bound, so an odd rate or a bad reading can’t produce a headline nobody should believe.

The peer benchmark shown beside it isn’t modeled at all. It’s the 25th to 75th percentile of real monthly savings reports from other Grid Getter customers over the last three settled months, matched to your plan where we have enough sites on it, then to customers with demand charges or without, then to everyone. A cohort needs at least five sites before we’ll quote it.


The second report compares your last seven days against the thirty-day window your first report was built on. Three rules keep that comparison honest:

  • It needs five usable days before it will say anything. Two days isn’t a week, and a claim built on one looks identical to a claim built on seven until someone checks.
  • The baseline is frozen at the moment you were shown it, priced with the rates as they stood then. Correct a rate later and your first report doesn’t quietly re-price underneath you.
  • A demand comparison is refused outright if Tesla served the two windows at different bucket widths, because the difference in width alone would look like a real change.

On the free plan there’s no automation running yet to compare against, so the follow-up re-measures the same gap over seven days instead. It’s a fresher read, not a before-and-after, and the copy says so.