Why California Solar Output Drops in Winter, and When It's Actually a Problem
Last verified 2026-09-08. Figures carry their sources at the foot of this page.
California's utility-scale solar farms generated 4,456 gigawatt-hours in June 2022 and 1,832 gigawatt-hours in December 2022, a drop of roughly 59 percent, per generation data compiled in the "Solar power in California" entry on Wikipedia, which cites the U.S. Energy Information Administration's Electricity Data Browser as its underlying source (Wikipedia entry accessed 2026-09-08; EIA Electricity Data Browser, eia.gov/electricity/data/browser). That figure covers big desert arrays, not rooftop systems, so treat the exact percentage as directional. The underlying cause is identical for every fixed-tilt panel in the state, rooftop or utility-scale: a lower winter sun angle and a shorter day, both driven by Earth's 23.45-degree axial tilt (PVEducation.org, Arizona State University solar physics reference, accessed 2026-09-05).
If your December bill looks worse than your June bill, that swing is built into how the system was designed and how California's billing rules account for it over a full year, not a single month. The question worth asking isn't "why did production drop" -- it always does, every year, for every fixed-tilt array in this state. It's whether this December looks like every other December on your own system, or whether something is actually broken.
This page covers why the seasonal swing happens, roughly how big it runs, how the annual true-up is designed to absorb it, and the specific signs that separate a normal winter dip from a system that needs a service call.
The physics: why every fixed panel in the state produces less in winter
Solar declination is the angle between the sun's rays and the plane of Earth's equator, and it swings plus-or-minus 23.45 degrees over the year following the formula delta = -23.45 deg x cos[360/365 x (d+10)], where d is the day of the year (PVEducation.org, ASU solar physics reference, accessed 2026-09-05). Around the winter solstice, December 21-22, declination bottoms out at -23.45 degrees. Around the summer solstice, June 21, it peaks at +23.45 degrees.
For a fixed, south-facing panel anywhere in California -- from San Diego at roughly 32 degrees north to the Oregon border at roughly 42 degrees north -- a lower winter sun angle does two things at once, and they compound rather than offset. First, sunlight hits the panel at a steeper, less direct angle, which cuts the intensity of the light actually striking the cell. Second, the sun's path across the sky is shorter, which cuts the number of hours it's up at all. Neither effect is a flaw in your equipment. Both are the same orbital mechanics affecting every fixed-tilt array on the planet, at every latitude, every year.
This is also why panel orientation and tilt angle matter more in winter than in summer: a steeper mounting angle captures more of a low winter sun, which is part of why ground-mount and tracking arrays (common in utility-scale desert installations) lose less percentage-wise over the winter than a flat or low-pitch rooftop system does. If your installer set your tilt to your roof pitch rather than an angle optimized for winter output, that's a normal design tradeoff, not necessarily an error -- ask your installer for the reasoning in writing if you want it on record.
How big the swing actually is, and why an exact residential number needs care
The only hard statewide figure available is utility-scale: California's solar farms produced 4,456 GWh in June 2022 against 1,832 GWh in December 2022, roughly a 59 percent drop, per generation tables referenced on Wikipedia's "Solar power in California" page, which in turn cites the U.S. Energy Information Administration's Electricity Data Browser as its source (accessed 2026-09-08). That's useful for direction and order of magnitude, but it describes big desert installations, many of them tracking arrays, not a fixed rooftop system in a coastal or Central Valley city. Treat any residential percentage you see quoted online -- including elsewhere on this site -- as an estimate until it's backed by a specific, dated modeling run for your address.
The industry-standard way to get that specific number is a per-address production model, typically built on NREL's PVWatts calculator or equivalent software, which projects expected output month by month for a given location, tilt, azimuth, and system size. California's own contractor-licensing statute gestures at this directly: Business and Professions Code section 7169(c) permits (though doesn't require) a solar contract to include "a calculator that calculates performance of solar projects to provide solar customers the solar power system's projected output" (leginfo.legislature.ca.gov, re-verified live 2026-09-08). Before you sign anything -- or before you decide an existing system is underperforming -- ask for the month-by-month projected output table your quote was built on. That table, not a single bad bill, is the right baseline for judging your system.
Regional variation: the same sun, a different sky
California's solar exposure isn't uniform, and winter is where the differences show up most. San Diego and the Los Angeles basin get their own version of "June gloom" -- a marine layer of low coastal cloud that also shows up on winter mornings and burns off later in short winter days than it would in summer, cutting into the hours of direct sun a coastal system gets. The Bay Area deals with a similar fog pattern along the coast and around the bay itself. The Central Valley has its own separate phenomenon, tule fog, a dense ground-level fog that can sit for days at a time in winter, a known regional visibility and air-quality issue independent of solar output. Low-desert regions -- the Coachella Valley around Palm Springs, the Imperial Valley -- tend to see less winter cloud cover than the coast or valley floor, so a system there generally loses less to weather, even though it still loses to sun angle and day length like everywhere else in the state.
None of this changes the physics above -- every region loses output to the lower sun angle and shorter day. What regional weather adds is a second, separate layer of cloud-driven loss on top of that baseline, and it varies by microclimate in ways a single statewide number can't capture. This is where a genuine, address-specific PVWatts-style model earns its cost: it's built from historical weather-station data for your specific location, not a statewide average.
What rain and the marine layer actually do to output
Rain and marine-layer fog affect production through the same basic mechanism but land differently. A fixed solar panel's main input is direct-beam irradiance -- sunlight arriving in a straight line from the sun. Overcast and foggy conditions scatter that direct beam into diffuse light, and a panel still generates under diffuse light, just at a meaningfully lower rate than under a clear sky. That's the general engineering consensus on how cloud cover affects PV output; treat it as domain knowledge rather than a cited statistic, since a California-specific, peer-reviewed figure for marine-layer loss wasn't available to confirm for this page.
Rain itself has a secondary, smaller effect that cuts the other way: it washes dust, pollen, and windblown debris off the panel surface between storms. That soiling buildup is itself a real drag on output -- a dirty panel loses some of the sunlight that does reach it -- so California's wet season, roughly November through March, is trading some production against overcast days for a periodic free cleaning the panels wouldn't otherwise get until the next scheduled wash. Neither effect is large enough to explain a system that's badly underperforming; both are folded into the ordinary seasonal swing described above, not a separate problem to chase down.
Annual netting: how the true-up is built to absorb the swing
California's Net Billing Tariff, the rule most people mean when they say "NEM 3.0," took effect April 15, 2023, and applies only to customers of PG&E, SCE, and SDG&E (CPUC, re-verified live 2026-09-08). It runs on monthly billing with a running credit balance, plus a mandatory annual true-up at the twelve-month mark. In the CPUC's own words, from its Solar Consumer Protection Guide (Solar Billing Plan Addendum, published September 2025): "If you send more electricity to the grid than you buy in a year, your provider will subtract any bill credits you already received for that excess energy, and then provide compensation at a different rate for the excess energy." Export credits during the year are valued off the CPUC's Avoided Cost Calculator rather than the retail rate you pay to buy power -- generally lower, though it can spike above retail on late-summer evenings when grid demand peaks.
That true-up is the whole point: no fixed-tilt system produces evenly across twelve months, so the tariff is built around a full-year accounting rather than a monthly one. Your summer surplus, banked monthly, is designed to offset your winter shortfall. A system that nets out close to zero (or to whatever your contract targeted) over the full year is doing exactly what it's supposed to, even if any single December statement shows a draw from the grid.
Two things change this picture for specific homeowners. If you interconnected before April 15, 2023, you're likely still grandfathered onto NEM 2.0, which credits exports at the full retail rate rather than the lower avoided-cost rate. Net Billing has applied only to new interconnections since that date, so most California solar systems already installed and operating -- built up over the many years NEM 1.0 and NEM 2.0 were open to new customers -- are still on one of those legacy tariffs rather than on Net Billing; this page could not confirm a specific percentage from a CPUC source for how large that majority is, so treat that as a directional statement, not a statistic, and check your own interconnection date rather than assume either way. And if you're served by a publicly owned utility -- LADWP, SMUD, MID, Anaheim, Roseville, Lodi, Imperial Irrigation District, or Turlock Irrigation District -- none of the above applies to you at all; these utilities sit outside CPUC jurisdiction and set their own net-metering and true-up terms, which this page has not verified utility-by-utility. Check your specific provider's tariff rather than assuming Net Billing rules apply.
When the drop is normal, and when it's a sign of a real problem
Every fixed-tilt system in California produces less in December than in June. That alone tells you nothing about whether yours is working correctly. The CPUC's Solar Consumer Protection Guide frames the right diagnostic questions to have asked before you ever needed them: "Will I be able to monitor the performance of the system once it's installed?" and "how will I be compensated if the system does not produce as much energy as promised" (CPUC, California Solar Consumer Protection Guide, 2022 edition, re-verified verbatim 2026-09-08). Real-time monitoring data, not a single low bill, is the tool that actually separates a normal seasonal shortfall from an actual fault.
California also requires your contract to carry a specific disclosure document. Under Business and Professions Code section 7169(b), every solar energy system contract must include, in boldface 16-point type on the front page, the total cost and financing terms, information on the complaint procedure, and the buyer's cancellation rights under section 7159 -- three business days to cancel a standard contract, five for a senior citizen, seven for a contract addressing emergency repairs (leginfo.legislature.ca.gov, re-verified live 2026-09-08). If you don't have that document, or don't remember seeing it, that's worth flagging on its own, separate from any production question.
The practical test: pull your monitoring history and compare this December and January against the same months in a prior year on your own system, not against last June. If the shortfall tracks a prior winter within a normal range, your dashboard is live and reporting, and a visual check shows no shading, soiling, or visible damage, you're looking at ordinary seasonality. If the dashboard is offline, showing fault codes, or this winter is meaningfully worse than your own system's prior winters with no new shade or added household load to explain it, that's when it's worth calling your installer.
If you think it's a fault, not a season
Start with the data you already have. Pull your monitoring app's history and line this month up against the same month in a prior year on the same system -- not against summer, and not against a neighbor's system with a different roof pitch, orientation, or panel count. Check whether the dashboard itself is live; an offline monitor or a fault code is a different problem than low kWh totals, and it's the one that actually indicates equipment failure. A quick visual check for shading from tree growth, dust or debris buildup, and any visible panel or wiring damage rules out the simplest physical causes.
If the numbers still don't line up, contact your installer and reference the production estimate and any monitoring or performance guarantee in your contract -- the CSLB disclosure document required under section 7169(b) should have pointed you to the complaint procedure at the time of sale. If that doesn't resolve it, the Contractors State License Board can investigate license-law violations for up to four years from the act in question, and its own guidance recommends sending the contractor a formal written demand letter first, with sample letters available in English and Spanish (cslb.ca.gov, re-verified live 2026-09-08). Be clear-eyed about what a CSLB complaint can and can't do: in the Board's own words, "the purpose of a CSLB investigation is not to obtain restitution." CSLB can discipline or suspend a contractor's license; getting money back generally means pursuing the contractor's required license bond -- a standard $25,000 under Business and Professions Code section 7071.6, which the board can require to double to $50,000 if the contractor was convicted under section 7028 or cited under section 7028.7 for unlicensed contracting that caused substantial injury to the public -- or civil court action.
Normal winter dip vs. a genuine fault: what to check first
| Signal | What a normal winter looks like | What points to an actual fault |
|---|---|---|
| Output vs. same month last year | Tracks within a normal range of your own prior December/January | Meaningfully lower than the same month last year, with no new shade or added load |
| Monitoring dashboard | Live and reporting, just showing lower kWh totals | Offline, frozen, or displaying inverter fault codes |
| Visual inspection | Panels clean, no visible damage; lower output explained by sun angle and day length | Visible shading from new tree growth, soiling buildup, cracked glass, or loose wiring |
| Monthly bill vs. annual true-up | A higher December bill is expected; the 12-month true-up is the number that matters | The true-up statement itself falls well short of the contract's projected annual output |
| Household usage | Unchanged from prior winters | A new EV, added AC or heat pump, or other new load explains the higher bill, not the panels |
When this is the wrong move
A worse December bill, by itself, is not evidence of a problem. If you're on legacy NEM 2.0 (interconnected before April 15, 2023), your exports are credited at the full retail rate, which makes the annual true-up more forgiving than it is for new Net Billing customers -- check your interconnection date before assuming the worst. If this December's output is in line with your own system's prior Decembers, and your monitoring dashboard is live and reporting normally, the swing you're seeing is the same orbital mechanics every fixed-tilt system in California runs into every year, not a sign your installer did anything wrong. A single low bill also doesn't mean your annual true-up will come out badly -- that's a twelve-month calculation, not a monthly one. Where this concern is real: your dashboard is offline or showing errors, this winter is worse than your own prior winters with no new usage to explain it, or your true-up statement itself falls short of the contract's projected output.
Frequently asked questions
Is a 40-60% drop in solar production from summer to winter normal in California?
Directionally, yes. Statewide utility-scale solar generation fell roughly 59 percent from June to December 2022 (4,456 GWh to 1,832 GWh, per generation data referenced on Wikipedia's "Solar power in California" page and sourced there to the U.S. EIA Electricity Data Browser, accessed 2026-09-08). That figure describes desert utility-scale arrays, not a specific rooftop system, so don't treat it as a guarantee for your address -- ask your installer for a month-by-month projected output table for your specific roof instead.
Does rain damage solar panels or hurt their output?
Rain doesn't damage panels. While it's falling, the overcast sky that comes with it cuts output the same way any cloud cover does. Between storms, rain also rinses dust, pollen, and debris off the panel surface, which modestly helps output the panels would otherwise lose to soiling. The net effect during California's wet season is more overcast days, partly offset by cleaner panels.
Is my winter production drop supposed to be offset by summer surplus?
Yes -- that's the specific job of the annual true-up under California's Net Billing Tariff. Export credits you bank in the summer are meant to offset a winter shortfall, and the CPUC settles the full picture once a year, not month by month. A system that nets out near its annual target over twelve months is working as designed, even if individual winter months show a draw from the grid.
How can I tell if a low winter bill means my system is broken?
Compare this December and January against the same months in a prior year on your own system, check that your monitoring dashboard is live with no fault codes, and do a visual check for shading, soiling, or damage. A drop that tracks your own prior winters with a live, error-free dashboard is normal seasonality. A dashboard that's offline, showing errors, or output meaningfully worse than your own prior winters with no new household load is worth a call to your installer.
Does NEM 3.0 make the winter dip worse than the old NEM 2.0 rules?
It changes the math, not the physics. Under legacy NEM 2.0, exports are credited at the full retail rate, so summer surplus offsets winter usage more generously. Under Net Billing (NEM 3.0), exports are valued off the CPUC's Avoided Cost Calculator, generally lower than retail, so the same seasonal production swing shows up as a bigger dollar swing on your bill. Net Billing applies only to PG&E, SCE, and SDG&E customers who interconnected on or after April 15, 2023.
The bottom line
A California solar system producing less in December than in June is doing exactly what fixed-tilt panels do everywhere on the planet -- it's the annual true-up, not the December bill, that tells you whether the system is working.
See what your options actually look like
Check your eligibility for the California Rate Relief Program in about 60 seconds. No cost, no obligation.
Check My EligibilityRelated reading
Sources
Rates and incentive programs change. Each figure above traces to one of these.
- PVEducation.org - Declination Angle (Arizona State University) — Solar declination formula and the 23.45-degree axial tilt mechanism; formula wording re-verified live 2026-09-08 (matches page verbatim: delta = -23.45 deg x cos[360/365 x (d+10)])
- "Solar power in California," Wikipedia — Statewide utility-scale generation figures for June and December 2022 (directional, not rooftop-specific); this entry's own footnote for that table cites the U.S. EIA Electricity Data Browser, confirmed 2026-09-08
- U.S. Energy Information Administration - Electricity Data Browser — Primary-source generation data underlying the Wikipedia-reported June/December 2022 California utility-scale solar figures (cited by Wikipedia's own footnote 49)
- CPUC - Net Energy Metering and Net Billing — Net Billing Tariff effective date (April 15, 2023) and utility scope (PG&E, SCE, SDG&E only -- confirms Bear Valley Electric Service and PacifiCorp run separate, non-NBT tariffs); re-verified live 2026-09-08
- CPUC - California Solar Consumer Protection Guide (long-form, 2022 edition, p.11) — Verbatim source, confirmed by direct PDF text extraction 2026-09-08, for the quoted questions: "Will I be able to monitor the performance of the system once it's installed?" and "how will I be compensated if the system does not produce as much energy as promised"
- CPUC - Solar Consumer Protection Guide, Solar Billing Plan Addendum (September 2025) — Verbatim source, confirmed by direct PDF text extraction 2026-09-08, for the true-up quote: "If you send more electricity to the grid than you buy in a year, your provider will subtract any bill credits you already received for that excess energy, and then provide compensation at a different rate for the excess energy."
- California Business and Professions Code section 7159 (cancellation rights) — 3/5/7 business-day cancellation windows (standard/senior/emergency-repair), re-verified live 2026-09-08
- California Business and Professions Code section 7169 (contract disclosures) — Subsection (b) boldface 16-point disclosure requirements and subsection (c) optional performance calculator language, re-verified live 2026-09-08
- California Business and Professions Code section 7071.6 (contractor bond) — $25,000 base bond and the specific doubling trigger (conviction under section 7028 or citation under section 7028.7 causing substantial public injury), re-verified live 2026-09-08
- CSLB - Filing a Complaint — CSLB complaint process, four-year investigation window, sample demand letters in English/Spanish, and the verbatim restitution quote, re-verified live 2026-09-08