SolarSoftwares
Book a demo

What Is Solar Zenith and Incidence Angle?

How we keep reviews fair

Quick answer

Solar zenith angle is the sun’s angle from straight up. The angle of incidence (AOI) is the angle between the sun’s rays and a module’s normal. Beam light on the module scales with cos AOI. At an AOI of 0°, the sun is square-on to the module.

Ready to see how it works?

Tell the SolarSoftwares team which tool you are considering. We reply by email to book your demo.

Book a demo
Jump to a section

Key takeaways

  • Elevation is 90° minus zenith, as Sandia’s PVPMC says.
  • Beam light on a plane is DNI × cos AOI. The cosine is 0.500 at 60°, 0.174 at 80° and negative past 90°, where the sun is behind the plane.
  • At example 52°N on 21 December noon (zenith 75.4°), a south plane tilted 35° has AOI 40.4° and cos AOI 0.761, against 0.251 flat. That is 3.0 times the beam multiplier.
  • Time stamps matter. Using the start of an hour, not its middle, changed cos AOI by -14.5% to +23.0% on 21 June. PVWatts v5, SAM and PVsyst use the middle.
  • Azimuth zero differs by tool. PVsyst and PV*SOL measure the sun’s azimuth from south in the northern hemisphere. pvlib and Sandia count clockwise from north.

To find tools that print hourly zenith and AOI and state their azimuth zero, see the best solar simulation software. For sun-path charts, see the best solar shading analysis software.

Solar zenith and incidence angle at a glance

Two things fix the beam light on a module: where the sun is, and how the module faces it. Zenith and azimuth place the sun. AOI links it to the plane.

ItemDetail
Formulacos AOI = cos z × cos β + sin z × sin β × cos(γs − γp) (Sandia PVPMC). Beam on the plane = DNI × cos AOI (PVWatts manual).
Termsz is zenith, β is plane tilt, γs is sun azimuth and γp is plane azimuth.
Unit and rangeDegrees. Zenith 0° to 90° with the sun up. AOI 0° to 90° with the sun in front of the plane. Above 90° the sun is behind it.
Where it mattersBeam light, IAM, shading checks, sun-path charts and tracker control.
Standard or ruleNo single rule. Tools differ in azimuth zero and time stamp. pvlib’s default solar position method is the NREL SPA.
In softwareComputed from site, time and plane. Shown as hourly variables, sun-path charts or loss lines.

Why zenith and incidence angle matter for installers

They explain why tilt, direction and season change yield. A wrong azimuth zero or time stamp moves every hour of the year.

The cosine is the geometric share of beam light. The incidence angle modifier is a separate reflection loss on what remains. The DNI, GHI and plane-of-array pages use this geometry. See also the sun path diagram.

How are zenith, elevation and azimuth defined?

Zenith is the angle from straight up. Elevation is the angle above the horizon, so elevation = 90° − zenith. Azimuth is the sun’s compass direction. A 60° zenith is a 30° elevation.

  • Zenith and elevation. PVEducation says the zenith angle is the angle between the sun and the vertical. Elevation is the angular height above the horizontal, also called altitude. PVsyst’s glossary calls the sun’s height on a plane the complement to 90° of the incidence angle.
  • Azimuth zero. Sandia counts degrees east of north: north 0, east 90, west 270. PVsyst gives the sun’s azimuth relative to south in the northern hemisphere and north in the southern. PV*SOL says 0° is south in the northern hemisphere. Convert before you compare. The azimuth page shows how.
  • True and apparent zenith. pvlib returns both. The apparent zenith includes refraction, so the sun looks higher. In our run (pvlib defaults) the gap was 0.42° at 0.5° elevation, 0.16° at 5.0° and 0.03° at 30.0°.
  • Solar time. Solar noon is when the sun is highest. At 0°E it fell at 12:08 UTC on 20 March, 12:02 on 21 June and 11:58 on 21 December in our run. Each degree of longitude moves it by 4 minutes. HelioScope says its simulations use solar time.
  • Accuracy. NREL’s SPA page states uncertainties of ±0.0003° for solar zenith and azimuth, for the years −2000 to 6000.

How is the angle of incidence calculated?

