A 1990s warehouse has a clean roof and a signed lease. The array layout is done. Then the plan checker asks for an analysis of the existing roof framing, and the owner cannot find a single structural drawing. The installer now has a schedule problem that no one budgeted for.

This is the common case on older commercial buildings. The roof was built before anyone planned for solar. The drawings are gone or incomplete. The AHJ (authority having jurisdiction) still needs proof that the framing can carry the new load. This guide shows how to build that proof from the roof itself. It covers the code test that decides whether framing must change, the checks for older steel joists and wood trusses, and what to hand the AHJ.

Quick answer. A commercial roof structural analysis for solar compares the loads an existing roof can carry with the loads the array adds. Without drawings, the engineer rebuilds the framing from a field survey, joist tags, test cuts and manufacturer records. The IEBC then tests each element: a gravity increase above 5 percent forces the element to meet current code loads, or the array changes.

This guide is written for the US installer or EPC project lead who has a rooftop job on an older building and a structural question. It covers the existing-roof side. The question of a letter versus a full calculation package is in the solar structural letter guide. Seismic attachment of ballasted arrays is in the ballasted seismic design guide. Tile and standing seam attachment is in the tile roof attachment guide.

What does a commercial roof structural analysis for solar decide?

The analysis answers one question for each roof element: can it carry the new load without damage, and if not, what changes? The answer is usually one of three outcomes. The roof is adequate as it stands. The array changes (lighter ballast, different layout, attached instead of ballasted). Or the framing is reinforced.

The analysis has four parts. First, the engineer establishes what the roof is made of and what it was designed for. Second, the engineer works out the loads: existing dead load, array dead load, snow, wind and rain. Third, the engineer checks each load path from the array down to the foundation. Fourth, the engineer writes down the result in a form the AHJ can review.

Most delays come from the first part. An installer who captures the right survey data once saves a second site visit. The survey checklist later in this guide is built for that.

The package that comes out of this work is a calculation set. A STAAD report can be part of it, but the report only proves the model. The survey is what proves the model matches the roof.

How do you establish roof capacity when there are no drawings?

Work down this list in order. Each source is cheaper than the next, and each leaves a gap that the next one fills.

Evidence sourceWhat it givesWhat it cannot give
Original structural drawings or erection plansFraming type, member designations, design loadsLater alterations, field changes, condition today
Building department permit fileDrawings submitted for the original permit, reroof and rooftop equipment permitsAnything never permitted
Joist or truss manufacturer recordsOriginal calculations, plate or joist detailsRecords for older or defunct makers
Roofing contractor recordsLayer count, insulation type and thickness, last reroof dateFraming details
Field survey with measurements and photosActual member sizes, spans, spacing, condition, ponding signsHidden members, original design loads
Test cuts or coresRoof build-up layers and deck type, hence dead loadAnything outside the cut
Material samplesSteel yield strength where the engineer needs itCapacity of members not sampled

Ask for records first. The SJI (Steel Joist Institute) evaluation guidance starts with construction documents, such as contract drawings and the joist erection plan. It then goes to the joist tag and the manufacturer. The SJI 2018 evaluation webinar says that in most cases the manufacturer will locate, copy and send information on old projects at minimal cost. See the SJI evaluation and modification webinar, Part 1 (17 October 2018, accessed 31 October 2026).

Read the joist tag, but do not expect a size. SJI describes a joist tag as carrying the maker name, the job number and the erection mark. The SJI page on identifying existing joists adds a caution. A tag rarely reveals the joist size, SJI keeps no job records from manufacturers, and its result is an estimate, not a confirmed identification. SJI asks for chord and web measurements taken with a micrometer, because thickness differences can be as small as 1/64 inch. See SJI, identify existing joists (accessed 31 October 2026).

