Solar generation estimator
How much electricity an array would produce at your location, how much of your usage that covers, and what it is worth against the average commercial rate in your state.
Estimate your production
Change any input. Every figure updates as you type.
How this is calculated
The whole method, so you can check it rather than trust it.
annual kWh = system kW x peak sun hours per day x 365 x derateSystem size in kW
The nameplate DC rating of the array. If you only know the available roof area, we convert at roughly 70 square feet per kilowatt, which reflects current commercial panel efficiency.
Peak sun hours
Not hours of daylight. It is the number of hours per day at full reference intensity that would deliver the same total energy. We default to a typical annual average for your state.
Derate factor
The fraction of nameplate DC output that reaches the meter as AC across a year, after inverter conversion, heat, soiling, wiring and mismatch losses. We default to 0.80.
Value of production
Production multiplied by your state's average commercial rate. That rate is itself derived from EIA data, so treat the dollar figure as indicative of scale rather than a quotation.
What this estimate cannot see: your roof pitch and orientation, shading from adjacent buildings or trees, snow cover, local microclimate, and how much of your generation you consume on site rather than export. Each of those can move the result by a large margin. Before committing capital, run a site-specific model such as NREL PVWatts and get quotes that state expected production contractually.
Solar resource by state
Typical annual-average peak sun hours per day, best resource first, alongside what a kilowatt-hour is worth there.
| # | State | Peak sun hours / day | kWh/yr per kW installed | Avg. commercial rate | Value per kW per year |
|---|---|---|---|---|---|
| 1 | Arizona AZ | 6.5 | 1,898 | 15.61¢ | $296 |
| 2 | New Mexico NM | 6.4 | 1,869 | 10.91¢ | $204 |
| 3 | Nevada NV | 6.3 | 1,840 | 10.88¢ | $200 |
| 4 | California CA | 5.8 | 1,694 | 31.25¢ | $529 |
| 5 | Hawaii HI | 5.7 | 1,664 | 39.13¢ | $651 |
| 6 | Utah UT | 5.5 | 1,606 | 9.23¢ | $148 |
| 7 | Colorado CO | 5.5 | 1,606 | 11.87¢ | $191 |
| 8 | Texas TX | 5.4 | 1,577 | 9.55¢ | $151 |
| 9 | Wyoming WY | 5.3 | 1,548 | 11.00¢ | $170 |
| 10 | Florida FL | 5.3 | 1,548 | 11.25¢ | $174 |
| 11 | Oklahoma OK | 5.2 | 1,518 | 8.38¢ | $127 |
| 12 | Kansas KS | 5.1 | 1,489 | 11.05¢ | $164 |
| 13 | South Dakota SD | 5.0 | 1,460 | 11.26¢ | $164 |
| 14 | Georgia GA | 5.0 | 1,460 | 11.65¢ | $170 |
| 15 | South Carolina SC | 5.0 | 1,460 | 11.07¢ | $162 |
| 16 | Nebraska NE | 4.9 | 1,431 | 9.19¢ | $131 |
| 17 | Idaho ID | 4.9 | 1,431 | 9.51¢ | $136 |
| 18 | Arkansas AR | 4.9 | 1,431 | 9.94¢ | $142 |
| 19 | Louisiana LA | 4.9 | 1,431 | 10.60¢ | $152 |
| 20 | Mississippi MS | 4.9 | 1,431 | 12.06¢ | $173 |
| 21 | Alabama AL | 4.9 | 1,431 | 14.84¢ | $212 |
| 22 | North Carolina NC | 4.8 | 1,402 | 10.57¢ | $148 |
| 23 | North Dakota ND | 4.8 | 1,402 | 7.56¢ | $106 |
| 24 | Missouri MO | 4.8 | 1,402 | 10.14¢ | $142 |
| 25 | Montana MT | 4.7 | 1,372 | 13.30¢ | $183 |
| 26 | Iowa IA | 4.6 | 1,343 | 10.72¢ | $144 |
| 27 | Tennessee TN | 4.6 | 1,343 | 18.01¢ | $242 |
| 28 | Virginia VA | 4.6 | 1,343 | 9.65¢ | $130 |
| 29 | Minnesota MN | 4.5 | 1,314 | 12.78¢ | $168 |
| 30 | Illinois IL | 4.5 | 1,314 | 12.43¢ | $163 |
| 31 | Maryland MD | 4.5 | 1,314 | 15.74¢ | $207 |
| 32 | Delaware DE | 4.5 | 1,314 | 16.54¢ | $217 |
| 33 | District of Columbia DC | 4.5 | 1,314 | 19.98¢ | $262 |
| 34 | Kentucky KY | 4.4 | 1,285 | 11.64¢ | $150 |
| 35 | New Jersey NJ | 4.4 | 1,285 | 15.85¢ | $204 |
| 36 | Rhode Island RI | 4.4 | 1,285 | 23.17¢ | $298 |
| 37 | Wisconsin WI | 4.3 | 1,256 | 12.86¢ | $161 |
| 38 | Indiana IN | 4.3 | 1,256 | 12.73¢ | $160 |
| 39 | Connecticut CT | 4.3 | 1,256 | 23.00¢ | $289 |
| 40 | Massachusetts MA | 4.3 | 1,256 | 24.96¢ | $313 |
| 41 | West Virginia WV | 4.2 | 1,226 | 11.59¢ | $142 |
| 42 | Pennsylvania PA | 4.2 | 1,226 | 13.31¢ | $163 |
| 43 | Maine ME | 4.2 | 1,226 | 21.39¢ | $262 |
| 44 | Michigan MI | 4.1 | 1,197 | 14.64¢ | $175 |
| 45 | Ohio OH | 4.1 | 1,197 | 16.09¢ | $193 |
| 46 | New Hampshire NH | 4.1 | 1,197 | 20.24¢ | $242 |
| 47 | New York NY | 4.0 | 1,168 | 20.64¢ | $241 |
| 48 | Vermont VT | 4.0 | 1,168 | 19.25¢ | $225 |
| 49 | Oregon OR | 4.0 | 1,168 | 12.58¢ | $147 |
| 50 | Washington WA | 3.6 | 1,051 | 13.22¢ | $139 |
| 51 | Alaska AK | 3.0 | 876 | 22.25¢ | $195 |
Peak sun hours are typical annual averages at state granularity and vary within a state with latitude, elevation and climate. Production per kW assumes a 0.80 derate. Value per kW multiplies that production by the state average commercial rate, which is itself derived from EIA data — so read the dollar column as scale, not as a quotation.
Questions about these estimates
Why does my installer quote a different number?
An installer models your specific roof: its pitch, its azimuth, the shading around it, and the exact equipment proposed. This page models a generic array in your state. If the two disagree, the site-specific model is the one to believe — but a very large gap in the installer's favour is worth questioning.
Is producing 100% of my usage the goal?
Usually not for a business. What matters is how much you consume on site as you generate it, because exported energy is often credited well below the retail rate. An array sized to your daytime load frequently returns more than a larger one sized to your annual total.
Does this account for panel degradation?
No. This is first-year production. Panels typically lose a fraction of a percent of output per year, so a twenty-year model should step production down gradually rather than hold it flat.
Why is the value based on a state average?
Because it is the rate we can source and show you. Your own all-in rate is the correct input, and if you know it you should use it — solar offsets what you actually pay, not what your state averages.
Lower the rate before you size the array
Solar offsets the rate you pay. Shopping that rate first changes every number on this page.
See rates by state