Solar Panel Output Calculator (Monthly and Annual kWh from System Size, Peak Sun Hours, Direction and Tilt)
Enter the system size (kW) and choose a city preset (or type in the solar radiation) to see the monthly and yearly output. Choosing the roof direction and tilt fills in the correction factor.
Table of Contents
-
What you can do on this page
-
What is this calculation used for?
-
How to Use
-
Formula
-
Symbols and terms
-
Good to know before you start
-
How to calculate it in Excel
-
How to calculate it in Google Sheets
-
How to calculate it in Python
-
How to write it in LaTeX and other math languages (copy and paste)
-
How to have ChatGPT do the calculation
-
DataChef Features
-
Related Features
-
NumberChef Calculators List
What you can do on this page
- Enter the system size (kW) and the solar radiation for your area, and you get the monthly and yearly output (kWh), the yearly output per kW, and the monthly and daily averages on the spot
- Choose a simple mode with one yearly average, or a monthly mode with values for January to December. Presets fill in typical values for Seattle, Los Angeles, Phoenix, Denver, Dallas, Chicago, Atlanta, Miami and New York
- Pick the roof direction (south, southeast/southwest, east/west) and tilt (0 to 40°), and a correction factor relative to due south at 30° (= 100%) is filled in for you. You can change the number freely
- The performance ratio (one factor for inverter, heat, dirt and wiring losses) starts at 0.73 and can be changed. A bar chart of the monthly output is also shown
- A plain-language explanation of the formulas and copy-and-paste formulas for Excel, Google Sheets and Python are all on this page
What is this calculation used for?
A solar quote or proposal shows an "estimated yearly production" in kWh. Enter the same system size and your area's solar radiation here and calculate it yourself. You can see whether the number comes from standard assumptions (solar radiation and losses) or from quite optimistic ones.
As a guide, the yearly output per kW for due south at 30° is about 1,100 kWh in Seattle and about 1,800 kWh in Phoenix. If a quote in Chicago shows 2,000 kWh per kW, ask about the solar radiation and loss figures; if a quote in Phoenix shows 1,000 kWh per kW, ask about shade or direction. Output changes with weather and shade, so the result is only what the system makes under the conditions you entered.
Splitting panels between the east and west sides of a gable roof, or putting them on a southeast roof, is common. The table of correction factors shows that east or west (30° tilt) still gets about 85% of due south, and southeast or southwest about 96%.
Before deciding that solar will not work because the roof does not face south, calculate the output with the real direction and tilt. Then you can compare with numbers whether to add more panels to make up the difference or to use another side of the roof.
The monthly mode shows the yearly pattern: more output from spring to late summer and less in the short days of winter (and even less where snow covers the panels). With the Atlanta values, May makes about 60% more than December, and in cloudy-winter Seattle, August makes more than four times as much as December.
Knowing this pattern helps you plan. For example, "summer afternoons can cover the air conditioning" or "in winter most of the electricity will come from the grid". If your utility has net metering, summer surplus credits may carry over to winter bills, depending on the rules. It is also a starting point when you think about the size of a home battery.
Add up 12 months of kWh from your electric bills (many utilities also show this online) to get your home's yearly use. The average US home uses about 10,800 kWh a year. A 7 kW system in Atlanta makes about 9,700 kWh a year, so by amount alone it covers about 90% of an average home's use.
But solar only produces during the day, and you still use electricity at night. How much this lowers your bill depends on how your utility credits the electricity you send to the grid (net metering, net billing and so on) and on fixed charges, so equal output and use does not always mean a zero bill.
If the output you see in the monitoring app after installation is lower than calculated, enter the actual solar radiation for that month into this formula. You can then tell whether the gap comes from the weather or from something else (shade, dirt, snow, a faulty device or panel aging).
For example, if May produced only half the calculated output, the weather alone is hard to blame. That is a sign to ask the installer about shade from trees or buildings, dirty panels or the condition of the inverter.
Formula
Symbols and terms
Symbols
| \(H_m\) | H sub m | The average daily solar radiation on the actual panel surface (its direction and tilt), in kWh/m²/day. \(H\) is the usual symbol for solar radiation: in solar energy, the energy per area (irradiation) is written \(H\) and the power per area (irradiance) is written \(G\). The small \(m\) stands for month and shows which month the value is for. |
| \(H_{m,0}\) | H sub m zero | The monthly solar radiation on a surface facing due south at 30° (the preset or public solar data). The small \(0\) means "the base value before correction". |
| \(f\) | f | The direction and tilt correction factor (%), compared with due south at 30° (= 100). From the first letter of "factor". |
| \(K\) | K | The performance ratio: one factor for the losses from heat, the inverter, dirt, wiring and so on. The default in this calculator is 0.73. The letter \(K\) is often used for a coefficient. |
| \(P\) | P | The system size: the total rated power of the solar panels, in kW. From the first letter of "power". |
| \(D_m\) | D sub m | The number of days in the month (31 for January, 28 for February). From the first letter of "days"; the small \(m\) stands for the month. |
| \(G_s\) | G sub s | The standard irradiance: the light intensity used in the test that sets a panel's rated power (Standard Test Conditions), fixed at 1 kW/m². \(G\) is the usual symbol for irradiance (from "global irradiance") and \(s\) stands for standard. |
| \(E_m\) | E sub m | The monthly output, in kWh. From the first letter of "energy"; the small \(m\) stands for the month. |
| \(E_{\mathrm{year}}\) | E sub year | The yearly output (kWh). In the monthly mode it is the sum of \(E_1\) through \(E_{12}\); in the simple mode it comes straight from the yearly average solar radiation. |
| \(H\) | H | The yearly average solar radiation on the panels (kWh/m²/day), used in the simple mode. It is the monthly \(H_m\) averaged over a year. |
Terms
| solar radiation | The amount of energy in sunlight that reaches the ground (or a roof). This calculator uses kWh per square meter per day (kWh/m²/day). It is larger in sunnier places and seasons. It is also called solar insolation. |
| plane-of-array radiation | The solar radiation on a tilted surface such as a roof, instead of on flat ground. Because the sun's height changes with the seasons, a surface facing south and tilted about 30° gets more sunlight over a year than a flat one. Weather data for "global horizontal" radiation is for a flat surface, so using it as is gives a lower output estimate. |
| kWh/m²/day | The unit of solar radiation - the energy (kWh) that reaches 1 m² of surface in one day. The same number can be read as "how many hours of strong 1 kW/m² sunlight per day" (peak sun hours). |
| peak sun hours | Solar radiation (kWh/m²/day) divided by the standard irradiance (1 kW/m²), in hours. It tells how many hours a day the panels work as if at full power. Multiply it by the system size (kW) to get the output for one day with no losses (kWh). In Japan this is called "equivalent sunshine hours". |
| system size | The total rated power of all the solar panels (kW), the basic number for the size of a solar system, as in "a 7 kW system". With 400 W panels, 18 panels make 7.2 kW. |
| rated power | The power (W) one panel makes under Standard Test Conditions (irradiance of 1 kW/m², panel temperature of 25°C (77°F) and so on). The "400 W" on a spec sheet is this value. On a real roof, heat and sunlight are different, so the panel runs below this most of the time. |
| Standard Test Conditions (STC) | The fixed conditions for measuring panel power: irradiance of 1 kW/m², panel temperature of 25°C (77°F) and a set type of light. \(G_s\) (1 kW/m²) in the formula is the irradiance under these conditions. |
| performance ratio | A factor that shows how much of the "ideal output" (from solar radiation and system size) a system really produces. It covers heat loss, inverter loss, dirt, wiring loss and so on. For homes it is about 0.7 to 0.8, and the default in this calculator is 0.73. It is also called the derate factor. |
| inverter | The device that changes the DC power from the panels into the AC power used in a home. A few percent is lost in this change, and that is one of the losses in the performance ratio. |
| azimuth | The compass direction the panels face. In the US, due south produces the most, east or west about 85% of that, and north much less. In this calculator, choosing a direction fills in the correction factor. |
| tilt angle | The angle of the panels. Flat is 0°. Many home roofs are about 20° to 30°. Roof pitch in the US is written as rise per 12 inches of run - 4/12 is about 18°, 6/12 about 27° and 8/12 about 34°. |
| yearly output per kW | The yearly output (kWh) divided by the system size (kW), in kWh/kW/yr. It lets you compare systems of different sizes and different places. In the US, due south at 30°, it is about 1,100 in Seattle to about 1,800 in Phoenix. It is also called specific yield. |
| degradation | The slow drop in panel output over the years, usually said to be about 0.5% a year. It is not in this calculator's formula. For long-term estimates, make the performance ratio a little smaller or apply a degradation rate separately. |
Good to know before you start
Here is what helps you use the calculation on this page with real understanding, not just by pressing the button.
If you get stuck, going back over these topics is the quickest way forward.
| Multiplying and dividing decimals (Grades 5–6) |
|
| Percents (Grades 6–7) |
|
| Units and combined units (Grades 5–8) |
|
| Power and energy (middle school physical science) |
|
| The sun's path and the seasons (elementary and middle school science) |
|
How to calculate it in Excel
| Solar radiation at due south, 30° (kWh/m²/day) | 5.0 |
| Direction and tilt factor (%) | 85 |
| Solar radiation on the panels (kWh/m²/day) | =B1*B2/100 |
| Solar radiation on the panels (kWh/m²/day) | 4.0 |
| Performance ratio K | 0.73 |
| System size (kW) | 7 |
| Days in the month | 31 |
| Standard irradiance (kW/m²) | 1 |
| Monthly output (kWh) | =B1*B2*B3*B4/B5 |
| Yearly average solar radiation (kWh/m²/day) | 5.2 |
| Performance ratio K | 0.73 |
| System size (kW) | 7 |
| Yearly output (kWh) | =B1*B2*B3*365 |
| Yearly output per kW (kWh/kW/yr) | =B4/B3 |
| Monthly average output (kWh/month) | =B4/12 |
| Daily average output (kWh/day) | =B4/365 |
| January solar radiation (kWh/m²/day) | 4.0 |
| February solar radiation (kWh/m²/day) | 4.5 |
| March solar radiation (kWh/m²/day) | 5.0 |
| April solar radiation (kWh/m²/day) | 5.9 |
| May solar radiation (kWh/m²/day) | 6.1 |
| June solar radiation (kWh/m²/day) | 5.8 |
| July solar radiation (kWh/m²/day) | 5.9 |
| August solar radiation (kWh/m²/day) | 5.8 |
| September solar radiation (kWh/m²/day) | 5.7 |
| October solar radiation (kWh/m²/day) | 5.4 |
| November solar radiation (kWh/m²/day) | 4.5 |
| December solar radiation (kWh/m²/day) | 3.8 |
| Performance ratio K | 0.73 |
| System size (kW) | 7 |
| January output (kWh) | =B1*$B$13*$B$14*31 |
| February output (kWh) | =B2*$B$13*$B$14*28 |
| March output (kWh) | =B3*$B$13*$B$14*31 |
| April output (kWh) | =B4*$B$13*$B$14*30 |
| May output (kWh) | =B5*$B$13*$B$14*31 |
| June output (kWh) | =B6*$B$13*$B$14*30 |
| July output (kWh) | =B7*$B$13*$B$14*31 |
| August output (kWh) | =B8*$B$13*$B$14*31 |
| September output (kWh) | =B9*$B$13*$B$14*30 |
| October output (kWh) | =B10*$B$13*$B$14*31 |
| November output (kWh) | =B11*$B$13*$B$14*30 |
| December output (kWh) | =B12*$B$13*$B$14*31 |
| Yearly output (kWh) | =SUM(B15:B26) |
| Yearly output per kW (kWh/kW/yr) | =B27/B14 |
The first table applies the east/west correction (85%) to 5.0 at due south and 30°, and B3 shows 4.25. The second table is the monthly output for 4.0, K = 0.73, 7 kW and 31 days, and B6 shows 633.64 (kWh).
The third table finds the yearly output from a yearly average of 5.2. B4 shows 9698.78 (about 9,699 kWh) and B5 shows 1385.54 (about 1,386 kWh per kW).
The fourth table uses the monthly values for Atlanta to find the output for each of the 12 months and adds them up. The yearly output in B27 is about 9,704 kWh, and B28 is about 1,386 kWh/kW/yr. The monthly formulas refer to B13 and B14 with fixed references such as "$B$13", so changing the factor and system size recalculates all 12 months at once.
How to calculate it in Google Sheets
| Solar radiation at due south, 30° (kWh/m²/day) | 5.0 |
| Direction and tilt factor (%) | 85 |
| Solar radiation on the panels (kWh/m²/day) | =B1*B2/100 |
| Solar radiation on the panels (kWh/m²/day) | 4.0 |
| Performance ratio K | 0.73 |
| System size (kW) | 7 |
| Days in the month | 31 |
| Standard irradiance (kW/m²) | 1 |
| Monthly output (kWh) | =B1*B2*B3*B4/B5 |
| Yearly average solar radiation (kWh/m²/day) | 5.2 |
| Performance ratio K | 0.73 |
| System size (kW) | 7 |
| Yearly output (kWh) | =B1*B2*B3*365 |
| Yearly output per kW (kWh/kW/yr) | =B4/B3 |
| Monthly average output (kWh/month) | =B4/12 |
| Daily average output (kWh/day) | =B4/365 |
| January solar radiation (kWh/m²/day) | 4.0 |
| February solar radiation (kWh/m²/day) | 4.5 |
| March solar radiation (kWh/m²/day) | 5.0 |
| April solar radiation (kWh/m²/day) | 5.9 |
| May solar radiation (kWh/m²/day) | 6.1 |
| June solar radiation (kWh/m²/day) | 5.8 |
| July solar radiation (kWh/m²/day) | 5.9 |
| August solar radiation (kWh/m²/day) | 5.8 |
| September solar radiation (kWh/m²/day) | 5.7 |
| October solar radiation (kWh/m²/day) | 5.4 |
| November solar radiation (kWh/m²/day) | 4.5 |
| December solar radiation (kWh/m²/day) | 3.8 |
| Performance ratio K | 0.73 |
| System size (kW) | 7 |
| January output (kWh) | =B1*$B$13*$B$14*31 |
| February output (kWh) | =B2*$B$13*$B$14*28 |
| March output (kWh) | =B3*$B$13*$B$14*31 |
| April output (kWh) | =B4*$B$13*$B$14*30 |
| May output (kWh) | =B5*$B$13*$B$14*31 |
| June output (kWh) | =B6*$B$13*$B$14*30 |
| July output (kWh) | =B7*$B$13*$B$14*31 |
| August output (kWh) | =B8*$B$13*$B$14*31 |
| September output (kWh) | =B9*$B$13*$B$14*30 |
| October output (kWh) | =B10*$B$13*$B$14*31 |
| November output (kWh) | =B11*$B$13*$B$14*30 |
| December output (kWh) | =B12*$B$13*$B$14*31 |
| Yearly output (kWh) | =SUM(B15:B26) |
| Yearly output per kW (kWh/kW/yr) | =B27/B14 |
How to calculate it in Python
capacity_kw = 7 # system size P (kW)
design_factor = 0.73 # performance ratio K
orientation_percent = 100 # direction and tilt factor f (%). 100 for due south at 30 degrees
standard_irradiance = 1 # standard irradiance Gs (kW/m2)
# Monthly solar radiation at due south, 30 degrees tilt (kWh/m2/day). Example: Atlanta
irradiation_south30 = [4.0, 4.5, 5.0, 5.9, 6.1, 5.8, 5.9, 5.8, 5.7, 5.4, 4.5, 3.8]
days_in_month = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
yearly_kwh = 0
for month, (h0, days) in enumerate(zip(irradiation_south30, days_in_month), start=1):
h = h0 * orientation_percent / 100 # solar radiation on the panels Hm
monthly_kwh = h * design_factor * capacity_kw * days / standard_irradiance # monthly output Em
yearly_kwh += monthly_kwh
print(f"Month {month:2d}: {monthly_kwh:.1f} kWh")
print(f"Yearly output: {yearly_kwh:.0f} kWh")
print(f"Yearly output per kW: {yearly_kwh / capacity_kw:.0f} kWh/kW/yr")
print(f"Monthly average: {yearly_kwh / 12:.1f} kWh/month, daily average: {yearly_kwh / 365:.2f} kWh/day")
How to write it in LaTeX and other math languages (copy and paste)
Hₘ = Hₘ,₀ × f ÷ 100
H_{m} = H_{m,0} \times \frac{f}{100}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>H</mi><mi>m</mi></msub>
<mo>=</mo>
<msub><mi>H</mi><mrow><mi>m</mi><mo>,</mo><mn>0</mn></mrow></msub>
<mo>×</mo>
<mfrac><mi>f</mi><mn>100</mn></mfrac>
</mrow>
</math>
H_m = H_(m,0) * f / 100
irradiation = baseIrradiation*factor/100
H_m := H_m0*f/100;
H_m = H_m0*f/100;
H_m = H_(m,0)×f/100
Eₘ = Hₘ × K × P × Dₘ ÷ Gₛ
E_{m} = \frac{H_{m} \times K \times P \times D_{m}}{G_{s}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>E</mi><mi>m</mi></msub>
<mo>=</mo>
<mfrac>
<mrow>
<msub><mi>H</mi><mi>m</mi></msub>
<mo>×</mo>
<mi>K</mi>
<mo>×</mo>
<mi>P</mi>
<mo>×</mo>
<msub><mi>D</mi><mi>m</mi></msub>
</mrow>
<msub><mi>G</mi><mi>s</mi></msub>
</mfrac>
</mrow>
</math>
E_m = (H_m * K * P * D_m) / G_s
monthlyEnergy = irradiation*designFactor*capacity*days/standardIrradiance
E_m := H_m*K*P*D_m/G_s;
E_m = H_m*K*P*D_m/G_s;
E_m = (H_m×K×P×D_m)/G_s
E_year = H × K × P × 365 ÷ Gₛ
E_{\mathrm{year}} = \frac{H \times K \times P \times 365}{G_{s}}
<math xmlns="http://www.w3.org/1998/Math/MathML" display="block">
<mrow>
<msub><mi>E</mi><mtext>year</mtext></msub>
<mo>=</mo>
<mfrac>
<mrow>
<mi>H</mi>
<mo>×</mo>
<mi>K</mi>
<mo>×</mo>
<mi>P</mi>
<mo>×</mo>
<mn>365</mn>
</mrow>
<msub><mi>G</mi><mi>s</mi></msub>
</mfrac>
</mrow>
</math>
E_"year" = (H * K * P * 365) / G_s
yearlyEnergy = irradiation*designFactor*capacity*365/standardIrradiance
E_year := H*K*P*365/G_s;
E_year = H*K*P*365/G_s;
E_year = (H×K×P×365)/G_s
How to have ChatGPT do the calculation
You are a calculation assistant for solar panel output. Do the following calculation by actually running Python code, and base your answer only on the numbers from the execution result (do not answer by mental math or guessing). A 7 kW solar system is installed on a roof facing due south with a 30° tilt. The performance ratio is 0.73 and the standard irradiance is 1 kW/m². The monthly solar radiation at due south and 30° tilt (kWh/m²/day), from January, is 4.0, 4.5, 5.0, 5.9, 6.1, 5.8, 5.9, 5.8, 5.7, 5.4, 4.5, 3.8. Find the monthly output (kWh) as "solar radiation × performance ratio × system size × days in the month ÷ standard irradiance" (a year is 365 days, February has 28 days). Find each of the following: 1. The monthly output for January through December (kWh, to 1 decimal place) 2. The yearly output (kWh) and the yearly output per kW (kWh/kW/yr) 3. The monthly and daily average output Show the formulas you used and the numbers from the execution result.
How to Use
-
1Enter your numbersType the numbers you want to calculate with into the input fields
-
2CalculatePress the "Calculate" button
-
3Check the resultThe result appears on the spot. The same page also explains the idea behind the calculation and the formula
DataChef Features
No technical knowledge required.
Intuitive and user-friendly operation.
Can be used without registering personal information.
Automatic file deletion by clicking "download".
and rapid file conversion.
No attribution required.
No need to contact us for commercial use permission.