Take test cuts. A small roof cut shows the membrane, insulation layers, cover board and deck. That build-up gives the dead load, and it shows the deck type and thickness that the attachments rely on. The SJI field-investigation guidance also lists coupon samples to determine steel yield strength when yield is unknown. The engineer decides whether a coupon is needed. The installer should not cut steel.

Reconstruct the as-built. Measure what the engineer needs, then record the source of each number. A reconstruction states which dimensions were measured, which came from a record, and which were assumed. The AHJ and the engineer both rely on that separation.

Check for later changes. Rooftop units, skylights, added insulation and second roof layers all change the load story. The SJI webinar lists renovations, rooftop units and damage as common reasons to re-evaluate joists. Ask the owner for rooftop equipment replacement history, and look for signs of repairs on the framing.

Once the survey is done, the engineer may need more than the installer can safely collect. If your team lacks capacity for the roof load check, the solar civil and structural engineering service at Heaven Designs covers rooftop structural analysis and mounting structure design. The scope for a specific roof is agreed at scoping.

What does the survey-to-analysis checklist look like?

Use this table on site. Each row shows what to capture, how, what check it feeds, and when to stop and call the engineer.

CaptureHowFeeds which checkStop and call the engineer if
Framing type (steel joist, joist girder, wood truss, rafter, beam, concrete)Photos from below, access hatch, ceiling tiles liftedChoice of member checkTypes mix on one roof
Joist tags and marksPhoto of every tag type, note locationsManufacturer lookup, SJI seriesTags are missing or painted over
Member sizes (chords, webs, depth)Micrometer and tape, sketches of profilesSJI identification, capacityWebs or chords are bent, cut or welded on
Span and spacingTape from bearing to bearing, spacing on centerTributary width, load per memberSpacing varies bay to bay
Panel point locationsMark on sketch with distances from the bearingWhere point loads can sitLayout puts supports between panel points
Bearing conditionPhotos of seats, walls, beamsEnd reactionsCorrosion, cracks or movement at bearings
Roof build-upTest cut, thickness measurements, photoDead loadMore than one layer, wet insulation
Deck type and gaugeUnderside view, core or cutAttachment capacity, diaphragmDeck is rusted or sagging
Existing rooftop equipmentPhotos with nameplates, locations, curb sizesDead load, concentrated loadWeights unknown
Drains, scuppers, slopePhotos, level reading, note standing waterPonding checkStanding water persists after rain
Mid-span deflectionString line or level between bearingsPonding, conditionVisible sag
Parapet height and roof edgesTape, photosSnow drift, wind zonesTall parapets near the array
Adjacent higher roofs or wallsPhotos, heightsSnow drift onto the array areaArray sits in a low pocket
Prior repairs or alterationsPhotos, owner interviewReduced capacityField welds, added members
Condition (corrosion, rot, fire damage)Photos with scaleReduced capacityAny section loss

Which loads go into the analysis?

The loads on an existing roof are the same ones used for new design. What differs is how well each is known. The table shows what the survey must supply to fix each one.

LoadWhat sets itWhat the survey supplies
Existing dead loadRoof build-up, framing weight, hung equipmentLayer thickness and type, equipment list
Array dead loadModules, racking, ballast, wiringLayout and weights from the design
SnowGround snow, exposure, roof geometry, driftParapets, adjacent roofs, array height and gaps
WindBasic wind speed, exposure, array geometry, zoneBuilding height, edge distances, attachment type
Rain and pondingDrainage design, deflectionDrain locations, deflection, standing water
SeismicAdded mass, attachmentRoof weight, array weight (see the seismic guide)

Dead load. The existing dead load comes from the cores and the equipment list. A conservative guess can fail a roof that would pass on measured values. The reverse also happens. In July 2020, Jared Lee of the Structural Engineers Association of Utah wrote that a refined dead load estimate may show a lower real roof weight. He cautioned that unnecessary reinforcement can make a solar project financially unfeasible. See SEAU, Will Your Roof Support Solar Panels (10 July 2020, written in the ASCE 7-16 era, accessed 31 October 2026).

