PureWatts AI

    Solar energy assistant

    📍 Home

    Hi there! 👋

    I'm your PureWatts AI assistant. Ask me anything about solar energy, system sizing, or how to use the platform.

    Skip to content

    Oyo State

    Rooftop solar in Atisbo, Oyo: what the roofs are worth

    Atisbo has 37,723 buildings with a viable rooftop and 449k kWp of roof capacity. 100% run a generator, and together they spend ₦74.3bn a year on energy.

    Viable buildings

    37,723

    Usable roof area

    2.01m m²

    449k kWp roof capacity

    Energy spend

    ₦74.3bn/yr

    69.8m kWh/yr burned on generators

    Median payback

    1.9 yr

    Median IRR 57% (cash saved)

    The savings bracket for Atisbo

    Approach B

    Cash saved

    What these buildings stop paying — merit order, capped at current spend.

    Current energy spend₦74.3bn/yr
    Year-one cash saved₦72.4bn
    Lifetime cash saved₦3.13tn
    NPV₦524bn
    Median IRR57%
    Median payback1.9 yr
    Unlocked energy46.6m kWh/yr
    Approach A

    Energy value (upper bracket)

    What the energy is worth if full latent demand were met. Not cash saved.

    Installed capacity178k kWp
    Capex₦173bn
    Year-one energy value₦185bn
    Lifetime energy value₦8.57tn
    NPV₦1.49tn
    Median IRR117%
    Median payback0.9 yr

    Three ways to size Atisbo's rooftops

    Solar + battery. The default headline scenario, and the one the SEO fact base quotes. Prices the energy a full solar+storage system would deliver.

    Baseline: mixed
    Counterfactual: grid when available, generator otherwise, weighted by the NTL-derived grid availability. The realistic case, and what the headline numbers use. Always falls between grid and genset by construction.

    Read with care: Sized to LATENT demand — the energy the building would use if it could. Against a cash baseline that only reflects today's spend this looks oversized; that is what sc3 exists to fix.

    System size
    178k kWp
    Capital cost
    ₦173bn
    Year 1 savings
    ₦185bn/yr
    NPV
    ₦1.49tn
    Median IRR
    117%
    Median payback
    0.9 yr

    How many rooftops in Atisbo actually pay

    Counted building by building on the cash-saved basis (merit-order sized, valued against what the building spends today), not read off an average. 37,723 of 37,723 clear a positive NPV.

    Payback

    Under 3 years31,658 (84%)
    Under 5 years37,723 (100%)
    Under 7 years37,723 (100%)
    Under 10 years37,723 (100%)

    Return (IRR)

    Above 10%37,723 (100%)
    Above 15%37,723 (100%)
    Above 20%37,723 (100%)
    Above 25%37,723 (100%)
    CO₂ avoided

    126m kg/yr

    Fuel avoided

    43.4m L/yr

    Energy unlocked

    46.6m kWh/yr

    Demand that is suppressed today

    People served

    218k

    What hardware costs right now

    Median advertised rates from our Nigerian market tracker — the same prices used to cost a system in Atisbo.

    Solar panels

    250

    ₦/W

    Inverters

    127,419

    ₦/kVA

    Batteries

    177,500

    ₦/kWh

    Building mix in Atisbo

    Load profile

    SegmentBuildings With generator Spend ₦/yr Cash saved yr 1 (B) Median IRR Median payback
    Residential36,69636,696₦65.4bn₦64.1bn57%1.9 yr
    Commercial General444444₦5.86bn₦5.75bn65%1.6 yr
    Anchor204204₦2.49bn₦2.05bn83%1.4 yr
    Commercial Retail155155₦137m₦137m65%1.6 yr
    Worship9999₦97m₦96.8m55%1.9 yr
    Industrial7979₦209m₦177m53%2.1 yr
    Filling Station1616₦45m₦44.5m63%1.6 yr
    Productive Use1515₦2.56m₦2.56m55%1.9 yr
    Hospitality1313₦16.7m₦16.7m55%1.9 yr
    Mall Retail22₦11.5m₦11.5m65%1.6 yr

    Roof size band

    SegmentBuildings With generator Spend ₦/yr Cash saved yr 1 (B) Median IRR Median payback
    Under 30m220,15220,152₦768m₦754m49%2.1 yr
    100 250m26,5896,589₦39.4bn₦38.4bn75%1.4 yr
    30 50m24,8594,859₦1.18bn₦1.16bn55%1.9 yr
    50 100m24,5344,534₦5.02bn₦4.89bn65%1.6 yr
    250 1000m21,5631,563₦25.6bn₦24.9bn75%1.4 yr
    Over 1000m22626₦2.41bn₦2.3bn75%1.4 yr

    Settlement type

    SegmentBuildings With generator Spend ₦/yr Cash saved yr 1 (B) Median IRR Median payback
    Unclassified23,31723,317₦15bn₦14.1bn49%2.1 yr
    Dense Urban8,9408,940₦39.1bn₦38.4bn75%1.4 yr
    Rural3,2933,293₦5.13bn₦5.09bn69%1.6 yr
    Urban2,1732,173₦15.1bn₦14.8bn77%1.4 yr

    Lead segment

    SegmentBuildings With generator Spend ₦/yr Cash saved yr 1 (B) Median IRR Median payback
    Standard37,16637,166₦67bn₦65.6bn57%1.9 yr
    SME High282282₦4.6bn₦4.54bn65%1.6 yr
    Enterprise275275₦2.69bn₦2.22bn73%1.4 yr

    Demand tier

    SegmentBuildings With generator Spend ₦/yr Cash saved yr 1 (B) Median IRR Median payback
    0.021,48721,487₦584m₦584m
    3.08,3638,363₦60.2bn₦59bn
    2.03,9193,919₦6.84bn₦6.19bn
    1.02,3282,328₦1.2bn₦1.17bn
    4.01,6231,623₦5.1bn₦5.06bn
    5.033₦362m₦345m

    Nearby LGAs in Oyo

    How these numbers are produced

    Approach A — energy value (upper bracket)

    Sizes the system to the building's full latent demand and values that energy at the mixed grid/generator tariff. It answers what the energy is worth — not what anyone currently pays.

    Approach B — cash saved (lower bracket)

    Sizes the system to demand that is actually served today, values it by merit order (solar displaces generator kWh first) and caps it at current spend. It answers what a building stops paying.

    Cohort: Viable rooftops (≥0.6 kWp potential).

    • Demand is modelled latent demand, not metered consumption.
    • Fuel is priced at ₦1,800/litre (operator-set). NBS reported ₦3,277/litre for May 2026 — on that basis every naira figure here is roughly 1.8× understated.
    • Generator ownership is a model output, not a survey result: it follows from the grid-availability scale and the 25% demand-suppression assumption.
    • Approach A prices energy nobody currently buys. Its savings must never be read as cash saved.
    • Demand is MODELLED LATENT demand, not metered consumption.
    • Generator ownership is model output, not survey.
    • Medians do not combine across groups — re-derive from the histograms.
    • Per-building files are float32 with 4 significant figures; cast to float64 before summing, because polars keeps Float32 sums in Float32.
    • Null scenario fields mean the roof cannot host 0.6 kWp, not zero savings.
    • `genset` was previously named `diesel` and now uses the segment's real fuel.
    • Ordering holds by construction: grid savings < mixed < genset.