AOI is the angle between the sun’s rays and the line at right angles to the plane. Find the sun’s zenith and azimuth, then apply the cosine formula in the table above.

  1. Get the sun’s zenith and azimuth for the instant and site.
  2. Take the plane’s tilt from horizontal and its azimuth, with the same azimuth zero as the sun.
  3. Compute cos AOI. The PVWatts manual writes the same equation with its terms in a different order.
  4. If cos AOI is negative, the sun is behind the plane. Use 0. Also use 0 when the sun is below the horizon.
  5. Beam on the plane = DNI × cos AOI. Add sky and ground light separately.

pvlib’s aoi function returns the angle. Its aoi_projection function returns the cosine. Its notes say the value is negative when the sun is behind the surface. We checked the two published equations against our own unit-vector form on 20,000 random inputs. They agreed to 1e-15.

Three shortcuts help. A flat plane has AOI equal to the zenith. A sun at the zenith gives AOI equal to the tilt. At solar noon, a plane facing the sun’s side has AOI = |tilt − zenith|. If the sun is on the opposite side of overhead from the way the plane faces, AOI = tilt + zenith.

Table 1. The cosine alone, before any reflection loss.

AOIcos AOI
0°1.000
30°0.866
45°0.707
60°0.500
70°0.342
80°0.174
85°0.087

The noon rule matched pvlib within 0.01° in 192 cases. These covered six latitudes from −52° to 52°, four dates, four tilts and two plane directions.

Two charts: sun zenith and noon angle of incidence through the year, and cos AOI through the day

Figure 1. On 21 December at solar noon a 35° south-facing plane takes 76% of the beam light. A flat plane takes 25% (example site 52°N).

Worked example: noon through the year, then four planes on 21 June

At example 52°N the noon sun swings from 14.6° to 61.4° elevation through the year. A tilted south plane follows it. Inputs: 0°E, solar time, true zenith, pvlib SPA, example tilts.

Table 2. Solar noon on three dates.

Day (solar noon)Sun zenithSun elevationAOI, south plane, tilt 35°cos AOI, tilted / flat
20 March52.05°37.95°17.05°0.956 / 0.615
21 June28.56°61.44°6.44°0.994 / 0.878
21 December75.44°14.56°40.44°0.761 / 0.251

On 20 March the zenith is 52.05°, so a 35° plane has AOI |35 − 52.05| = 17.05°. A flat plane sees the low winter sun at a shallow angle.

Table 3. AOI and cos AOI (in brackets) on 21 June.

Plane08:0012:0016:00
Sun zenith, azimuth53.4°, 98.3°28.6°, 180.0°53.4°, 261.6°
Flat (tilt 0°)53.4° (0.596)28.6° (0.878)53.4° (0.596)
South-facing, tilt 3556.3° (0.555)6.4° (0.994)56.3° (0.555)
East-facing, tilt 3519.3° (0.944)44.0° (0.719)88.1° (0.032)
West-facing, tilt 3588.1° (0.032)44.0° (0.719)19.3° (0.944)

The east plane faces the morning sun, with AOI 19.3° at 08:00. The west plane mirrors it at 16:00. The south plane is best at noon. At 16:00 the east plane has cos AOI of 0.032, so it gets almost no beam light.

A plane can also face away. A north-facing 35° plane at noon on 21 December has zenith 75.4° and AOI 110.4°. Its raw cosine is -0.349, so beam light is 0. Diffuse and ground light still arrive.

Which instant does an hourly weather value describe?

Use the middle of the hour. The PVWatts Version 5 manual (September 2014) computes sun position at the midpoint of each hour. So 14:00 to 15:00 uses 14:30. SAM uses it for hourly data without a Minute column. PVsyst uses the middle of each interval.

Using the start or end of the hour can be far off. Here the plane faces south at 35° on 21 June, with DNI held constant across the hour (an assumption).

Table 4. cos AOI by time choice, against the mean over the hour.

Hour (solar time)cos at start / middle / endMean over hourError at start / middle / end
08:00 to 09:000.555 / 0.650 / 0.7370.649-14.5% / +0.2% / +13.5%
12:00 to 13:000.994 / 0.986 / 0.9640.984+1.0% / +0.3% / -2.0%
16:00 to 17:000.555 / 0.452 / 0.3430.451+23.0% / +0.2% / -23.9%

The middle of the hour was within 0.3% of the mean in all three hours. The start or end missed by up to 23.9%. Check the rule in each weather file or TMY file.

