Talk to an Engineer →
Structural · NSCP 2015 · Commercial · Philippines

Rooftop Solar on Commercial Roofs: The Structural Check NSCP 2015 Requires

Solar panels mounted on rails across the metal roof of a Philippine commercial building

The panels are rarely the weak link. The purlin, the fastener and the connection below it usually are. Illustrative photo.

☀️
AEDO Engineering
AEDO Construction OPC, PRC-licensed civil engineers. Every NSCP 2015 equation, coefficient and table value on this page was read from the code text for this article; panel weights, cost figures and installation practice notes are labelled as AEDO's own estimates or practice observations.

Short answer: NSCP 2015 has no solar-panel clause. A rooftop photovoltaic array is designed as rooftop structures and equipment under Section 207D, whose scope (§207D.1.1) expressly covers "building appurtenances (such as rooftop structures and rooftop equipment)". For a building with a mean roof height of 18 m or less, §207D.5.1 gives the two forces that decide the whole job: a vertical uplift Fv = qh(GCr)Ar with GCr starting at 1.5, and a lateral force Fh = qh(GCr)Af with GCr starting at 1.9.

The weight of the panels is almost never the governing problem. Uplift is. The calculator below runs the code equations for your roof and array so you can see the anchor force before the racking vendor's standard layout gets bolted to a purlin that was never asked to resist it.

Free Tool · By AEDO Construction

Rooftop Solar Wind Uplift & Roof Load Checker

Runs NSCP 2015 Equations 207D.3-1, 207D.5-2 and 207D.5-3 on your array. Gives velocity pressure, uplift and lateral force, added dead load and the force at each anchor — a design-review sense check, not a sealed calculation.

Roughly 5.5–6.5 m² per kWp for current crystalline modules
Sets the vertical projected area Af that catches lateral wind
§207D.5.1 applies to buildings with h ≤ 18 m
From the NSCP map for your occupancy category — Fig. 207A.5-1A, 1B or 1C
1.0 unless the building sits on a hill, ridge or escarpment (§207A.8)
Read yours from NSCP Table 207A.6-1 — 0.85 is pre-filled only as a placeholder
Use the actual module datasheet and racking weight — 18 is an AEDO placeholder
From the racking layout — this is what turns a pressure into a bolt force
What this is and isn't. It applies the NSCP 2015 Section 207D equations and coefficients literally, at strength level, for a building with h ≤ 18 m. It does not check your purlin, truss, connection or anchor capacity, does not run the full load combinations of Section 203, does not handle roofs higher than 18 m, and does not replace a sealed design by a licensed civil or structural engineer.
Putting solar on an existing commercial roof? Send us the roof framing plan (or photos and a measure-up) with the intended array layout, and we'll check the members, the connections and the anchorage against these forces. Get the roof checked →

1. The Section That Actually Governs

Ask three installers which code clause covers their mounting system and you will often get three answers, none of them a clause. Here is what NSCP 2015 actually says.

Section 207D — Wind Loads on Other Structures and Building Appurtenances (MWFRS). Its scope, §207D.1.1, states that the section "applies to the determination of wind loads on building appurtenances (such as rooftop structures and rooftop equipment) and other structures of all heights… using the Directional Procedure." Table 207D.1-1, which lists the steps, sends you to Equations 207D.6-1 and 207D.6-2 for rooftop structures and equipment at Step 7, and to Figure 207D.5-1 for the force coefficient at Step 6.

Section 207D.5.1 — Rooftop Structures and Equipment for Buildings with h ≤ 18 m. This is the one that matters for almost every Philippine commercial rooftop:

ForceEquationCoefficient (GCr)
Lateral force on the arrayFh = qh(GCr)Af  (207D.5-2)1.9 for Af < 0.1Bh; may be reduced linearly from 1.9 to 1.0 as Af rises from 0.1Bh to Bh
Vertical uplift on the arrayFv = qh(GCr)Ar  (207D.5-3)1.5 for Ar < 0.1BL; may be reduced linearly from 1.5 to 1.0 as Ar rises from 0.1BL to BL
Velocity pressureqz = 0.613 KzKztKdV²  (207D.3-1)V in m/s; qh is qz evaluated at mean roof height

Af is the vertical projected area of the equipment on a plane normal to the wind; Ar is the horizontal projected area. The velocity pressure exposure coefficient is Kz = 2.01(z/zg)2/α for 4.57 m ≤ z ≤ zg, with α and zg from Table 207A.9-1: Exposure B α = 7.0, zg = 365.76 m; Exposure C α = 9.5, zg = 274.32 m; Exposure D α = 11.5, zg = 213.36 m.

Why the Coefficients Are So Large

