Stain Or Streak Under Panels On Roof Leak vs Soiling Runoff Decision Tree

Why this matters

A stain or streak on the roof under a panel array triggers an immediate leak fear, and on a solar job the liability is yours because you penetrated that roof. But most staining under panels is not a leak: it is concentrated runoff carrying dust, pollen, and oxidized metal from module frames and rails, deposited in the drip line below the array. The job is to distinguish cosmetic soiling runoff from actual water intrusion at a mount penetration, because one is a wash-and-monitor and the other means pulling modules and re-flashing before a ceiling stain shows up indoors. Misreading a real leak as "just soiling" is how a callback becomes a drywall-and-insulation claim.

Symptom presentation

  • Vertical streaks or fan-shaped stains on the roof surface below module edges, especially below frame corners and rail ends, are classic soiling runoff. They follow the water path off the array, not the penetration locations.
  • A localized dark/discolored patch around a specific mount or flashing, with the underlayment or deck visibly wet or rotted, indicates intrusion at that penetration.
  • Interior signs: a ceiling stain, attic moisture, or daylight at a penetration confirm a leak path, not surface soiling.
  • White/chalky or rusty streaks are typically frame/rail oxidation runoff (cosmetic). Black organic streaking can be algae unrelated to the array.

Quick checks

  1. Map the stain pattern against array geometry. Stains aligned with module drip edges and rail ends, well away from penetrations, read as runoff. Stains centered on mounts read as suspect penetrations.
  2. Inspect from the attic/underside if accessible. Dry decking under a surface stain confirms cosmetic. Wet or stained decking, rusted fasteners, or sagging underlayment confirms intrusion.
  3. Check the flashing at the nearest upslope penetration: lifted, reverse-lapped, cracked sealant, or a mount set without a flashing all create leak paths.
  4. Note recent weather. A stain that appears or worsens after wind-driven rain points to a flashing/lap failure; a stain stable across dry and wet spells points to deposited soiling.

Isolation tree

Step 1: Is there any interior or underside evidence of water? Yes (ceiling stain, wet decking, attic moisture, rusted fasteners from below): treat as a confirmed or probable leak; go to Step 4. No interior/underside evidence goes to Step 2.

Step 2: Does the stain pattern track the water drip path or the penetrations? Tracks drip edges/rail ends, away from mounts: probable soiling runoff; go to Step 3. Centered on or downslope of specific penetrations: suspect those penetrations; go to Step 4 even without interior evidence, because a slow leak may not have reached the interior yet.

Step 3 (soiling branch): Confirm cosmetic. Wash a test area. If the stain lifts or fades to bare roof and the decking below is dry, it is deposited soiling/oxidation runoff. Identify the source (frame oxidation, organic debris, pollen) and confirm no fastener corrosion is contributing. Cosmetic staining is a cleaning and expectation-setting item, not a repair.

Step 4 (leak branch): Localize and verify the penetration. Inspect each suspect mount: is there a proper flashing, is it correctly lapped under the upslope course, is the sealant intact, is the fastener seated and not over-driven? A controlled water test (hose upslope of the suspect mount, observer underneath) can reproduce intrusion at the failing point. Mark every mount that admits water. Check whether the leak is at the flashing, at the fastener penetration, or at a cracked tile/lifted shingle disturbed during install.

Confirming diagnosis

  • Soiling runoff confirmed when washing removes the stain, decking is dry, no fastener corrosion, and the pattern follows drip paths.
  • Penetration leak confirmed when a water test reproduces intrusion at a specific mount, or when underside decking is wet/rotted at that location and flashing is defective.
  • Roofing defect unrelated to mounts confirmed when intrusion localizes to a cracked tile/shingle or a roof feature the array did not penetrate; coordinate with the roofer.

Remediation

  • Soiling/oxidation runoff: clean the affected area, advise the owner it is cosmetic, and address the source if practical (debris removal, accepting frame oxidation as normal). No roof repair needed.
  • Penetration leak: pull the affected module(s), correct the flashing (proper under-lap, fresh compatible sealant, correct fastener depth), and re-test before reinstalling. Document the repair with photos.
  • Decking damage: replace wet/rotted sheathing and underlayment, re-flash, and re-mount. Do not reinstall over compromised decking.
  • Refer non-array roofing defects to the roofing trade to preserve any roof warranty.

Working a leak repair means pulling modules and working at height on a roof that may be wet and slick. Use fall protection and follow roof-access safety. The array DC is energized in daylight; isolate the affected modules and verify rapid shutdown before disconnecting any wiring to lift a module. Do not walk on energized or damaged modules.

References

  • IEC 62446-1, Photovoltaic (PV) systems - Requirements for testing, documentation and maintenance
  • NEC (NFPA 70) Article 690.31, Wiring Methods
  • NEC (NFPA 70) Article 690.12, Rapid Shutdown of PV Systems on Buildings
  • UL 3741, Photovoltaic Hazard Control