Snow, including drift at the array edge. Arrays sit on a roof as obstructions, so snow can collect against them. The same SEAU article notes that the IBC includes snow drift provisions for drift caused by the panels. It also raises the idea that the slippery glass surface might justify a reduced roof slope factor. That is an engineering judgment the AHJ may or may not accept. Arrays near parapets or beside a taller roof need extra care, because drift loads there are local and heavy. The snow load region design guide covers drift near roof edges and parapets.

The ground snow values themselves changed. S.K. Ghosh’s February 2024 presentation to the Structural Engineers Association of Utah summarizes the ASCE 7-22 changes. Ground snow load maps now use an updated national dataset. There are four separate maps for Risk Categories I to IV, and the snow importance factor was removed. The 2024 IBC adopts ASCE 7-22, so a roof analyzed under an older edition may see a different ground snow value now. See Significant Changes in ASCE 7-22 (SEAU presentation, 20 February 2024, accessed 31 October 2026). Use the edition your AHJ enforces. The ASCE 7-22 adoption by state guide lists where each edition applies, and the ASCE 7-22 glossary entry defines the standard.

Wind. Wind matters twice on an existing roof. It sets uplift and sliding at the attachments, and it sets whether ballast can stay unattached. The ASCE wind load guide covers the rooftop solar provisions. The wind and snow criteria by state guide shows where each state publishes the inputs.

Rain. Rain loads carry a ponding term. The SEAU presentation summarizes the ASCE 7-22 rain load chapter this way. The ponding head comes from a structural analysis of roof deflection under unfactored rain and dead load.

A limit on the standard itself. The same presentation quotes the ASCE 7-22 scope. Criteria for additions, alterations and repairs to existing buildings are outside the standard unless noted. ASCE 7 gives the loads. The existing building code gives the rule for when an existing element must change.

Which IEBC path applies, and what do 503.3 and 503.4 test?

The International Existing Building Code (IEBC) sets the alteration thresholds. The IEBC is a model code, so the AHJ enforces the edition and amendments its jurisdiction has adopted. All section numbers below are from the 2021 edition unless noted.

You pick one compliance method. IEBC section 301.3 requires an alteration to follow one of three methods, as selected by the applicant. They are prescriptive (Chapter 5), work area (Chapters 6 through 12) and performance (Chapter 13). The methods cannot be combined. The text allows earlier laws for some alterations with code official approval. That relief does not apply to the structural provisions of section 304, Chapter 5, and sections 706, 805 and 906.

MethodGravity testLateral testNotes
Prescriptive, Chapter 5503.3: more than 5 percent increase503.4: more than 10 percent DCR increaseApplied to each existing element
Work area, Alterations Level 1706.2: more than 5 percent increaseNot in section 706 as opened706.1 applies when work includes replacing equipment supported by the building or a reroofing permit
Work area, Alterations Level 2805.2: more than 5 percent increase805.3: 10 percent DCR exceptionLevel 2 also brings work area rules
Performance, Chapter 13Not opened for this guideNot opened for this guideAsk the engineer if the AHJ offers it

Source: IEBC 2021 chapter 5 on UpCodes, with chapters 7, 8 and 3 (Fort Worth viewer, accessed 31 October 2026). The viewer labels the Fort Worth code as adopted with amendments, so the text is the base IEBC text. Confirm the adopted wording with the AHJ.

What the gravity test says. An alteration may raise the design dead, live or snow load on an existing gravity element by more than 5 percent. Snow drift effects count. If so, that element must be replaced or altered to carry the gravity loads the IBC sets for new structures. An element whose capacity is reduced must be shown to resist the applicable loads. Two exceptions exist. One covers small Group R buildings of conventional light-frame construction. The other covers a second roof covering of 3 psf or less over a single layer. A commercial solar array fits neither.

