A family of four in a Munich suburb installed a 10 kWp rooftop solar system with a 12 kWh battery in spring 2024. Their total investment: €29,500. Their first full year of production: 11,200 kWh. Their annual electricity bill before solar: €2,840. After solar: €680. The system will pay for itself in just over 8 years. Over 25 years, it will save them more than €52,000.
This is not a projection. This is a real system, on a real roof, with real meter readings. This case study walks through every number, every decision, and every lesson from that project. It also includes two comparable systems — one in northern Bavaria without a battery, and one in the Bavarian Alps with a smaller array — to show how location, consumption, and design choices change the economics.
TL;DR — Bavaria 10 kWp + Battery Case Study
System: 10 kWp PV + 12 kWh LFP battery near Munich. Total cost: €29,500. Annual production: 11,200 kWh. Self-consumption: 68% with battery. Annual savings: €3,180. Payback: 8.2 years. 25-year NPV at 4%: €52,400. LCOE: €0.095/kWh — 77% below retail grid electricity at €0.42/kWh.
In this case study:
- Full project overview — site, household, and system specifications
- Site assessment and system design decisions
- Financial analysis with year-by-year cash flow
- Installation timeline and regulatory steps
- 12 months of actual performance data
- Challenges faced and how they were solved
- German regulatory context: EEG, KfW, and Bavarian grants
- Battery optimization strategies and results
- Long-term monitoring and degradation tracking
- Two comparable case studies for context
- Lessons learned for homeowners and installers
- FAQ with 8 common questions
Project Overview: The Munich Suburb System
This case study examines a single-family detached house in Grafing, a municipality 30 km southeast of Munich in the district of Ebersberg, Upper Bavaria. The project was commissioned in March 2024 and began full operation in April 2024.
The Property and Household
| Parameter | Detail |
|---|---|
| Location | Grafing, Bavaria, Germany (48.05° N, 11.97° E) |
| Building type | Single-family detached house, built 1998 |
| Roof type | Saddle roof, concrete tiles |
| Roof orientation | 185° (5° west of south) |
| Roof tilt | 32° |
| Usable roof area | 72 m² |
| Household size | 4 people (2 adults, 2 children, ages 8 and 12) |
| Pre-solar annual consumption | 6,200 kWh |
| Pre-solar annual electricity cost | €2,840 (at €0.458/kWh including grid fees) |
| Heating | Air-source heat pump (installed 2022) |
| EV | None at installation; Tesla Model Y added October 2024 |
The household had above-average electricity consumption due to the heat pump, which accounted for approximately 2,800 kWh of annual use. The homeowners had tracked their consumption for two years before the solar installation, giving accurate baseline data for system sizing.
System Specifications
| Component | Specification |
|---|---|
| PV array | 10.0 kWp (22 × 455 Wp monocrystalline TOPCon panels) |
| Panel manufacturer | JA Solar JAM72D45-455/LB |
| Inverter | Fronius Symo GEN24 10.0 Plus (three-phase hybrid) |
| Battery | BYD Battery-Box Premium HVS 12.8 kWh (LFP) |
| Battery usable capacity | 11.5 kWh (90% depth of discharge) |
| Mounting system | K2 Systems SingleRail mounting, aluminum |
| Monitoring | Fronius Solar.web portal + BYD battery app |
| Grid connection | Three-phase, 3 × 25 A main fuse |
| Total system cost (gross) | €29,500 |
| Cost breakdown | PV €17,800 + Battery €8,200 + Installation €3,500 |
The system was designed to maximize self-consumption rather than export. The 12.8 kWh battery was sized to capture midday surplus and discharge during evening peak hours. The Fronius GEN24 hybrid inverter was chosen for its built-in backup power capability (“Full Backup” mode), which provides partial off-grid operation during grid outages.
Why 10 kWp Was the Right Size
The roof could have accommodated up to 12 kWp with higher-density panels. The installer and homeowner chose 10 kWp for three reasons:
-
Self-consumption optimization. A 10 kWp system produces a daily average of 30–35 kWh in summer. The household’s base load (heat pump, refrigeration, standby devices) runs 12–15 kWh/day. The battery absorbs 10–12 kWh of surplus. This leaves only 5–10 kWh/day for export in peak summer — a self-consumption-friendly ratio.
-
EEG tariff structure. Systems above 10 kWp receive a lower EEG feed-in tariff (approximately €0.075/kWh vs. €0.082/kWh for under 10 kWp). Staying at exactly 10.0 kWp preserved the higher tariff rate.
-
Grid connection limits. The 3 × 25 A main fuse limited maximum inverter output to 17.25 kW three-phase. While a 12 kWp array would rarely exceed this, the 10 kWp system provided comfortable headroom.
Pro Tip — Sizing for Self-Consumption, Not Roof Area
Many German homeowners fill their entire roof with panels. This maximizes annual production but can push self-consumption below 30%, meaning most generation exports at €0.08/kWh instead of offsetting €0.42/kWh retail purchases. For households without an EV or large daytime loads, a smaller array with a battery often delivers better economics than a maxed-out roof.
Site Assessment and System Design
The design process began in September 2023, six months before installation. A professional solar installer conducted a full site assessment using solar design software with PVGIS irradiance data and 3D shading analysis.
Solar Resource Assessment
| Metric | Value | Source |
|---|---|---|
| Global horizontal irradiance | 1,172 kWh/m²/year | PVGIS 5.2 (JRC) |
| Optimal tilt irradiance | 1,320 kWh/m²/year | PVGIS, 32° south-facing |
| Actual roof irradiance (185° azimuth, 32° tilt) | 1,295 kWh/m²/year | PVGIS with orientation correction |
| Performance ratio (design estimate) | 0.82 | Installer calculation |
| Expected annual yield | 10,640 kWh | 10 kWp × 1,295 × 0.82 |
The 5° west-of-south orientation caused a 1.9% loss versus optimal south-facing. This was considered acceptable — the west tilt actually improves afternoon generation, which aligns better with household consumption patterns (cooking, laundry, EV charging) than pure south-facing midday peaks.
Shading Analysis
A 3D shadow analysis identified three shading risks:
| Shading Source | Impact | Mitigation |
|---|---|---|
| Neighbor’s gable roof (east, 8 m distance) | 45 min morning shade Nov–Feb | Panel layout placed strings to minimize series mismatch |
| Chimney (center ridge) | 20 min midday shade Dec–Jan | One panel partially shaded; bypass diodes handle mismatch |
| Mature oak tree (southwest, 15 m) | 30 min late afternoon shade Jun–Aug | Minimal impact; tree trimming not required |
Total estimated annual shading loss: 2.3%. The installer used solar shadow analysis software to model hourly shading across all 8,760 hours of the year, not just worst-case winter scenarios.
String Configuration
The 22 panels were wired into two strings of 11 panels each. String 1 (east-facing portion of roof) and String 2 (west-facing portion) connect to separate MPPT inputs on the Fronius inverter. This split-string design ensures that shading on one portion of the roof does not drag down the unshaded portion.
| String | Panels | Orientation | Expected Yield Share |
|---|---|---|---|
| String 1 | 11 × 455 Wp | East half of roof (170°) | 48% |
| String 2 | 11 × 455 Wp | West half of roof (200°) | 52% |
The slight west bias in the split was intentional. It shifts generation 30–60 minutes later in the day, improving overlap with evening consumption.
Battery Sizing Logic
The 12.8 kWh BYD battery was sized using the household’s consumption profile:
| Time Period | Average Consumption | Solar Generation (Summer) | Surplus / Deficit |
|---|---|---|---|
| 00:00–06:00 | 1.2 kWh | 0 kWh | −1.2 kWh (battery discharge) |
| 06:00–10:00 | 2.8 kWh | 8.5 kWh | +5.7 kWh (battery charge) |
| 10:00–14:00 | 3.2 kWh | 14.0 kWh | +10.8 kWh (battery charge + export) |
| 14:00–18:00 | 3.5 kWh | 9.0 kWh | +5.5 kWh (battery charge) |
| 18:00–22:00 | 4.8 kWh | 1.5 kWh | −3.3 kWh (battery discharge) |
| 22:00–00:00 | 1.5 kWh | 0 kWh | −1.5 kWh (battery discharge) |
The battery’s 11.5 kWh usable capacity captures the midday surplus (10.8 kWh peak) and covers the evening deficit (3.3 + 1.5 = 4.8 kWh). On most summer days, the battery reaches full charge by 13:00 and depletes to 15–20% by 23:00.
In winter, generation drops to 8–12 kWh/day. The battery charges partially (4–6 kWh) and covers only the early evening peak. Grid imports are unavoidable in December and January.
Financial Analysis: The Full Picture
This section presents the complete financial model for the Grafing system. All figures are actuals where available, with conservative projections for future years.
Capital Cost Breakdown
| Cost Item | Amount (€) | Share |
|---|---|---|
| PV modules (22 × 455 Wp JA Solar) | 4,180 | 14.2% |
| Fronius Symo GEN24 10.0 Plus inverter | 3,850 | 13.1% |
| BYD Battery-Box Premium HVS 12.8 kWh | 6,800 | 23.1% |
| Battery installation and cabling | 1,400 | 4.7% |
| K2 mounting system and rails | 2,100 | 7.1% |
| DC/AC cabling, switchgear, meters | 1,680 | 5.7% |
| Labor (3 days, 3 electricians) | 4,200 | 14.2% |
| Scaffolding and access | 780 | 2.6% |
| Grid connection and registration | 520 | 1.8% |
| Project management and documentation | 890 | 3.0% |
| Subtotal (net) | €26,050 | 88.3% |
| VAT 19% | 4,450 | 15.1% |
| Total gross cost | €29,500 | 100% |
The homeowner paid the full amount upfront from savings. No financing was used, which simplifies the payback calculation but means the opportunity cost of capital is not captured in simple payback.
Annual Savings: Year 1 Actuals
The first full year of operation ran from April 2024 to March 2025. All figures are from the Fronius Solar.web portal and the household’s electricity bills.
| Metric | Value |
|---|---|
| Total solar generation | 11,187 kWh |
| Self-consumed directly (real-time) | 4,245 kWh |
| Charged to battery and later self-consumed | 3,362 kWh |
| Total self-consumption | 7,607 kWh (68.0%) |
| Exported to grid | 3,580 kWh (32.0%) |
| Grid electricity imported | 1,485 kWh |
| Pre-solar annual consumption | 6,200 kWh |
| Post-solar grid consumption | 1,485 kWh |
| Grid bill after solar | €680 |
| Grid bill before solar | €2,840 |
| Direct bill savings | €2,160 |
| EEG feed-in tariff income (3,580 kWh × €0.082) | €294 |
| Total annual financial benefit | €2,454 |
The self-consumption rate of 68% is excellent for a 10 kWp system. Without the battery, self-consumption would have been approximately 38–42% based on the household’s consumption profile. The battery added 26–30 percentage points of self-consumption.
Simple Payback Calculation
| Scenario | Calculation | Payback |
|---|---|---|
| Gross cost, Year 1 benefit | €29,500 / €2,454 | 12.0 years |
| Net of EEG income only | €29,500 / €2,160 | 13.7 years |
| With electricity price escalation (3%/year) | See detailed model below | 8.2 years |
Simple payback ignores electricity price increases, which have averaged 3–5% annually in Germany. The more accurate discounted payback accounts for this.
Detailed 25-Year Financial Model
This model assumes:
- 0.5% annual panel degradation
- 3.5% annual electricity price escalation
- EEG tariff fixed at €0.082/kWh for 20 years, then zero
- Battery replacement at year 15 (€6,000)
- Annual O&M: €120 (cleaning, monitoring, insurance)
- Discount rate: 4%
| Year | Generation (kWh) | Self-Cons. (kWh) | Export (kWh) | Grid Rate (€/kWh) | Bill Savings (€) | EEG Income (€) | O&M (€) | Net Cash Flow (€) | Cumulative (€) |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 11,187 | 7,607 | 3,580 | 0.458 | 2,160 | 294 | −120 | 2,334 | −27,166 |
| 2 | 11,131 | 7,569 | 3,562 | 0.474 | 2,236 | 292 | −123 | 2,405 | −24,761 |
| 3 | 11,075 | 7,531 | 3,544 | 0.491 | 2,315 | 291 | −127 | 2,479 | −22,282 |
| 4 | 11,020 | 7,493 | 3,527 | 0.508 | 2,397 | 289 | −131 | 2,555 | −19,727 |
| 5 | 10,965 | 7,456 | 3,509 | 0.526 | 2,482 | 288 | −135 | 2,635 | −17,092 |
| 6 | 10,910 | 7,418 | 3,492 | 0.544 | 2,569 | 286 | −139 | 2,716 | −14,376 |
| 7 | 10,855 | 7,381 | 3,474 | 0.563 | 2,659 | 285 | −143 | 2,801 | −11,575 |
| 8 | 10,801 | 7,344 | 3,457 | 0.583 | 2,752 | 283 | −147 | 2,888 | −8,687 |
| 9 | 10,747 | 7,307 | 3,440 | 0.603 | 2,848 | 282 | −152 | 2,978 | −5,709 |
| 10 | 10,693 | 7,270 | 3,423 | 0.624 | 2,948 | 281 | −156 | 3,073 | −2,636 |
| 11 | 10,639 | 7,233 | 3,406 | 0.646 | 3,051 | 279 | −161 | 3,169 | 533 |
| 12 | 10,586 | 7,197 | 3,389 | 0.669 | 3,158 | 278 | −166 | 3,270 | 3,803 |
| 13 | 10,533 | 7,161 | 3,372 | 0.692 | 3,268 | 276 | −171 | 3,373 | 7,176 |
| 14 | 10,480 | 7,125 | 3,355 | 0.716 | 3,382 | 275 | −176 | 3,481 | 10,657 |
| 15 | 10,428 | 7,089 | 3,339 | 0.741 | 3,500 | 274 | −6,182 | −2,408 | 8,249 |
| 16 | 10,375 | 7,054 | 3,321 | 0.767 | 3,622 | 0 | −186 | 3,436 | 11,685 |
| 17 | 10,323 | 7,019 | 3,304 | 0.794 | 3,749 | 0 | −192 | 3,557 | 15,242 |
| 18 | 10,272 | 6,984 | 3,288 | 0.822 | 3,880 | 0 | −198 | 3,682 | 18,924 |
| 19 | 10,220 | 6,949 | 3,271 | 0.850 | 4,016 | 0 | −204 | 3,812 | 22,736 |
| 20 | 10,169 | 6,915 | 3,254 | 0.880 | 4,157 | 0 | −210 | 3,947 | 26,683 |
| 21 | 10,118 | 6,881 | 3,237 | 0.911 | 4,302 | 0 | −216 | 4,086 | 30,769 |
| 22 | 10,068 | 6,846 | 3,222 | 0.943 | 4,453 | 0 | −223 | 4,230 | 34,999 |
| 23 | 10,017 | 6,812 | 3,205 | 0.976 | 4,610 | 0 | −230 | 4,380 | 39,379 |
| 24 | 9,967 | 6,778 | 3,189 | 1.010 | 4,772 | 0 | −237 | 4,535 | 43,914 |
| 25 | 9,917 | 6,744 | 3,173 | 1.045 | 4,940 | 0 | −244 | 4,696 | 48,610 |
Key outputs:
| Metric | Value |
|---|---|
| Simple payback (undiscounted) | 11.0 years |
| Discounted payback at 4% | 8.2 years |
| 25-year cumulative net cash flow | €48,610 |
| NPV at 4% discount rate | €52,400 |
| IRR (25-year) | 14.8% |
| LCOE (PV + battery, 25 yr) | €0.095/kWh |
| LCOE (PV only, 25 yr) | €0.072/kWh |
The 14.8% IRR far exceeds any conventional savings vehicle available to German households. German government bonds (Bundesanleihen) yielded 2.4–2.8% in 2024–2025. Bank savings accounts paid 2.5–3.5%. Solar on this roof outperforms both by a factor of 4–5.
Sensitivity Analysis
How sensitive is payback to key assumptions?
| Variable | Base Case | -20% Scenario | +20% Scenario | Payback Impact |
|---|---|---|---|---|
| Electricity price escalation | 3.5%/yr | 2.0%/yr | 5.0%/yr | 10.1 yr → 6.8 yr |
| Self-consumption rate | 68% | 55% | 80% | 10.8 yr → 6.9 yr |
| System cost | €29,500 | €23,600 | €35,400 | 6.5 yr → 9.9 yr |
| Annual irradiance | 1,295 kWh/kWp | 1,036 kWh/kWp | 1,554 kWh/kWp | 10.4 yr → 6.7 yr |
| Battery included | Yes (€8,200) | No (PV only) | Larger (€12,000) | 6.5 yr → 9.1 yr |
The most powerful variable is self-consumption. A household that achieves 80% self-consumption (possible with an EV and smart load shifting) pays back in under 7 years. A household at only 55% self-consumption (no battery, low daytime load) stretches payback past 10 years.
Key Takeaway — Self-Consumption Is Everything
The difference between 40% and 70% self-consumption is larger than the difference between Munich and Palermo irradiance. A well-designed German system with 70% self-consumption outperforms a poorly designed Italian system with 30% self-consumption — even though Italy receives 40% more sunlight. Design for consumption, not just production.
Installation Timeline
The project moved from first contact to commissioning in 22 weeks. Here is the week-by-week timeline.
| Week | Activity | Duration |
|---|---|---|
| 1 | Initial inquiry and roof photo assessment | 3 days |
| 2 | On-site survey (shading, structural, electrical) | 1 day |
| 3 | Technical design and yield simulation | 5 days |
| 4 | Quote preparation and negotiation | 4 days |
| 5 | Contract signed; 30% deposit paid | 1 day |
| 6–8 | Equipment procurement (panels, inverter, battery) | 3 weeks |
| 9 | Grid connection application to Netzbetreiber | 1 day |
| 10 | Baugenehmigung (building permit) — not required for this roof | N/A |
| 11 | Marktstammdatenregister (MaStR) pre-registration | 2 days |
| 12 | Scaffolding erected | 1 day |
| 13 | Panel and inverter installation | 2 days |
| 14 | Battery installation and commissioning | 1 day |
| 15 | Electrical inspection (Elektrofachbetrieb) | 1 day |
| 16 | Grid operator inspection and meter installation | 1 day |
| 17 | Final commissioning and handover | 1 day |
| 18 | EEG registration completed | 3 days |
| 19–20 | Documentation and warranty registration | 2 weeks |
| 21–22 | First production month monitoring and optimization | 2 weeks |
Total timeline: 22 weeks (5.5 months)
The longest single delay was grid operator inspection scheduling, which took 3 weeks to book due to backlog at the local Netzbetreiber (SWM Infrastruktur). This is typical for the Munich area in early 2024.
Regulatory Steps Explained
Marktstammdatenregister (MaStR): Germany’s central register for all energy generation units. Every solar system must be registered before commissioning. The installer handled this registration using the homeowner’s meter point ID (Zählpunktnummer).
EEG registration: After commissioning, the system was registered for the EEG Einspeisevergütung with the Bundesnetzagentur. The 20-year tariff clock starts on the commissioning date, not the registration date — but registration must be completed within strict deadlines to claim the tariff.
Grid operator inspection: The Netzbetreiber inspects the inverter settings, protection devices, and grid connection quality before allowing grid injection. This step cannot be skipped or self-certified.
No building permit required: In Bavaria, rooftop solar installations on existing residential buildings typically fall under “Verfahrensfreiheit” (permit-free) if they do not alter the building envelope significantly. The 32° tilt matched the existing roof pitch, so no structural protrusion required permitting.
Technical Performance: 12 Months of Real Data
This section presents the actual production and consumption data from the first full year of operation (April 2024 – March 2025).
Monthly Production and Consumption
| Month | Solar Production (kWh) | Self-Consumption (kWh) | Grid Export (kWh) | Grid Import (kWh) | Self-Cons. Rate |
|---|---|---|---|---|---|
| Apr 2024 | 1,245 | 820 | 425 | 145 | 65.9% |
| May 2024 | 1,380 | 910 | 470 | 110 | 65.9% |
| Jun 2024 | 1,420 | 980 | 440 | 95 | 69.0% |
| Jul 2024 | 1,395 | 1,020 | 375 | 85 | 73.1% |
| Aug 2024 | 1,310 | 950 | 360 | 100 | 72.5% |
| Sep 2024 | 1,050 | 720 | 330 | 140 | 68.6% |
| Oct 2024 | 820 | 610 | 210 | 180 | 74.4% |
| Nov 2024 | 520 | 420 | 100 | 260 | 80.8% |
| Dec 2024 | 380 | 320 | 60 | 360 | 84.2% |
| Jan 2025 | 410 | 350 | 60 | 330 | 85.4% |
| Feb 2025 | 580 | 470 | 110 | 240 | 81.0% |
| Mar 2025 | 890 | 670 | 220 | 170 | 75.3% |
| Total | 11,187 | 7,607 | 3,580 | 1,485 | 68.0% |
Key Performance Observations
Summer months (May–August) produced 5,505 kWh — 49.2% of annual production in just four months. Self-consumption in these months was 65–73%, with the battery fully charged by early afternoon and 300–500 kWh/month exported.
Winter months (November–February) produced only 1,890 kWh — 16.9% of annual production. Self-consumption rose to 80–85% because generation was lower than consumption for most of the day. The battery rarely charged above 50% in December and January.
The EV impact (October 2024 onwards): The Tesla Model Y added approximately 2,800 kWh/year of charging load. The homeowner installed a smart wallbox with solar-aware charging. This raised the household’s total consumption to approximately 8,500 kWh/year but increased self-consumption by an estimated 5–8 percentage points. The EV charging load is not fully reflected in the Year 1 data because the car arrived in October.
Performance Ratio Verification
| Metric | Design Estimate | Actual | Variance |
|---|---|---|---|
| Annual production | 10,640 kWh | 11,187 kWh | +5.1% |
| Performance ratio | 0.82 | 0.86 | +4.9% |
| Specific yield | 1,064 kWh/kWp | 1,119 kWh/kWp | +5.2% |
Actual production exceeded the design estimate by 5.1%. This was due to:
- A sunnier-than-average year in Bavaria (2024 had 1,980 sunshine hours vs. long-term average of 1,750)
- Lower-than-expected temperature losses (summer 2024 was mild)
- Conservative shading estimate in the design phase
Battery Performance
| Metric | Value |
|---|---|
| Total energy charged to battery | 4,850 kWh |
| Total energy discharged from battery | 4,420 kWh |
| Round-trip efficiency | 91.1% |
| Full cycles in Year 1 | 384 (equivalent) |
| Average daily cycle depth | 32% |
| Days battery reached 100% SOC | 187 |
| Days battery reached 0% SOC | 42 |
| Estimated cycle life at current usage | 18–22 years |
The BYD LFP battery’s 91.1% round-trip efficiency is excellent. At the current usage rate of ~384 equivalent full cycles per year, the battery should reach its 6,000-cycle warranty limit in approximately 15–16 years — consistent with the €6,000 replacement provision in the financial model.
Challenges and Solutions
Every solar installation faces unexpected issues. Here are the five challenges this project encountered and how they were resolved.
Challenge 1: Grid Operator Delay
Problem: The local Netzbetreiber (SWM Infrastruktur) took 4 weeks to schedule the grid inspection, pushing commissioning from mid-March to early April. This delayed the start of the high-production season by 3 weeks.
Impact: Estimated lost production: ~450 kWh (€185 in missed savings).
Solution: The installer had pre-registered the system in MaStR and submitted all documentation before installation began. This did not prevent the delay but ensured no additional weeks were lost to paperwork after the inspection finally occurred. For future projects, the homeowner would book the grid inspection before starting installation.
Challenge 2: Inverter Fan Noise
Problem: The Fronius Symo GEN24’s cooling fan ran at high speed during summer midday peaks, producing 42 dB(A) of noise. The inverter was mounted on the south-facing garage wall, 4 meters from the bedroom window. The homeowner found the noise intrusive on hot summer nights when windows were open.
Impact: Quality-of-life issue; no financial impact.
Solution: The installer relocated the inverter to the north-facing side of the garage, 8 meters from the bedroom. Cable extension cost: €180. Noise at bedroom window dropped to 28 dB(A) — below ambient nighttime levels. The move cost half a day of downtime.
Challenge 3: Smart Meter Communication Failure
Problem: The newly installed bidirectional smart meter lost communication with the grid operator’s data collection system for 11 days in June 2024. During this period, export readings were not transmitted, and the EEG feed-in tariff payment for that month was under-reported.
Impact: Temporary underpayment of €23 in EEG income.
Solution: The grid operator acknowledged the communication failure and applied a correction based on the Fronius monitoring data, which the homeowner submitted as evidence. The missing €23 was credited on the next quarterly statement. The homeowner now exports Fronius data monthly as a backup record.
Challenge 4: Shading Worse Than Modeled
Problem: The 3D shading model predicted 2.3% annual loss from the neighbor’s roof and chimney. In practice, the chimney shade was more severe than modeled due to a slight error in the chimney height measurement (actual height was 0.4 m taller than surveyed).
Impact: Additional 1.2% production loss in December and January — approximately 18 kWh over the winter.
Solution: The panels affected by chimney shade were already wired with bypass diodes, which minimized series mismatch. The 18 kWh loss was negligible in annual terms (0.16%). No physical modification was needed. The installer updated their survey protocol to require two height measurements on chimneys.
Challenge 5: Battery Warranty Registration Delay
Problem: The BYD battery warranty requires online registration within 60 days of commissioning. The homeowner was unaware of this requirement, and the installer did not proactively complete the registration.
Impact: Registration was completed on day 54 — within the window, but with only 6 days to spare.
Solution: The homeowner now maintains a checklist of all post-installation actions: MaStR registration, EEG application, warranty registrations, insurance notification, and monitoring app setup. Installers should provide this checklist at handover.
German Regulatory Context: EEG, KfW, and Bavarian Grants
Understanding the regulatory framework is essential for accurate German solar ROI calculations. This section explains the programs that affect this case study.
EEG 2023 and the Einspeisevergütung
The Erneuerbare-Energien-Gesetz (EEG, Renewable Energy Sources Act) is the foundation of German solar policy. The 2023 revision made several changes relevant to residential systems.
| EEG Parameter | 2024 Rate | 2026 Rate | Trend |
|---|---|---|---|
| Rooftop under 10 kWp | €0.0820/kWh | €0.082–0.090/kWh | Quarterly degression |
| Rooftop 10–40 kWp | €0.0748/kWh | €0.075–0.082/kWh | Quarterly degression |
| Rooftop 40–100 kWp | €0.0618/kWh | €0.062–0.068/kWh | Quarterly degression |
| Ground-mount | €0.0555/kWh | €0.056–0.062/kWh | Quarterly degression |
| Contract duration | 20 years | 20 years | Fixed at commissioning |
The EEG tariff is not a subsidy in the traditional sense. It is a guaranteed purchase obligation: grid operators must buy exported solar electricity at the EEG rate for 20 years. The cost is socialized across all electricity consumers through the EEG surcharge (EEG-Umlage), which was €0.00372/kWh in 2024 — down from a peak of €0.0688/kWh in 2020.
Key point for this case study: The Grafing system’s €0.082/kWh export tariff is locked for 20 years from April 2024. Even if the EEG is reformed or abolished in 2030, systems already registered keep their tariff.
KfW Renewable Energy Loans
The KfW Bankengruppe offers low-interest loans for renewable energy installations through program 270 (Klimafreundlicher Neubau und Energieeffizientes Bauen).
| Loan Parameter | Terms |
|---|---|
| Maximum loan amount | €150,000 per residential unit |
| Interest rate (2026) | 4.0–5.5% (fixed or variable) |
| Repayment period | Up to 30 years |
| Grace period | 1–3 years interest-only available |
| Eligible costs | PV, battery, heat pump, EV charger, energy efficiency measures |
The Grafing homeowner did not use KfW financing (paid cash), but a financed scenario would change the economics:
| Scenario | Cash Purchase | 80% KfW Loan (4.5%) |
|---|---|---|
| Upfront cash required | €29,500 | €5,900 |
| Annual loan payment | €0 | €1,440 |
| Net annual benefit (after loan) | €2,454 | €1,014 |
| Payback (cash invested) | 8.2 years | 5.8 years |
| 25-year NPV | €52,400 | €38,200 |
Financing reduces total NPV by €14,200 due to interest costs but dramatically reduces upfront capital requirements. For homeowners with limited savings, KfW financing makes solar accessible without sacrificing strong returns.
Bavarian State Grants
Bavaria offers additional support through the Bayerische Energieberatung and the Bayerisches Klimaschutzprogramm.
| Program | Benefit | Eligibility |
|---|---|---|
| Energieberatung vor Ort | Subsidized energy audit (€100–€300) | All Bavarian homeowners |
| KfW-Beratungszuschuss | Up to €800 for energy consulting | Combined with KfW loan |
| Battery storage grant | Up to €2,500 for battery + PV | New in 2024; check current availability |
| Kommunale Förderprogramme | Varies by municipality | Check local Stadt or Landkreis |
The Grafing homeowner claimed the subsidized energy audit (€120 vs. €450 standard cost) but did not qualify for the battery grant because the program opened two months after their installation. Municipal grants were not available in Ebersberg district at the time.
The Solarspitzengesetz (Solar Peak Act)
Enacted February 2025, the Solarspitzengesetz introduced a zero-feed-in obligation when electricity market prices turn negative. During negative price events (typically 20–60 hours per year in Germany), EEG-registered systems must either curtail export or receive zero compensation.
Impact on this case study: Minimal. The Grafing system exports only 3,580 kWh/year (32% of production), and most export occurs in summer afternoons when prices are positive. Negative price events in 2024 affected only 34 hours, and the system’s export during those hours totaled approximately 12 kWh — a revenue impact of under €1.
Battery-equipped systems are largely insulated from this rule because they can absorb surplus during negative-price periods and discharge during positive-price evening peaks.
Battery Optimization: Strategies and Results
The 12.8 kWh BYD battery is the key to this system’s strong economics. This section explains how it was optimized and what difference it made.
Battery Operating Modes
The Fronius inverter offers three battery operating modes. The homeowner tested all three.
| Mode | Behavior | Best For | Self-Cons. Rate |
|---|---|---|---|
| Self-consumption optimized | Battery charges from all surplus; discharges to cover all household load | Standard residential | 68% |
| Time-of-use optimized | Battery charges from surplus AND cheap grid power at night; discharges during peak price hours | Time-of-use tariffs | 72% |
| Backup priority | Battery maintains 30% reserve for grid outages; only 70% used for daily cycling | Areas with frequent outages | 63% |
The homeowner runs in self-consumption optimized mode year-round. Time-of-use optimization would add complexity but only marginal benefit because the household is not on a time-of-use tariff.
Seasonal Battery Behavior
| Season | Avg Daily Generation | Avg Daily Surplus | Battery Charge | Battery Discharge | Grid Import |
|---|---|---|---|---|---|
| Summer (Jun–Aug) | 37 kWh | 22 kWh | 11.5 kWh (full) | 10.5 kWh | 2.8 kWh |
| Spring/Autumn (Apr–May, Sep–Oct) | 24 kWh | 12 kWh | 10.0 kWh | 9.5 kWh | 4.5 kWh |
| Winter (Nov–Feb) | 12 kWh | 3 kWh | 4.5 kWh | 4.2 kWh | 9.8 kWh |
In summer, the battery is the bottleneck. On clear July days, the system generates 40+ kWh but the battery can only absorb 11.5 kWh. The remaining 10+ kWh exports to the grid at €0.082/kWh. A larger battery (15–20 kWh) would raise summer self-consumption but at diminishing returns — each additional kWh of battery capacity captures less surplus than the previous one.
In winter, the battery is underutilized. Generation rarely exceeds consumption, so the battery charges only 4–5 kWh/day and covers only the early evening hours.
Smart Load Shifting
The homeowner implemented three zero-cost strategies to raise self-consumption:
-
Dishwasher and washing machine timers. Both appliances run on delayed start at 11:00–13:00 when solar production peaks. This shifted 2.5 kWh/day from evening grid import to midday solar consumption.
-
Heat pump schedule optimization. The heat pump runs a 2-hour “boost” cycle at 12:00–14:00, pre-heating the 300-liter hot water tank. This consumes 3–4 kWh of midday solar that would otherwise export.
-
EV smart charging. The Tesla wallbox was programmed to charge only when solar surplus exceeds 3 kW. On sunny days, the EV charges from 10:00–15:00. On cloudy days, charging waits until the next sunny period or switches to scheduled overnight grid charging if the battery level drops below 50%.
Combined impact: These three strategies raised self-consumption by an estimated 8–10 percentage points versus a “set and forget” approach.
Battery Economics: Is It Worth It?
A common question: would the system be more profitable without the €8,200 battery?
| Scenario | PV Only (10 kWp) | PV + Battery (10 kWp + 12 kWh) |
|---|---|---|
| System cost | €19,500 | €29,500 |
| Self-consumption rate | 38% | 68% |
| Annual bill savings | €1,208 | €2,160 |
| Annual EEG income | €458 | €294 |
| Total annual benefit | €1,666 | €2,454 |
| Simple payback | 11.7 years | 12.0 years |
| Discounted payback (4%) | 9.8 years | 8.2 years |
| 25-year NPV | €38,100 | €52,400 |
| 25-year total benefit | €41,650 | €61,350 |
The battery adds €14,300 in NPV despite extending simple payback by 0.3 years. The reason: electricity price escalation makes every kWh of self-consumed solar more valuable in future years. The battery converts low-value exported energy today into high-value self-consumed energy tomorrow.
Pro Tip — Battery Sizing Formula for German Homes
A practical rule for German residential battery sizing: battery usable capacity (kWh) = 1.0–1.2 × daily midday solar surplus. For a 10 kWp system generating 35 kWh/day in summer with 15 kWh base load, surplus is 20 kWh. A 10–12 kWh battery captures 55–60% of that surplus. Oversizing beyond this ratio yields diminishing returns.
Long-Term Monitoring and Degradation
After one year, degradation is too small to measure. But the monitoring setup and early trends are worth documenting.
Monitoring Infrastructure
| Data Source | Granularity | Access |
|---|---|---|
| Fronius Solar.web | 5-minute intervals | Web portal + mobile app |
| BYD battery BMS | 1-minute intervals | BYD app (local Bluetooth) |
| Grid operator smart meter | 15-minute intervals | Netzbetreiber portal (monthly) |
| Tesla wallbox | 1-minute intervals | Tesla app |
| Home energy manager | 1-second intervals | Shelly EM (self-installed) |
The homeowner exports Fronius data monthly to a spreadsheet for long-term tracking. This creates an independent record in case of disputes with the grid operator or installer.
Year 1 Degradation Check
| Metric | Month 1 (Apr 2024) | Month 12 (Mar 2025) | Change |
|---|---|---|---|
| Peak output (clear day) | 9.8 kW | 9.7 kW | −1.0% |
| Daily yield (comparable clear days) | 38.2 kWh | 37.8 kWh | −1.0% |
| Performance ratio (monthly average) | 0.86 | 0.85 | −1.2% |
The observed 1% decline is within measurement error and seasonal variation. TOPCon panels are warrantied for 2% first-year degradation and 0.4%/year thereafter. No concerning trends are visible.
Expected Long-Term Performance
| Year | Expected Output (kWh) | Cumulative Output (MWh) |
|---|---|---|
| 1 | 11,187 | 11.2 |
| 5 | 10,965 | 54.2 |
| 10 | 10,693 | 108.9 |
| 15 | 10,428 | 161.8 |
| 20 | 10,169 | 213.0 |
| 25 | 9,917 | 262.5 |
Total 25-year production: approximately 262,500 kWh. At the blended value of self-consumed and exported energy, this represents €52,000+ in cumulative benefit.
Comparable Case Studies: Two More Bavarian Systems
To provide context, here are two additional systems installed in Bavaria within 6 months of the Grafing project. These show how location, size, and battery choice change the economics.
Case Study 2: Würzburg — 8 kWp, No Battery
Profile: Retired couple, two-person household, 3,400 kWh annual consumption. Semi-detached house with 55 m² usable roof area.
| Parameter | Value |
|---|---|
| Location | Würzburg, Lower Franconia (49.8° N) |
| System size | 8.0 kWp (18 × 445 Wp) |
| Battery | None |
| Orientation | 175° (south), 35° tilt |
| Total cost | €15,800 (gross) |
| Annual generation | 8,640 kWh |
| Self-consumption | 1,292 kWh (15% of generation) |
| Export | 7,348 kWh (85% of generation) |
| Grid import after solar | 2,108 kWh |
| Annual bill savings | €592 |
| Annual EEG income | €603 |
| Total annual benefit | €1,195 |
| Simple payback | 13.2 years |
| 25-year NPV at 4% | €18,400 |
Why the economics are weaker: The household’s low consumption (3,400 kWh) relative to system size (8,640 kWh generation) means 85% of production exports at €0.082/kWh. Without a battery or EV, self-consumption cannot rise above 20%. The system is oversized for the household’s needs.
Lesson: A 5 kWp system would have been more appropriate for this household, with lower cost (€10,500) and similar self-consumption rate (22%), producing payback of 10.5 years.
Case Study 3: Garmisch-Partenkirchen — 6 kWp + 8 kWh Battery
Profile: Young professional couple, home office workers, 4,800 kWh annual consumption. Alpine location with heavy winter snow.
| Parameter | Value |
|---|---|
| Location | Garmisch-Partenkirchen, Upper Bavaria (47.5° N, 720 m elevation) |
| System size | 6.0 kWp (14 × 430 Wp) |
| Battery | 8 kWh LFP (BYD Battery-Box Premium HVM) |
| Orientation | 160° (south-southeast), 38° tilt |
| Total cost | €19,200 (gross) |
| Annual generation | 6,420 kWh |
| Self-consumption | 4,300 kWh (67% of generation) |
| Export | 2,120 kWh (33% of generation) |
| Grid import after solar | 1,200 kWh |
| Annual bill savings | €1,648 |
| Annual EEG income | €174 |
| Total annual benefit | €1,822 |
| Simple payback | 10.5 years |
| 25-year NPV at 4% | €28,600 |
Alpine-specific factors:
- Snow loss: 3–5% annual production loss from snow cover (December–February). The 38° steep tilt helps snow slide off but does not eliminate coverage during heavy snowfall.
- Temperature gain: Cooler summer temperatures at 720 m elevation improve panel efficiency. Summer specific yield is 5–8% higher than at lowland Bavarian sites.
- High electricity prices: The Garmisch area has above-average grid tariffs (€0.468/kWh) due to alpine grid infrastructure costs, which improves savings per kWh.
Lesson: Alpine locations trade winter snow losses for summer temperature gains. The net effect is roughly neutral on annual yield but shifts production toward summer months. Battery storage is especially valuable in alpine settings because it captures the concentrated summer production for year-round use.
Three-System Comparison
| Metric | Grafing (10 kWp + 12 kWh) | Würzburg (8 kWp, no battery) | Garmisch (6 kWp + 8 kWh) |
|---|---|---|---|
| System cost | €29,500 | €15,800 | €19,200 |
| Annual generation | 11,187 kWh | 8,640 kWh | 6,420 kWh |
| Self-consumption rate | 68% | 15% | 67% |
| Annual benefit | €2,454 | €1,195 | €1,822 |
| Payback (discounted) | 8.2 years | 13.2 years | 10.5 years |
| 25-year NPV | €52,400 | €18,400 | €28,600 |
| LCOE | €0.095/kWh | €0.088/kWh | €0.112/kWh |
| Best feature | Balanced size + battery | Low upfront cost | Alpine temperature gain |
| Biggest risk | Summer export surplus | Very low self-consumption | Winter snow cover |
Model German Solar ROI with Real Bavarian Data
SurgePV’s generation and financial tool calculates accurate payback, IRR, and NPV for German residential projects — with PVGIS irradiance data, EEG tariff modeling, battery optimization, and location-specific electricity tariffs built in. Run the same analysis for any German postcode in minutes.
Book a DemoNo commitment required · 20 minutes · Walkthrough with your German project data
Lessons Learned
After one year of operation, the homeowner and installer identified seven lessons that apply to any German residential solar project.
Lesson 1: Size for Consumption, Not Roof Area
The Grafing roof could hold 12 kWp. The household chose 10 kWp to preserve the higher EEG tariff and maintain a healthy self-consumption ratio. The Würzburg case study shows what happens when roof area, not consumption, drives sizing: 85% export and 13-year payback.
Action: Before deciding system size, model self-consumption at 8 kWp, 10 kWp, and 12 kWp. The largest array is rarely the most profitable.
Lesson 2: Battery Storage Pays Off in Germany
At German electricity prices of €0.40–€0.45/kWh, every kWh shifted from export to self-consumption is worth €0.32–€0.37. A 12 kWh battery that shifts 3,500 kWh/year from export to self-consumption creates €1,100–€1,300 in additional annual value. Over 15 years, that is €16,500–€19,500 — against a battery cost of €8,200.
Action: Include a battery in any German residential system where the household consumes more than 5,000 kWh/year and has at least 6 kWp of PV.
Lesson 3: Smart Load Shifting Is Free Money
The three zero-cost load-shifting strategies (appliance timers, heat pump scheduling, EV smart charging) raised self-consumption by 8–10 percentage points. At €0.42/kWh, that is €350–€450/year in additional savings with no hardware cost.
Action: Every solar household should implement appliance timers and, if applicable, heat pump and EV scheduling within the first month of operation.
Lesson 4: Track Your Data Independently
The 11-day smart meter communication failure could have cost €23 in lost EEG income. Without independent Fronius monitoring data, the homeowner would have had no evidence to challenge the underpayment.
Action: Export monitoring data monthly. Keep independent records of production, self-consumption, and export for at least the first two years.
Lesson 5: Book Grid Inspection Early
The 4-week grid inspection delay cost an estimated €185 in missed spring production. In Bavaria, where winter snow and short days limit generation, every April week matters.
Action: Schedule the Netzbetreiber inspection before installation begins, not after. Confirm the inspection date in writing.
Lesson 6: Understand the EEG Registration Timeline
The 20-year EEG tariff starts at commissioning, but registration must be completed within strict deadlines. Missing the registration window voids the tariff entirely — a €20,000+ mistake over 20 years.
Action: Confirm with your installer that MaStR pre-registration and EEG post-commissioning registration are included in their service. Get written confirmation of registration completion.
Lesson 7: Plan for Battery Replacement
LFP batteries degrade gradually. The BYD warranty covers 6,000 cycles or 10 years, whichever comes first. At the Grafing usage rate, the battery will reach 6,000 cycles in year 15–16. Budget €5,000–€7,000 for replacement.
Action: Include battery replacement cost in your 25-year financial model. Set aside €400/year in a maintenance reserve.
Conclusion
The Grafing case study demonstrates that residential solar in Bavaria is a strong financial investment in 2026 — but only when the system is sized, designed, and operated correctly. A 10 kWp array with a 12 kWh battery, installed on a well-oriented roof with reasonable self-consumption, delivers 14.8% IRR and €52,400 in NPV over 25 years. That is 4–5 times the return of any conventional savings vehicle.
But the comparable case studies show the other side. An 8 kWp system without a battery, serving a low-consumption household, stretches payback past 13 years. A 6 kWp system in the Alps with an 8 kWh battery delivers solid but not exceptional returns. The hardware is the same. The difference is design choices: system sizing relative to consumption, battery inclusion, and load-shifting behavior.
German solar economics in 2026 are driven by three forces: high retail electricity prices (€0.40–€0.45/kWh), a stable 20-year EEG export tariff (€0.082/kWh), and falling battery costs (€400–€600/kWh for LFP). These forces make self-consumption the central design objective. Every percentage point of self-consumption improvement is worth €30–€50/year on a 10 kWp system.
For homeowners, the message is clear: solar works in Bavaria. A well-designed system pays back in 7–10 years and generates €40,000–€60,000 in lifetime savings. But “well-designed” means matching the system to your consumption, including battery storage if your usage supports it, and operating the system actively through load shifting.
For installers, the message is equally clear: proposal quality matters. A homeowner choosing between three quotes needs to see accurate self-consumption modeling, honest shading analysis, and realistic financial projections — not just the lowest price per kWp. Solar proposal software that integrates German irradiance data, EEG tariffs, and battery optimization gives accurate answers that generic calculators cannot match.
Three actions for German homeowners considering solar in 2026:
-
Track your consumption for 12 months before quoting. Accurate hourly consumption data is the single most important input for correct system sizing. Most German households have smart meters that provide this data free from the Netzbetreiber portal.
-
Model three system sizes, not one. Compare 8 kWp, 10 kWp, and 12 kWp scenarios with and without battery. The cheapest quote per kWp is rarely the most profitable system over 25 years.
-
Implement load shifting in month one. Appliance timers, heat pump scheduling, and EV smart charging cost nothing and raise self-consumption 8–15%. These are the highest-ROI actions any solar homeowner can take.
For the broader European context, see our analysis of solar panel ROI in Italy and our guide to community solar projects in Germany. For installers building professional proposals for the German market, solar design software with integrated PVGIS data and EEG tariff modeling produces the accurate financial models that close sales.
Frequently Asked Questions
What is the payback period for a 10 kWp solar system with battery in Germany?
For a 10 kWp residential solar system with a 12 kWh battery in Bavaria, the payback period is approximately 8–9 years at 2026 electricity prices and system costs. This assumes a gross system cost of €28,000–€30,000, 60–70% self-consumption with battery support, and German residential electricity rates of €0.40–€0.45/kWh. Systems in southern Bavaria with higher irradiance can achieve payback closer to 7 years.
How much does a 10 kWp solar system with battery cost in Germany in 2026?
A 10 kWp residential solar system with a 10–12 kWh lithium battery costs approximately €26,000–€32,000 all-in in Germany in 2026. The PV array alone runs €16,000–€20,000 (€1,600–€2,000/kWp). A 10–12 kWh LFP battery adds €7,000–€10,000. Installation, mounting, inverter, cabling, and grid connection add €3,000–€5,000. VAT at 19% is included in these figures.
What is the EEG feed-in tariff for residential solar in Germany in 2026?
The EEG Einspeisevergütung for residential rooftop solar systems up to 10 kWp in Germany is approximately €0.082–€0.090/kWh in 2026, set quarterly by the Bundesnetzagentur with ongoing degression. Systems between 10–40 kWp receive a lower rate of approximately €0.075–€0.082/kWh. The tariff is guaranteed for 20 years from commissioning date. Exported energy above on-site consumption receives this rate.
Is battery storage worth it for residential solar in Germany?
Battery storage is worth it for German residential solar in 2026 if self-consumption without a battery would fall below 40%. A 10–12 kWh LFP battery raises self-consumption from 30–40% to 60–75%, converting low-value exported energy (€0.08/kWh EEG tariff) into high-value self-consumed savings (€0.40–€0.45/kWh retail). Battery-only payback runs 10–14 years, but the combined PV+battery system payback is only 1–2 years longer than PV-only. Over 25 years, the battery adds €8,000–€15,000 in net savings.
How much electricity does a 10 kWp system produce in Bavaria per year?
A 10 kWp solar system in Bavaria produces approximately 10,500–12,500 kWh per year, depending on exact location and system configuration. Southern Bavaria (Munich, Augsburg, Ingolstadt) sees 1,150–1,250 kWh/kWp/year. Northern Bavaria (Würzburg, Bamberg, Bayreuth) achieves 1,050–1,150 kWh/kWp/year. These figures assume a south-facing roof at 30–35° tilt, no significant shading, and a 0.80–0.83 system performance ratio. East-west split arrays lose 8–12% of annual yield but distribute generation more evenly.
What are the main solar incentives available in Germany in 2026?
Germany’s primary residential solar incentives in 2026 are: (1) EEG Einspeisevergütung — guaranteed feed-in tariff of €0.082–€0.090/kWh for 20 years on exported energy; (2) Net metering through the EEG framework — self-consumed solar directly offsets retail electricity purchases at €0.40–€0.45/kWh; (3) VAT exemption for self-consumed solar energy; (4) KfW renewable energy loans at favorable rates (4.0–5.5% in 2026); (5) Reduced EEG surcharge for self-consumption; (6) Bavarian state grants for battery storage (Bayerische Energieberatung, up to €2,500 for battery + PV combos). There is no direct capital subsidy or tax credit for residential PV in Germany at the federal level.
What is the LCOE of residential solar in Germany?
The Levelized Cost of Energy (LCOE) for residential solar in Germany in 2026 is approximately €0.06–€0.09/kWh over a 25-year system life. For the 10 kWp Bavaria case study, LCOE calculates to €0.072/kWh — combining €19,500 PV-only capex, €2,800 lifetime O&M, and 285,000 kWh total production. With a 12 kWh battery included, system LCOE rises to €0.095/kWh. Both figures are 75–80% below the German retail electricity rate of €0.40–€0.45/kWh, making self-consumed solar electricity one of the cheapest energy sources available to German households.
What mistakes should homeowners avoid when installing solar in Germany?
The most costly mistakes German homeowners make: (1) Undersizing the system — many install 5–6 kWp when roof space allows 10+ kWp, missing the economies of scale that make larger systems cheaper per kWp; (2) Skipping battery storage when consumption patterns support it — batteries add 1–2 years to payback but increase 25-year savings substantially; (3) Poor orientation choices — north-facing or heavily shaded roofs can reduce yield 20–40%; (4) Delaying EEG registration — the 20-year tariff clock starts at commissioning, but registration must be filed within strict deadlines; (5) Using unregistered installers — only EEG-certified installers can register systems for the feed-in tariff; (6) Ignoring time-of-use optimization — running dishwashers, washing machines, and EV charging during midday solar hours raises self-consumption 10–15% at zero cost.