Calculator: sun angles and AOI

Part A finds the sun angles and AOI from latitude, day and solar time. Part B gives AOI from sun angles you hold. Defaults are example.

Part A uses the Cooper declination formula, so its zenith is approximate and ignores refraction. For design work, use a full sun-position method such as the NREL SPA.

Open the calculator on its own page

How solar software handles zenith and incidence angle

Pages differ on three points that change every hour of a run: the sun-position method, the azimuth zero and the time-stamp rule. Only some state all three. Ratings reflect the page read, not model quality.

SoftwareDocuments sun angles and AOI?Page read
pvlib pythonYespvlib 0.16.1 docs and installed docstrings, October 2026
NREL PVWattsYesPVWatts Version 5 Manual, September 2014, archived copy. The current web tool is not covered.
PVsystYesPVsyst help, glossary and "Simulation variables: geometry", no date shown, October 2026
PV*SOL premiumPartlyPV*SOL help, two pages, no date shown, October 2026
SAMPartlySAM help, "Weather time convention", no date shown, October 2026
HelioScopePartlyHelioScope help, Daylight Saving Time (no date shown) and Shade Modeling (8 July 2025), October 2026

What each page says:

  • pvlib python: get_solarposition returns apparent_zenith, zenith, apparent_elevation, elevation and azimuth. aoi is "the angle between the solar vector and the surface normal".
  • NREL PVWatts: Version 5 manual (September 2014): sun position by the Michalsky algorithm at the hour midpoint, an AOI equation (Eqn. 1) and beam as "the beam normal input multiplied by the cosine of the angle of incidence".
  • PVsyst: The glossary defines the incidence angle against the plane normal. The geometry variables list HSol (sun height), AzSol (azimuth relative to south in the northern hemisphere) and AngInc. Each is calculated at the middle of the measurement interval.
  • PV*SOL premium: The sun-position page names DIN 5034-2 or NREL SPA. It gives azimuth 0° as south in the northern hemisphere and elevation 0° at the horizon. The irradiation page lists an angle-of-irradiation step but no formula.
  • SAM: The weather time convention page says air mass uses the zenith for each time step. It says sun position uses the hour midpoint for hourly data without a Minute column. It does not mention azimuth or AOI.
  • HelioScope: Simulations and weather files use solar time. The Shade Modeling page mentions sun angle but not zenith, azimuth or AOI.

For scored company comparisons, see the best solar simulation software list and the best solar shading analysis software list. Library users can read our pvlib page.

Common mistakes with zenith and incidence angle

FAQs

Is a smaller solar zenith angle better?

Yes for beam light on a flat plane. A smaller zenith gives a larger cos zenith and a shorter path through the air. AM 1.5, the standard test spectrum, corresponds to a zenith of about 48.2° (1 ÷ cos 48.2° = 1.50). See standard test conditions.

Can the angle of incidence be above 90°?

Yes, when the sun is behind the plane. Our north-facing example reached 110.4° at December noon. The raw cosine is then negative, so beam light is 0. Diffuse and ground light still arrive.

Is the angle of incidence the same as the tilt angle?

No. Tilt is the plane’s angle from horizontal. AOI is the angle between the sun and the plane’s normal. They are equal when the sun is at the zenith. See tilt angle.

Should I use the apparent or true zenith?

Keep one choice for the whole model, and check which one your tool feeds into the AOI step. The apparent zenith includes refraction, so the sun looks higher. The gap matters mainly near sunrise and sunset.

What is the solar zenith angle at solar noon?

It equals the gap between your latitude and the latitude where the sun is overhead that day (the sun’s declination). At example 52°N on 21 December that gives 75.44°, the Table 2 value. At the example site it is smallest in June and largest in December.

  • IAM: the reflection loss applied after the cosine.
  • Azimuth: the compass direction and its zero in each tool.
  • Sun path diagram: a chart of the sun’s azimuth and height through the year.

Next step: check your tool’s azimuth zero and time-stamp rule against the pages above, then read the best solar simulation software and best solar shading analysis software lists.

Sources

Last updated 30 October 2026. Next scheduled review: 30 January 2027.

See the software on your shortlist.

Tell the SolarSoftwares team what you want in your solar software.

Your request goes by email to the SolarSoftwares team. A demo time is set only after we reply.