Sizing a Solar System for Your Climate
Solar panel sizing depends heavily on your geographic location. The same 5W panel produces dramatically different energy in Portland, Oregon vs. Phoenix, Arizona. This guide walks through climate-specific sizing calculations.
Peak Sun Hours by Region
Peak Sun Hours (PSH) is the number of hours per day when solar irradiance averages 1,000 W/m². It's the key variable in solar sizing calculations.
| Region | Winter PSH | Summer PSH | Annual Average PSH |
|---|---|---|---|
| Phoenix, AZ | 4.5 | 7.5 | 6.0 |
| Los Angeles, CA | 4.0 | 6.0 | 5.2 |
| Denver, CO | 3.8 | 6.5 | 5.1 |
| Dallas, TX | 3.5 | 6.5 | 5.0 |
| Atlanta, GA | 3.2 | 5.5 | 4.5 |
| Chicago, IL | 2.5 | 5.5 | 4.0 |
| Seattle, WA | 1.5 | 5.5 | 3.5 |
| Portland, OR | 1.5 | 5.5 | 3.3 |
| Anchorage, AK | 0.5 | 6.0 | 3.0 |
PSH source: values are conservative sizing-design figures derived from NREL PVWatts / NSRDB station data for representative cities in each region; look up your exact site in PVWatts before finalizing a build. Winter columns reflect the worst-month average (e.g. December). The "Annual Average" column is a design figure for rough comparison — NREL's pure annual mean runs a little higher in cloudy locations (e.g. Seattle's true annual mean is ~4.9 PSH, but its winter worst-month near 1.5 is what governs sizing). Always size the panel against the winter PSH, not the annual average. Phoenix winter is shown at a conservative 4.5; some sources put it nearer 5.0–5.5. (as of 2026-06-08)
Design for the worst month: Use winter PSH for sizing, not annual average. AIn most of the Northern Hemisphere, a system thatsized worksfor inthe December PSH minimum will have abundantsurplus power allin other months.months — but you still need battery autonomy for multi-day cloudy spells, and in snowy regions you must account for snow covering the panel.
Solar Sizing Calculation
# Formula: Panel watts needed = Daily energy need / (PSH * systemderate efficiency)factor)
# SystemDaily efficiencyenergy accounts(Wh/day) for= MPPTaverage losses,current (mA) * system voltage (V) * 24 h / 1000
# Derate factor (~0.75) covers controller + wiring losses,+ temptemperature derating:+ ~0.75-0.85soiling losses.
# This is a CLEAR-DAY average; the PSH figure assumes typical sun. Multi-day
# overcast is handled by BATTERY reserve (see Battery Sizing), not panel size.
# Example: RAK4631 (nRF52840) repeater in Chicago winter
# Representative average draw ~10-15 mA; measure your own node.
Daily energy: 15mA avg * 3.7V * 24hrs / 1000 = 1.33 Wh/day
PSH (Chicago winter)winter, per NREL PVWatts): 2.5 hours
SystemDerate efficiency:factor: 0.8075
Panel size = 1.33 Wh / (2.5 h * 0.80)75) = 0.67W71W
# Result:This Even0.71W ais the clear-winter-day MINIMUM. A 1W panel is 1.5xmeets the minimumload neededonly on
# a clear day and gives no headroom for Chicagothe winter!multi-day overcast that is normal in
# InChicago practice,Nov-Feb. useCloudy-day survival comes from battery reserve, not panel size.
# Use at minimumleast a 5W panel (a ~7x safety multiple over the clear-day minimum, to
account# recharge quickly between storms) AND size the battery for cloudy5-7 dayno-sun sequences.days.
# For Raspberry Pi room server + RAK4631 in Chicago winter:
Pi Zero 2W2 W avg: 300mA * 5V = 1.5W = 36 Wh/day # representative; verify your load
RAK4631 avg: 15mA * 3.7V = 0.055W = 1.33 Wh/day
Total: 37.33 Wh/day
# Computed minimum:
Panel needed: 37.33 / (2.5 * 0.80)75) = 18.7W19.9W
→# Choose the next-larger standard size for margin -> use 25W panel minimumminimum.
Battery Sizing for Autonomy
# Formula: Battery capacity (Ah) = Daily energy * Autonomy days / (DODusable fraction * voltage)
# DODUsable fraction (Depthplan-to depth of Discharge)discharge for longevity):
LiPo 80%,# LiFePO4 80%~0.80 (cells can do 0.80-0.90), SLALiPo/Li-ion 50%~0.80, SLA/lead-acid ~0.50
# For emergency-comms nodes, target 5-7+ days of autonomy: panels do not help
# during multi-day overcast, so the battery must carry the whole no-sun stretch.
# RAK4631 repeater with 3-day autonomy, 3.7V LiPo:
Battery Ah = (1.33 Wh/day * 3 days) / (0.80 * 3.7V)
= 3.99 Wh / 2.96
= 1.35 Ah minimum
# With3 days is a general minimum; for an emergency-comms node, size for 5-7 days.
# A 10Ah LiPo:LiPo gives: 10Ah * 0.80 * 3.7V / 1.33 Wh/day = ~22 days autonomy!of autonomy.
# VeryThat is a comfortable marginreserve for mostthis climates.very-low-draw node, but the reserve is
# only useful if the battery is kept above freezing and the panel can recharge it
# between cloudy spells. Do not treat panel size and battery reserve as
# interchangeable - the battery carries no-sun days, the panel recharges between them.
# For Pi + RAK at 3-day autonomy, 12V LiFePO4:
Battery Ah = (37.33 * 3) / (0.80 * 12V) = 11.7 Ah minimum
# Use a 20Ah battery for comfortable margin.margin (and 5-7 day reserve if emcomm-critical).
Seasonal Charging Strategies
- High-sun climates (AZ, NM, TX): Standard sizing with modest battery. More at risk from heat-related battery degradation than insufficient solar.
- Variable climates (CO, GA, NY): Size for winter worst-case.
SummerA controller with proper charge termination prevents overcharge, so excesschargingpanel capacity in summer isharmlesssimplywithwastedarathergoodthan harmful — but only if the controller terminates charging correctly. Summer heat itself stresses lithium cells: keep the battery shaded and ventilated, and do not chargecontroller.Li-ion/LiPo above ~45 °C. - Low-sun climates (PNW, AK): Over-size significantly. A 20W panel for a 1W load is not overkill in Portland. Alternatively, use a second backup charging source (wind generator, AC trickle charge from nearby structure). In sub-freezing weather, ensure the BMS or charge controller inhibits charging below 0 °C — charging a frozen lithium cell causes plating and a permanent internal-short hazard.