Two points about this test cause trouble.

  1. The test applies element by element, not to the building average. Joists beside a parapet or next to the array edge can trip it when the average does not. The worked example below shows this.
  2. When the test trips, the element must carry the loads required for a new structure. Passing the original design load is not enough. If the original design was lighter than today’s code, the element needs more than the old tag would suggest.

What the lateral test says. If the alteration increases design lateral loads, the lateral system must meet IBC Sections 1609 and 1613, with reduced seismic forces permitted. An existing lateral element may stay as it is under one condition. Its demand-capacity ratio (DCR) with the alteration must be no more than 10 percent above its DCR without it. Cumulative effects of earlier alterations count. Exception 2 in the 2021 text covers rooftop mechanical equipment. Each unit must weigh under 400 lb, and the total added weight must be under 10 percent of the roof dead load. The 2021 text has no photovoltaic exception.

The 2024 edition adds one. In the IEBC 2024 text on UpCodes (GSA viewer, adopted without amendments), section 503.4 has a third exception. Seismic evaluation is not needed for rooftop photovoltaic systems under two limits. The system adds no more than 5 psf, including ballast. It also adds no more than 10 percent of the existing roof dead load. The 2021 chapter has no such exception. Which edition governs depends on the jurisdiction. The text here comes from a code viewer, not the ICC site, so confirm the exception in the adopted text. See IEBC 2024 chapter 5 on UpCodes (accessed 31 October 2026). The seismic side of ballasted arrays is in the ballasted seismic guide.

Local amendments can move the numbers. Minnesota amends 503.3 so the trigger is a gravity demand-capacity ratio above 105 percent. It amends the lateral exception to no more than 110 percent. Both must account for the cumulative effects of additions and alterations since original construction. The page I opened is dated March 31, 2020, so check the current rule text. See Minnesota Rules 1311.0503 (accessed 31 October 2026).

Does an array trigger section 706? That is the AHJ’s call. Section 706.1 applies when work includes replacing equipment supported by the building or a reroofing permit. Several AHJs apply the test to solar regardless, as the list below and the Montgomery County requirement later in this guide show. The Los Angeles County plan review list (version 1.0, 1 February 2026) turns both tests into plan check items 11 and 12. It cites E503.4 and E503.3. See the LA County solar plan review list (accessed 31 October 2026). The solar structural letter guide has a residential-style worked example of the 5 percent test, which this guide does not repeat.

What does a per-element load trace look like?

The example below is illustrative, not for design use. It uses simple sums in pounds per square foot (psf) and pounds per linear foot (plf). It applies no load factors, no combinations and no real drift calculation. Assumptions: joists at 5 ft spacing, existing dead load 9 psf, design roof snow load 25 psf, and a lightweight attached array of 1.6 psf. The edge joist is assumed to pick up an average of 15 psf of drift surcharge from snow collecting at the array edge. The 15 psf figure is a placeholder to show the pattern, not a calculated drift load.

ElementBefore (psf)After (psf)Before (plf)After (plf)Change5 percent test
Interior joist9 + 25 = 34.09 + 1.6 + 25 = 35.6170178+4.7 percentPasses
Edge joist beside the array34.035.6 + 15 = 50.6170253+48.8 percentFails, element must carry new-structure loads

The building looks fine on average. The interior joists pass. The edge joists do not, and they now need to carry the loads for a new structure. That is the reason the survey records the edge conditions and adjacent roofs. A real analysis replaces the placeholder with a calculated drift, applies ASCE 7 load combinations and checks the members.

The same trace tells the installer what to try. Move the array away from the edge, lower the drift, or reinforce the edge joists. Each is cheaper to decide before the layout is frozen.

How do you check an older open-web steel joist?

Open-web steel joists have a long paper trail. SJI says commercial manufacturing began in 1923 and the Institute was formed in 1928. Its historical load tables cover the series below. Each was written to a different specification, so the series and year decide which table the engineer reads.

