How we calculate
Every number on a result comes from the steps below. Where we assume something, we say so, and you can change it on the result page.
1. Where you are
A street address goes to the US Census Geocoder, which returns coordinates and the state. We don't store or log the address. A 5-digit ZIP uses the centre of its Census ZIP Code Tabulation Area (ZCTA) from a copy bundled with this site. ZCTAs approximate ZIP codes but don't match them exactly, and 139 of them cross a state line; for those we ask which state you're in. A city name on its own is too broad, so we ask for a ZIP or street.
Coordinates are rounded to two decimal places (about 1 km) before anything else happens. That rounded point is all the result page and its shareable link ever contain.
2. What the panels make, hour by hour
We ask NLR PVWatts v8 (formerly NREL) for an hourly simulation of a typical year at your point: 8,760 hours of weather from the National Solar Radiation Database. The kit is modelled as a fixed, open-rack array of standard modules, at the direction and tilt you chose (a railing mount is 90°), with PVWatts' default system losses of 14%. For a shaded balcony, raise losses to 25% or more under "Advanced".
The "go smaller / go bigger" comparison scales the same hourly series by kit size. PVWatts output is close to linear in panel wattage, so this saves a second lookup without changing the answer meaningfully.
3. The inverter limit
Every hour's output is clipped at the inverter's AC limit. The default is 800 W, or the kit's panel size if it's larger, and never above your state's size cap where the law sets one and we've checked it (1,200 W in most states with a law, 1,920 W in Colorado). You can change the limit, but not above the state cap.
4. How much you actually use
A plug-in kit only saves money on electricity your home uses at the moment the panels make it. Without a meter file, we assume a constant always-on load (fridge, router, standby devices) of 150 W. This is an assumption: change it on the result. Each hour, what you use is the smaller of the kit's output and that load; the rest goes to the grid.
If you add a Green Button file from your utility (CSV or XML, 15-minute, 30-minute or hourly readings), your own hour-by-hour use replaces the flat load. The file is read in your browser and never uploaded; only the hourly solar output comes from our server. We line your readings up with the simulated year by month, day and hour, converting clock time to standard time around daylight saving changes. A day missing from a month you covered uses that month's average for each hour; a month your file doesn't cover uses the average of the months it does, and the result says so. The overnight "always-on" figure we show is the 10th percentile of your midnight-to-5 am hourly use.
5. Your electricity rate
We look up your utility's residential tariffs in the OpenEI Utility Rate Database (public domain). A lookup often returns tariffs from several states and years, so we keep only approved, current residential tariffs for your state, skip special riders (EV, time-of-use pilots, three-phase and similar), and prefer the utility's default tariff.
We turn that tariff into one average price per kWh: tiers are averaged over a typical 900 kWh month, time-of-use periods are weighted by how many hours of the year they cover, and fixed monthly charges are left out because a balcony kit doesn't reduce them. If there's no usable tariff, or the result is below 5¢ or above 80¢, we use your state's average residential price over the last 12 months from the EIA instead (2025-08 to 2026-07 in our fallback copy). The result always shows which one we used, and you can type in the number from your bill.
6. Power sent to the grid
Plug-in kits usually earn nothing for exported power: most of the new state laws exclude them from net metering. So the export rate defaults to 0¢. You can set it higher if your utility pays, or below zero: Connecticut's law requires a warning that exported power can be billed to you as usage on a meter without net metering.
7. Savings and payback
Yearly savings = kWh used at home × your rate + kWh exported × the export rate.
Payback = kit price ÷ yearly savings. We don't know what your kit costs, so until you enter a price we show a range for kits costing $500–$1,500 (the typical range EnergySage gives). Paybacks longer than 25 years show as "more than 25 years", and zero or negative savings as "never".
We round kWh to the nearest 10, dollars to the dollar and years to one decimal. Nothing is rounded up to look better.
8. The battery estimate
"Add a battery" is a simple model, and labelled as an estimate: each hour's surplus charges a 1.6 kWh battery with 90% round-trip efficiency, and whenever your load exceeds the panels' output the battery covers the gap, within the inverter limit, carrying its charge from day to day.
9. The sunny-day chart
The chart shows one June day from the simulation: the day at the 80th percentile of June output, so sunny but not the single best day. Times are clock time (daylight saving time, except in Arizona and Hawaii).
10. State law
Law status comes from our own table, checked against statutes and official state pages (last checked 28 Sep 2026). A detail we haven't read in the statute itself shows as "Not verified yet". A signed law that hasn't taken effect yet is shown as signed, with its date. Every law card links to its source. This is general information, not legal advice.
What we don't model
- Shade from walls, balconies above or trees, beyond what you add to losses.
- Panel ageing and future rate changes.
- Time-of-use value: we use an average rate, not the rate at the hour the sun shines.
- Taxes, incentives, installation or electrician costs.