A GCr of 1.9 looks brutal next to the pressure coefficients used for the roof itself — and the code's own commentary explains why. Because rooftop equipment is small compared with the building it sits on, the wind force is expected to be higher than a building-scale calculation predicts, thanks to "higher correlation of pressures across the structure surface, higher turbulence on the building roof, and accelerated wind speed on the roof." The commentary also notes that research showed high uplifts on the top of rooftops, which is why uplift is treated separately. Your array is not sheltered by being small; it is penalised for it.

A Judgment Call the Code Leaves to Your Engineer

§207D.5.1 was written with discrete rooftop units in mind — condensers, tanks, penthouses. Applied literally to a large, low-profile array lying a few centimetres above the roof sheet, it gives a conservative, fairly heavy uplift, which is what the calculator below shows. Because NSCP 2015 has no provision written for flush-mounted photovoltaic arrays, designers also look at the roof's own components-and-cladding pressures under §207E, and some use later international guidance written specifically for solar. Which basis governs is an engineering decision that should be stated in writing on the design, not buried in a vendor datasheet — and "the racking manufacturer said it's fine" is not a basis.

2. The Load Path Nobody Draws

Uplift does not stop at the panel clamp. It travels: panel → rail → L-foot or standoff → fastener into the purlin → purlin-to-truss connection → truss → column → footing. Every link has to carry it, and in a retrofit the two weakest links are almost always the fastener into the purlin and the purlin-to-truss connection, neither of which was designed for a net upward force.

Figure: The Uplift Load Path Through an Existing Roof One bolt at a time: where Fv actually ends up Array — Ar horizontal, Af vertical projection Fvuplift = qh(GCr)Ar Roof Fastener pull-out from the purlin — weak link 1 Purlin-to-truss connection — weak link 2 Column → footing: net uplift can put a footing into tension it was never sized for Lateral Fh = qh(GCr)Af is resisted by the same connections, sideways
A 300 m² array on a windy site can generate tens of kilonewtons of net uplift. Divided across a hundred-odd anchors it looks small per bolt — until the anchors are spaced by a vendor's standard layout rather than by the calculation.

3. Weight Is the Easy Part

A framed crystalline module with rails and clamps typically adds a dead load in the region of 0.15 to 0.25 kPa over the array footprint — modest against, for example, the 0.60 to 1.00 kPa of roof live load that NSCP Table 205-3 applies to flat roofs by tributary area. That is why "can my roof take the weight" is usually the wrong question, and why a roof that passes a weight check can still fail in a typhoon.

Two weight cases do deserve attention. Ballasted flat-roof systems, which resist uplift with concrete blocks instead of penetrations, can multiply the dead load several times over — that trade is between roof penetrations and roof loading, and it has to be checked on the slab, not assumed. And concentrated loads at each foot: the array's weight and uplift arrive at discrete points, which is a different check from a uniform pressure, the same distinction NSCP draws in §205.3.3 for equipment loads on floors.

What AEDO does on a rooftop PV project. Nationwide, AEDO does the structural side: a capacity check of the existing roof framing against the §207D forces, the anchorage and connection design, the reinforcement scheme where members fall short, and a review of the racking vendor's layout against what the code actually requires for your site's wind speed and exposure. In Negros Oriental, AEDO can also carry out the structural works.

4. Detailing: The Two Failures We Actually See

Neither is a code citation — both are practice observations from inspecting installed systems. They are here because they are what the next inspection finds.

5. The Regulatory Side, Briefly

Grid-connected rooftop solar in the Philippines rests on Republic Act No. 9513, the Renewable Energy Act of 2008, whose Section 10 obliges distribution utilities to enter into net-metering agreements with qualified end-users. The implementing rules came through ERC Resolution No. 09, Series of 2013, which set up the net-metering program with a 100 kW ceiling, and the program has since been amended by Department of Energy circulars — including DC2020-10-0022 (2020) and DC2024-08-0025 (2024). Because the eligibility cap and the commercial arrangements have been revised more than once, confirm the current rules with your distribution utility and the DOE rather than with any guide, this one included. On the building side, adding equipment and load to an existing structure is work the local Office of the Building Official expects to see under PD 1096.

Where These Figures Come From

Section 207D.1.1 (scope), Table 207D.1-1 (steps), Section 207D.3.2 / Equation 207D.3-1 (velocity pressure), Section 207D.5.1 with Equations 207D.5-2 and 207D.5-3 and their GCr values, the Kz expression, Table 207A.9-1 terrain exposure constants, Figure 207A.5-1A's notes and Table 205-3 roof live loads were read directly from NSCP 2015, Volume I, 7th Edition (ASEP) for this article. Module and racking weights, the 5.5–6.5 m²/kWp array-area figure, and the detailing observations are AEDO's own estimates and field practice, not code values. The RA 9513 / ERC / DOE references are regulatory context, not verified against the current circular text — confirm the live rules with your distribution utility.

Frequently Asked Questions