SJI seriesYears in the historical tables
SJ1928 to 1959
Longspan1953 to 1961
S1959 to 1961
LA1961 to 1966
J1961 to 1978
H1961 to 1986
LJ1967 to 1978
K1985 to present
LH1961 to present
DLH1970 to present
DLJ1970 to 1978

Source: SJI historical load tables (accessed 31 October 2026). The tables are free PDF downloads after a form or login. The page notes that the original table notes and instructions are not included, and it points to SJI’s compilation of historical specifications for those. An engineer reading an old table without its notes is guessing at the assumptions.

Identify the joist first, then the specification. SJI Technical Digest No. 12 is the evaluation reference. The webinar built on it describes the order: find construction documents, check the tag, contact the manufacturer, and determine the specification the joist was designed to. Without drawings or a tag, the engineer documents the joist and completes the SJI Joist Investigation Form. SJI then compares the data with its archive.

Decide which specification to evaluate against. The SJI webinar flags a difference for K-series joists. Before the 2015 specification, bending in the top chord from uniformly applied load was neglected when the top chord panel spacing did not exceed 24 inches. The 2015 specification includes it regardless of panel spacing, and it changed the effective length factor from 1.0 to 0.75. The webinar says a decision has to be made about which specification governs the evaluation. That decision belongs to the engineer and should be written into the calculation.

Check where the load lands. Joists are designed for uniform load. A ballast block or racking support that lands between panel points loads a chord in bending, which the original design did not plan for. The SJI webinar example adds point loads from a rooftop unit to two joists and shows chord, web and weld force increases. Welds are sized for the original design requirement, not for the strength of the member, so the weld check can govern even when the member passes.

Note what the owner cannot see. Field-welded repairs, bent chords and damaged webs change capacity. SJI’s slides show examples of chord and web damage from handling and construction. Record any damage with photos.

Do not modify joists without the engineer. The webinar cites the federal steel erection rule at 29 CFR 1926.757(a)(7). It says no modification affecting the strength of a joist may be made without the approval of the project structural engineer of record. Racking installers should not drill, cut or weld joist members.

How do you check wood trusses and other framing?

Wood trusses are the second common older roof type on commercial buildings. They are designed and built by a manufacturer for a specific load. The same logic as the joist applies, with a few extra traps.

A 2011 Sandia National Laboratories report on structural considerations for solar installers describes the method. A change in loading that affects a truss should be evaluated by the manufacturer or a qualified engineer. The analysis compares the stresses in the truss in its original state with the stresses after the new load. If the new stresses are no higher than the original ones, the load is acceptable. The report uses the method of joints and the method of sections. It also gives an example where a 200 lb point load at mid-span of a top chord overloads a truss. See Structural Considerations for Solar Installers (Sandia report SAND2011-9066, December 2011, accessed 31 October 2026). The report was written for small, simplified installations in Madison, Wisconsin. Use it for the method. It is not proof of capacity for a large commercial truss.

The same report notes that trusses are designed for uniform load, and that point loads away from panel points will likely require reinforcement. The SEAU article adds a related trap: if mounts attach to every other truss, those trusses carry more load while the others carry less. The attachment layout is part of the analysis.

Finding the truss design. For newer trusses, the design drawing shows the plates and the plate manufacturer can be contacted. For older trusses, identifying the plate maker is harder. A Simpson Strong-Tie engineering blog post from 2015 cites a 1987 Truss Plate Institute member list with 14 manufacturers. Only one was still active. The post suggests contacting the Institute for direction. That is a manufacturer blog, so treat it as a field tip and not as a standard. See Simpson Strong-Tie, the never-ending search for truss repair information (2015, accessed 31 October 2026).

Other framing. Steel beams and purlins, concrete and masonry, and heavy timber follow the same evidence path but use different member checks. The IEBC also allows in-situ load tests under IBC Section 1708 in some situations (section 305.1). Whether a load test is acceptable is the AHJ’s decision.

