In February 2026 I had my panels professionally cleaned. Florida is dusty in the dry season, there’s pollen in spring, and the panels looked a little grimy from the ground. The question was simple: did I get more power afterwards? Short answer: not measurably. Here’s how I checked, and when cleaning might still make sense.
How do you measure a cleaning?
You can’t just compare March to February — March is sunnier. So I compare each month to what the weather says it should have produced. My weather model takes the actual sun and temperature for St. Augustine and calculates the expected output of my exact roof. Measured ÷ modeled gives a ratio. Then I compare the same months in different years, before and after the cleaning.
Before and after the February 2026 cleaning
Measured ÷ modeled production
Measured: Tesla app. Model: pvlib with Open-Meteo ERA5 weather. The model runs a little high in summer and low in winter, so compare the same month across years. October 2026 runs through Oct 23.
What the numbers say
| Period | Prior year | 2025–26 | Change |
|---|---|---|---|
| Nov–Jan (before cleaning) | 1.022 (2024–25) | 1.044 (2025–26) | +2% (not dirty) |
| Mar–Apr (after cleaning) | 0.974 (2025) | 0.975 (2026) | +0.1% |
- The panels weren’t measurably dirty before. November 2025 to January 2026, right before the cleaning, ran 2% above the winter before, not below it.
- After the cleaning, March–April 2026 was 0.1% better than March–April 2025, using Tesla’s daily totals. Year-to-year weather and model error easily move this ratio by 2–3%, so that’s no difference at all.
- My honest conclusion: any gain from cleaning was 3% or less, and possibly zero. Florida’s rain seems to do most of the cleaning for free.
What would 3% be worth?
Even taking the best case: 3% of a year’s production (about 31,100 kWh) is about 930 kWh, which at my FPL rate of about 12.3–14.3¢ is roughly $115–135 a year (estimate). At the 0.1% I actually measured, it’s a few dollars. And the effect fades with the next rains. Compare that to what you’re quoted for a cleaning before you book one.
One thing the cleaning clearly didn’t fix: my weak summer of 2026 came months after it. I checked whether the June 25, 2026 inverter replacement explains it, and it doesn’t: compared with the same weeks in earlier years, output was no different in the 30 days before the swap than in the 30 days after, and the shortfall started in early June (see production and reliability).
Three years of the same ratio
Here’s the full measured-÷-modeled record by month. A dip that lasts for months is what dirt (or a hardware problem) looks like. The cleaning month is marked.
| Month | 2024 | 2025 | 2026 |
|---|---|---|---|
| Jan | 0.55 | 1.06 | 1.02 |
| Feb | 0.61 | 1.07 | 0.99 (cleaned) |
| Mar | 0.99 | 0.97 | 0.97 |
| Apr | 1.02 | 0.97 | 0.98 |
| May | 1.02 | 0.98 | 0.98 |
| Jun | 0.97 | 0.96 | 0.93 |
| Jul | 0.96 | 0.97 | 0.91 |
| Aug | 0.97 | 0.94 | 0.94 |
| Sep | 0.94 | 0.98 | 0.94 |
| Oct | 0.99 | 0.95 | 0.97 (to Oct 23) |
| Nov | 1.01 | 1.07 | — |
| Dec | 0.99 | 1.04 | — |
Two things in that table dwarf anything a cleaning could do:
- January–February 2024 (0.585 for the two months): one of my three inverters was effectively offline until a fan replacement in February 2024. With that inverter at zero and everything else normal, my model predicts 0.584, a match to the third decimal. I estimate that cost about 1,700 kWh, roughly $200–240 of power.
- Summer 2026 (0.929 for June–September vs. 0.964 the year before): about 3.6% or 450 kWh low, months after the cleaning. My standalone inverter was replaced on June 25, 2026, but the measured before/after comparison shows no change from the swap, so the cause is still unknown (afternoon storms are my top suspect). October 1–23, 2026 is at 0.97, up from 0.92 a year earlier.
Weather beats dirt by a mile
For a sense of scale, on October 18, 2026 (cloudy) my system made 39.8 kWh; four days later, on a clear October 22, it made 93.5 kWh. One cloudy day moves output by more than half. A 1–3% cleaning effect simply disappears in that noise unless you compare against the weather, which is the whole point of the ratio above.
Panel aging is in the same boat. Comparing the same seasons year to year, my ratio drifts by about −1% a year, give or take 2–3%. That’s consistent with normal aging (about 0.5% a year for many panels) but I can’t pin it down yet.
How to run the same check on your system
You don’t need my weather model to do a rough version of this. Here’s the simple approach I’d use:
- Get a monthly “expected” number. NREL’s free PVWatts calculator gives typical monthly output for your address, roof direction and tilt. It uses typical weather rather than actual weather, so it’s noisier than my model, but it’s a start.
- Export your monthly production from your monitoring app for at least one full year.
- Divide actual by expected for each month. Don’t worry if the ratio isn’t 1.0. What matters is how it changes.
- Compare the same month across years, never March against February.
- Look for a step down that lasts. A single bad month is usually weather. Three or four low months in a row, with no inverter alerts, is when dirt (or a fault) is worth a look.
For me, that check said “don’t bother” before the cleaning, and the data afterwards agreed. I’ll keep checking each spring, after the dry season, and only book another cleaning if the ratio drops and stays down.
When cleaning might make sense
- Panels at a low tilt where dirt doesn’t wash off (mine are at 27°, which sheds rain well).
- Bird droppings, tree sap or construction dust — concentrated spots can shade whole cells.
- A long dry spell with visible buildup, or salt spray right on the coast.
- When your measured-vs-weather ratio drops and stays down for several months with no hardware problem.
Practical tips
- Measure first. Compare the same month across years before paying for a cleaning.
- Look, don’t climb. Binoculars from the yard tell you a lot. Walking on panels or a 27° roof isn’t worth the risk.
- Never use a pressure washer or harsh chemicals. Check your panel warranty for cleaning rules.
- Expect noise. App rounding alone can swing a month 2–3%.
- Fix hardware before dirt. One down inverter cost me far more than dirt ever could.