Solar panels producing less than expected? Before you go hunting for a fault, answer the question almost nobody answers for you: less than what, exactly? Your app shows kWh, but it has no idea what the weather did, so it cannot tell you whether those kWh were good or bad. There are three comparisons you can run today, with no tools and no phone calls: the same week last year, a PVGIS estimate for your own roof, and a neighbour’s system on PVOutput. If the shortfall survives all three, work down the causes list, because a partial fault is very hard to see by eye and the app will not name it for you.
Solar panels not producing enough energy: less than what, exactly?
A single number means nothing on its own. On a 4 kWp roof, 6 kWh in a day is a strong November result and a poor July one, and even inside July it can be normal under high cloud and mediocre under clear sky. So before you open the inverter, build yourself a reference.
Scale makes this awkward: small partial losses hide inside normal weather variation, and owners say so themselves:
I’d certainly not notice a 10% reduction, however 40%-60% would stand out like a sore thumb
The losses you can see by eye are the ones that were already catastrophic. The 10–30% band (one string down, a dead optimiser, an inverter throttling on grid voltage) sits below the threshold of noticing, sometimes for years.
Three references, easiest first:
- Your own history: the same calendar week or month last year.
- A model of your roof: PVGIS for your location, kWp, tilt and orientation.
- A neighbour: a comparable system on PVOutput that saw the same sky on the same day.
Solar production dropped? Compare the same week last year
Open your app and put this July against last July, and this week against the same week last year. Same roof, same tilt, same orientation, same season: the only variables left are the weather and the state of the kit.
Two caveats before you read anything into it. Weather differs from year to year, so a fortnight can swing by several percent for no reason at all, and a full month is a far better comparison than a week. And if the fault started early in the previous year, last year is already contaminated as a baseline, so go back two.
Weather is also the story owners tell themselves while a real fault runs. This one had a whole string producing nothing:
Since installation the generation figures have been slightly lower than before but I put this down to cloudier weather and deterioration of the solar panels. However when I checked the inverter I noticed that whilst string 2 was working fine, string 1 had the correct voltage (360v) … but the ampage was zero and hence not generating any output. The inverter appeared to be working fine and had no error messages.
With a whole string off and no error message, the only visible symptom was a number that looked a bit low.
A drop against last year can also be nothing at all. In September 2026 a 6.09 kWp Enphase roof in Almere made 480 kWh, against 531 kWh in September 2025: 10 % less. Against the weather it was exactly right: on 28 comparable days the weather allowed 467 kWh and the roof produced 468 kWh, so the whole drop was the weather.
Why are my solar panels not producing enough power? Work it out on PVGIS
PVGIS is the European Commission’s Joint Research Centre PV performance tool. It is free, needs no account, and it is the most direct way to turn “producing less” into a number.
You need four things, all of them in your installation paperwork:
- Location: drag the map onto your roof.
- Installed peak power in kWp: the sum of the module ratings, not the inverter rating.
- Tilt in degrees.
- Orientation (azimuth) in degrees from south.
PVGIS returns a monthly estimated energy table in kWh. That table is your reference for the rest of the year, and its month-by-month shape answers “how much should it be making in December”. The spread between your best and worst month is set by your latitude, tilt and orientation, not by a rule of thumb.
The worked example, arithmetic shown
Suppose a 4 kWp roof, and suppose PVGIS returns 480 kWh for July. Substitute your own numbers; the method does not change.
- 480 kWh ÷ 31 days = 15.5 kWh/day expected on an average July day.
- Your app says the last two weeks of July averaged 11.5 kWh/day.
- 11.5 ÷ 15.5 = 0.74, so you are running about 26% below the modelled average.
The assumptions: PVGIS gives a multi-year climate average, not a forecast for this specific July, and a fortnight of cloud will miss it without anything being wrong. Compare whole months where you can. A 5% deviation is noise. A 25% deviation sustained across a full month of decent weather is a fault until proven otherwise. The same walkthrough field by field, and how far to trust it, is in check your solar production against the weather.
This is also the comparison people were promised at the sales stage and never got a way to check:
the offers I got the estimated generation differs +/- 12% for the same panels … Therefore I am wondering, how accurate was the estimate you were provided compared with the actual?
Solar generation low? Compare with a neighbour’s system on PVOutput
The third reference removes the weather problem entirely, because two roofs a few streets apart got the same sky on the same day. PVOutput is a public database where owners publish their daily production; you can search by area and by system size, then lay their day curve against yours.
It is the fairest comparison there is, and the fiddliest to set up, because it depends on somebody near you having bothered to upload. France has an equivalent, BDPV, a community production database French owners use to compare their output with nearby systems. If you have a neighbour with panels and an app, that works too: ask them for one clear day’s kWh and their kWp, divide both by kWp, and compare kWh per kWp rather than raw kWh.
Why are my solar panels underperforming? Causes in order of likelihood
If all three comparisons agree that output is missing, this is the order to work down. It is ordered by how often each one turns out to be the answer, not by how easy the fix is to sell you.
- One string or MPPT input is down. A whole string can be at zero with the inverter reporting no fault, as in the quote above. It usually gives itself away as a clean step: production drops from one day to the next and stays there.
- A dead optimiser or microinverter. One or two modules affected, so the loss is small and constant: precisely the size that gets blamed on the weather, and visible at all only if per-panel data exists.
- Grid overvoltage. The inverter is healthy, and throttles or disconnects because the voltage at your connection point is too high. It gets its own section below.
- Shading that has grown. A tree three years taller, a neighbour’s extension, a new dormer, a flue. The morning or late-afternoon shape of the curve changes first.
- Soiling and snow. Real, but slow. Dirt accumulates over months, so it cannot produce a step change; snow can take a roof to near zero for days and then release it.
- A tripped breaker or RCD. The trip is on the PV circuit at your consumer unit, not on the panels. Each one is an interval of zero that shows up only as a single weak day in the monthly graph.
- Heat derating. Panel output falls as cell temperature rises, so the hottest afternoons flatten slightly. A few percent, not a fifth.
- Module degradation. Bottom of the list, for the reason in its own section.
If your app shows nothing at all rather than something low, that is a different problem with a different method: start at the inverter offline triage instead.
Grid overvoltage: the cause nobody suspects
Grid overvoltage is invisible from inside the app, and the inverter itself is fine. The voltage at your connection point rises above the permitted limit (often because everyone in the street is exporting at once on a sunny midday), and the inverter is required to reduce output or disconnect. It logs this quietly. Your app shows a mid-day flat spot or a slightly low day, with no error message.
our converter disables itself for 15min and tries again later. This happens up to 30 times per day, especially when it’s sunny … So I’m losing hours of production due to grid overvoltage.
The tell is a loss that is worst on the sunniest days, which is the opposite of what people expect a fault to look like. If your best-weather days are the ones that miss the PVGIS figure by most, look at grid voltage, and ask your installer or your distribution network operator to read the inverter’s voltage log rather than start replacing panels.
Do solar panels produce less as they age? How much do solar panels lose each year
This is the reassurance owners are given most often, and it does not survive the arithmetic. Module ageing is a fraction of a percent a year: far too small to explain a 20% shortfall, and small enough that even a decade of it stays nowhere near a fifth.
So if you are 20% down on two summers ago, ageing accounts for a sliver of the gap. The rest is on the causes list above.
Do solar panels produce less in winter, in hot weather, or when dirty?
Three questions that get asked constantly, and that mostly deserve reassurance rather than a call-out.
Winter. Fewer daylight hours and a lower sun, so the same roof receives far less irradiance. Your worst month can be a small fraction of your best one. Compare with last December and with the December line of your own PVGIS table, not with June. Anyone running, or considering, a heat pump can check exactly what that December line covers in a heat pump and solar panels. And if El Niño is in the headlines while this winter’s numbers look low, what a seasonal forecast can and cannot say about your December output sets out how to tell the season from a fault.
Heat. Panel output falls as cells warm, so a scorching clear day can undershoot a cool bright one. Normal, and small.
Dirt. Less than almost everybody assumes. Soiling is the cause that dominates installer blogs because it is the one with a cleaning service attached to it. Before booking anything, compare against the same week last year: dirt builds slowly, and a sudden step points elsewhere. Whether a clean is worth paying for at all is answered in do solar panels need cleaning.
Normal variation moves your monthly figure by a few percent around the PVGIS shape; a real fault moves it by tens of percent and keeps it there.
When the money goes quiet before the app does: FIT, SEG and the Clean Export Guarantee
In the UK and Ireland, the shortfall often shows up in the payments before anybody spots it in the graphs, and it does so silently, as a credit line that shrinks rather than a bill that lands on the mat.
For UK FIT-era systems, payments are based on the meter readings you submit, and Octopus is blunt about substitutes: “we can’t make FiT payments based on estimated or inverter readings”. So a stalled generation meter, or generation that never happened, is money that simply is not paid, and nobody writes to tell you.
In Ireland, the Clean Export Guarantee pays for every metered kWh you export, at 16c to 25c per kWh (CRU, June 2024). Because the payment arrives as a credit against your bill, a shortfall shows up only as a credit that has got smaller.
The Which? member survey of more than 2,000 owners (April 2024) found that 15% had experienced inverter problems (the most common technical issue reported), while only 22% of those surveyed said they monitored day-to-day performance. If that is anywhere near representative of the wider fleet, most systems are not being watched day to day, and these losses are exactly the size that hides.
What your app tells you, and what it does not: SolarEdge, Enphase, Growatt
Who actually receives what, per brand, is set out in who gets your solar alerts.
SolarEdge. SolarEdge has no alert that compares your output with what you should have made. Its production alerts only fire on hard faults: “Production issue – inverter overheated” and “String is not producing”. Alert rules live in the installer’s account, and an e-mail reaches you only if the installer has given you permission. Even total silence is only flagged after at least three hours, by default in a daily digest. A system that is up and communicating but making less than it should raises nothing. The codes it does raise are decoded in the SolarEdge error-code guide, and there is more detail on the SolarEdge monitoring page.
Enphase. It does more than the other two, and still not what owners assume. The documented thresholds: a Warning when at least one microinverter has not reported for 12 hours during daylight, in-app only and with no push; an Error when at least 10% of microinverters have not reported for five consecutive days, and only then are homeowners and installers notified by text, email or push, “depending on their selected preferences”. There is a low-production alert (“Low Solar Production” in the owner app, “Production Issue” in the installer portal), but it fires when site production falls below a Production Threshold “if one has been set”. If your installer never set one, there is no soft-underperformance alerting on your site at all. More detail on the Enphase monitoring page.
Growatt. No expected-yield comparison. Its alerts are tick-boxes in the ShineServer web portal (alerts, daily reports, monthly reports), sent to the mailbox the plant was set up with, normally the installer’s. Hard faults and codes reach that mailbox if the alert box is ticked. The owner app’s App Store listing covers energy monitoring, device management and AI smart control, and no alerts, so you learn only what you open the app to check. The common codes are decoded in the Growatt error codes guide, and the account side is on the Growatt monitoring page.
The reason is the same for all three: your brand app knows how many kWh you made, and does not know what the weather was. Without the second half of that pair it cannot tell you whether 11.5 kWh was a good day or a bad one. That is why the comparison in this guide stays a manual job unless something runs it for you. Solmiro does: every day it works out what the weather over your roof allowed, and it e-mails you when production falls well short of that or stops. Connecting is free; how it works. The by-eye checks that come before it are in how do I know if my solar panels are working. Running it by hand, month by month, is set out in check your solar production against the weather.
Left unrun, the comparison eventually gets made by the bill:
I didn’t notice anything amiss until September, 2021 when I got an unexpected power bill. When I looked at the Solar Edge monitoring data, power production starts to noticeably drop first in March, 2021 and I thought that the problem started around then. Monthly production for these two most recent years is down 10 to 50%.
The decline ran for six months before the owner noticed it, on a platform he was already using, because nothing was comparing the graph to anything.
What the daily check shows on a real roof
On the same Almere roof, August 2026 was 3 % down on August 2025, and the weather check put it at 97 %: 214 kWh against 221 kWh allowed on 10 comparable days. Like September, the lower month was the weather, not a fault.
Single days swing far more than months. That September the ratio ran from 66 % on 18 September (15.0 kWh against 22.7 kWh allowed) to 217 % on 2 September, and the roof was back above 100 % on the following comparable days. So Solmiro never alerts on a single day: a shortfall counts only when it holds over several comparable days.
Questions owners ask
How do I know how much my solar panels should be producing?
Use PVGIS, the European Commission's Joint Research Centre tool. Enter your location, installed kWp, tilt and orientation, and it returns an estimated monthly energy table in kWh. Divide a month's figure by the number of days for a daily average you can hold against what your app shows. It is a long-run climate average, not a forecast for this particular month.
Why are my solar panels not producing enough power?
In rough order of likelihood: one string or MPPT input is down, an optimiser or microinverter has died, the grid voltage at your connection point is high enough to make the inverter throttle or trip, shading has grown, the array is dirty or snow-covered, or it is simply the weather. Module ageing is at the bottom of that list, not the top.
How much do solar panels lose each year?
Module ageing is a fraction of a percent a year — far too small to explain a 20% shortfall. If your output is down by a fifth, something else is wrong, and the causes list in this guide is where to look.
Will my solar app warn me if I am producing less than expected?
It will not compare your output with the weather. SolarEdge has no alert that compares your output with what you should have made; its production alerts only fire on hard faults. Enphase does have a low-production alert, but it fires against a Production Threshold only "if one has been set" by the installer. Growatt's owner app is described as monitoring only, with no alerts.
Do solar panels produce less in hot weather?
Yes, panel output falls as cell temperature rises, so a very hot, clear day can produce slightly less than a cool bright one. That is normal physics, not a fault, and it shows up as a few percent rather than a step change. Judge it against the same month last year and against your PVGIS monthly figure, not against your best-ever day.