Does ponding change the answer?

Ponding is the process where water collects in the low points of a deflected roof and adds load, which increases deflection and collects more water. SJI Technical Digest No. 3 (third edition, February 2018) defines it that way. The result is either equilibrium with more water on the roof, or collapse when strength or stiffness is insufficient. Blocked drains are the usual trigger.

SJI has since replaced that digest. Design Guide 40, Rain Loads and Ponding (first edition, April 2024), is based on ASCE/SEI 7-22 and the 2022 AISC specification. See SJI Design Guide 40 (accessed 31 October 2026) and the superseded Technical Digest 3.

Ponding matters to a solar analysis for three reasons.

  • Array dead load increases deflection, and deflection deepens any pond.
  • Racking and ballast can change where water travels toward drains. Whether that matters is a drainage question for the roofer and the engineer.
  • A roof that already shows standing water is telling the survey it has little reserve.

Record drains, scuppers, slope and any standing water, and measure mid-span deflection. The engineer decides whether a ponding check is needed and how to run it.

What are the reinforcement options?

When the roof fails a check, the cheapest fix is usually not in the framing. The table lists options in the order to try them.

OptionWhen it fitsWhat to watch
Change the array: lighter ballast, attached racking, fewer modulesMargin is smallWind and sliding checks change with ballast
Move the array over stronger bays, girders or columnsCapacity varies across the roofLayout and fire access setbacks
Spread concentrated loads across more membersPoint loads governLoad paths must be real, not assumed
Reinforce members in placeA few members failNeeds shoring and welding control
Add or replace joistsMany members fail or damage is presentCamber and seat depth must be specified
Replace the roof framingCondition is poorCost, schedule and roof warranty

The ballasted versus penetrating mount guide covers the mount choice behind the first row.

For steel joists, SJI Technical Digest No. 12 is the reference. The 2021 SJI webinar describes two design approaches. In one, the engineer ignores the existing member strength and sizes the reinforcement to carry the total load. In the other, the engineer uses the existing member strength, which needs an in-place dead load analysis of the joist. The webinar gives these practical points. Shore the joist before reinforcing, because welding heat can temporarily reduce steel strength. Avoid transverse field welds. Reinforce with dead and live loads removed where possible. Pay attention to eccentricity from the reinforcing. If a new joist is added, specify zero camber, and consider a shallower bearing seat with shims. The webinar adds that material cost is small compared with the labor, so reinforcement is a labor and access decision first. See the SJI evaluation and modification webinar, Part 2 (20 October 2021, accessed 31 October 2026).

A roof that needs heavy reinforcement is a cost signal. Tell the owner early, before the structural cost lands in the quote.

What goes to the AHJ?

Send a package that lets the plan checker see the roof, the load and the result without calling anyone. These items come from published AHJ documents.

DeliverableWhat it showsExample AHJ wording
Existing roof framing planMembers, sizes, spacing, panel pointsMontgomery County, MD: existing roof framing plan and attachment method
Array layout on the framingWhere supports and ballast landAlbuquerque: block layout for ballast systems
Roof informationCovering type and number of layersAlbuquerque checklist
Structural notesCodes, material grades, design loads, ballast weightMontgomery County
CalculationsLoads, member and attachment checks, 5 percent resultMontgomery County: computations that stresses in existing elements do not increase more than 5 percent
Dead load of the PV system on the documentsNumber the plan checker can verifyLA County, item 13
Roof live load statementWhere Lr appliesLA County, item 15: nonresidential roof member design includes Lr in areas not covered or where clear space exceeds 24 in
Reinforcement detailsSketches if members changePermit Sonoma and Fountain Valley (California) ask for a framing plan and details for any strengthening of the existing roof
Survey recordPhotos, measurement sources, assumptionsEngineer’s report