Does NSCP 2015 have a section for solar panel wind loads?

Not a solar-specific one. Section 207D covers wind loads on other structures and building appurtenances, and §207D.1.1 states that it applies to building appurtenances such as rooftop structures and rooftop equipment. A rooftop array is designed under that heading, using §207D.5.1 for buildings with a mean roof height of 18 m or less. Anyone quoting you a solar-panel clause number in NSCP 2015 is quoting something that does not exist there.

How is wind uplift on a rooftop solar array calculated under NSCP 2015?

Vertical uplift is Fv = qh(GCr)Ar, with GCr = 1.5 for Ar < 0.1BL, reducible linearly from 1.5 to 1.0 as Ar increases from 0.1BL to BL. Lateral force is Fh = qh(GCr)Af, with GCr = 1.9 for Af < 0.1Bh, reducible linearly from 1.9 to 1.0 as Af increases from 0.1Bh to Bh. Velocity pressure comes from qz = 0.613 KzKztKdV², with V in metres per second.

Can my existing roof carry solar panels?

It has to be checked, and the governing case is usually not the weight. A framed crystalline array with rails typically adds roughly 0.15 to 0.25 kPa, which many roofs absorb. The wind uplift is the problem: the array is a new surface the roof was never designed to hold down, the force concentrates at a finite number of anchors, and the fastener pull-out and purlin-to-truss connection are what actually fail. Get the original framing drawings, or a measure-up and capacity check, before the layout is fixed.

What is the biggest mistake in Philippine rooftop solar installations?

Treating the mounting system as a roofing job rather than a structural one — vendor-standard anchor spacing instead of a spacing derived from the site's wind speed, purlins sized only for sheet and roof live load, and sealant with a shorter life than the panel warranty. All three show up in the first strong typhoon, and the damage is usually to the roof rather than the panels.

Do I need a permit for rooftop solar in the Philippines?

Expect three tracks: the structural and electrical works with the local Office of the Building Official under PD 1096, the grid connection with your distribution utility, and net metering under RA 9513 as implemented by ERC Resolution No. 09, s. 2013 and amended by DOE circulars including DC2020-10-0022 and DC2024-08-0025. The cap and commercial terms have changed more than once — confirm the current position with your utility.

Sources

Code provisions and references used in this article.

  • National Structural Code of the Philippines 2015 (NSCP 2015), Volume I, 7th Edition, ASEP — Section 207D.1.1 (scope: rooftop structures and rooftop equipment); Table 207D.1-1 (steps, incl. Equations 207D.6-1/207D.6-2 for rooftop structures and equipment); Section 207D.3.2, Equation 207D.3-1 (velocity pressure); Section 207D.5.1 with Equations 207D.5-2 and 207D.5-3 and the GCr values of 1.9 and 1.5 and their linear reductions, plus the accompanying commentary on why rooftop equipment forces exceed building-scale predictions.
  • NSCP 2015, Section 207B.3.1 / Commentary C207B.3-1 — Kz = 2.01(z/zg)2/α for 4.57 m ≤ z ≤ zg; Table 207A.9-1 terrain exposure constants (B: α 7.0, zg 365.76 m; C: 9.5, 274.32 m; D: 11.5, 213.36 m).
  • NSCP 2015, Figure 207A.5-1A — basic wind speeds for Occupancy Category III, IV and V, 3-second gust at 10 m for Exposure C, MRI 300 years, results from PAGASA. Categories I and II use Figures 207A.5-1C and 1B respectively. See AEDO's NSCP wind load guide.
  • NSCP 2015, Table 205-3 (roof live loads) and Section 205.3.3 (concentrated equipment loads), used for the weight comparison — see AEDO's dead and live loads guide.
  • Republic Act No. 9513 — Renewable Energy Act of 2008, Section 10 (net metering for renewable energy); ERC Resolution No. 09, Series of 2013 (net-metering rules); DOE Department Circulars DC2020-10-0022 and DC2024-08-0025 (subsequent amendments). Cited as regulatory context only.
  • Presidential Decree No. 1096 — National Building Code of the Philippines, for the alteration/equipment permit route; see AEDO's building permit guide.

Module and racking weights, array area per kWp, ballast observations and the detailing notes on penetrations and bimetallic contact are AEDO's own estimates and field observations, not code figures. The calculator applies the code equations at strength level and does not run the Section 203 load combinations, check member or connection capacity, or cover buildings taller than 18 m.

Getting Solar Onto a Commercial Roof?

Have the structure checked before the racking is ordered — it is far cheaper than after.

  • Existing roof framing checked against NSCP 2015 §207D uplift and lateral forces
  • Anchorage, connection and reinforcement design where members fall short
  • Vendor racking layouts reviewed against your site's wind speed and exposure
  • Design nationwide; structural works in Negros Oriental