Montgomery County Department of Permitting Services lists these items for commercial photovoltaic systems on existing roofs. The page shows a last-updated date of October 5, 2026. See Montgomery County structural submittal requirements for commercial PV (accessed 31 October 2026). The City of Albuquerque roof-mounted PV checklist asks for signed and sealed drawings for all commercial projects. It is dated 2020 in its footer and cites the 2015 IBC and the 2017 NEC, so confirm the current version. See the Albuquerque checklist (accessed 31 October 2026).

These are dated snapshots of what each authority published, not a promise of how any reviewer will act. Verify the wording and the adopted code edition with your AHJ before you submit. The commercial versus residential permit design guide explains why the review paths split, and the solar permit package checklist covers the rest of the set.

Stamping requirements are confirmed at quote stage. The signer and seal format are set by the AHJ and the state, so ask which licensed professional the checklist names before you order.

How does this change the schedule?

The survey and records search come first and run longest when records are missing. Engineers need the field data before they can finish the check, and the AHJ needs the check before it closes structural review. Plan the roof work ahead of the electrical design, so a failed check does not force a layout change late.

  1. Read the AHJ checklist and note its structural wording and adopted code edition.
  2. Request records from the owner, the building department and the joist or truss manufacturer.
  3. Run the survey with the checklist above.
  4. Send the survey record to the engineer with the draft array layout.
  5. Hold the layout until the element check returns.
  6. Attach the calculations and drawings to the permit set and match the numbers.

Turnaround for the engineering step depends on roof type and file quality, and it is agreed at scoping.

Where Heaven Designs fits

Heaven Designs is a design and engineering firm, founded in 2020 in Surat, with 50+ engineers (company-stated). The solar civil and structural engineering service covers rooftop structural analysis, mounting structure design and anchor or ballast details. Wind, dead, seismic and snow loads follow ASCE 7 on US projects, as confirmed at kickoff. The scope for a specific roof framing type is agreed at scoping. The US solar permit design service assembles the permit set around the structural result. Heaven Designs does not install systems or supply hardware.

To start, send the project address, the AHJ checklist, the survey record and the array layout through the contact form. The team replies within 1 business day (company-stated).

FAQ

Can a roof be analyzed for solar without original drawings?

Yes, but the evidence must be rebuilt. The engineer relies on a field survey, joist tags, manufacturer records, test cuts and photos, and states which dimensions were measured and which were assumed. The IEBC also refers to in-situ load tests (section 305.1), but whether one is acceptable is the AHJ’s decision.

Does the IEBC 5 percent test apply to the whole roof?

No. The test is applied to each existing gravity element. Joists next to a parapet or the array edge can exceed 5 percent when the roof average does not. When an element trips, it must carry the gravity loads the IBC sets for new structures.

Is there an exception for rooftop solar in the IEBC?

The 2021 text has none for photovoltaic systems. The 2024 text, as shown on UpCodes, adds a seismic evaluation exception in section 503.4. It covers rooftop PV that adds no more than 5 psf including ballast and no more than 10 percent of the roof dead load. It does not remove the gravity test in 503.3. Confirm the edition your AHJ adopted.

How do you find the size of an old steel joist?

Start with drawings, the erection plan and the joist tag, then ask the manufacturer. If those fail, document the joist and send the SJI Joist Investigation Form. SJI compares it with its archive and returns an estimate, not a confirmed identification.

Do snow drifts at array edges need to be checked?

Yes where arrays sit near parapets, taller roofs or other obstructions. Drift is local and can load edge members much more than the roof average. The IEBC gravity test includes snow drift effects, so a drift increase on one joist can trigger the element check.

Can an installer reinforce a joist without an engineer?

No. SJI cites the federal steel erection rule. It bars any modification that affects joist strength without the approval of the project structural engineer of record. Reinforcement needs engineered details, shoring and controlled welding.