Methodology
Lightphase is only useful if you trust the times, so here is exactly what it computes and where every number comes from. The short version: each threshold uses the standard definition for that threshold, so sunrise agrees with your weather app and the twilights agree with published tables.
The six phases
Every phase is a band of solar elevation, the angle between the horizon and the center of the sun. Six thresholds divide the sky: −18°, −12°, −6°, −0.833°, +6° and +35°. That is the whole model. Nothing else feeds it. The odd-looking one is sunrise, and it is explained below.
Night
below −18°
The sun is far enough below the horizon that it contributes no usable light. Full dark for photographic purposes.
Astronomical Twilight
−18° to −12°
The darkest twilight. Stars remain prominent and the sky reads as black to the eye, but the horizon is beginning to separate on a long exposure.
Nautical Twilight
−12° to −6°
Deep blue sky. Silhouettes read cleanly against a faintly visible horizon. The window most people mean by "blue hour".
Civil Twilight
−6° to the horizon
Bright twilight. Enough ambient light to expose a scene handheld, with no direct sun and almost no shadow.
Golden Hour
the horizon to +6°
Warm, low, strongly directional sunlight. Long shadows, raking side light, and the shallowest angle direct sun ever reaches.
35° Window
+6° to +35°
Still low enough to be directional, but with fuller color and more contrast than golden hour. The long, workable middle of the day at either end.
Daylight
above +35°
The sun is high. Light is flat and top-down, shadows are short and hard. Outside the Lightphase working window.
Night and Daylight are not phases so much as the two ends of the day: the light before anything starts and after everything has finished. They are shown because the sun has to be somewhere.
Why the same angle means two things
The same threshold means different things going up and coming down. At +6° in the morning the sun is entering the 35° Window; at +6° in the evening it is entering Golden Hour. Lightphase reads the direction of travel as well as the angle, which is why morning and evening are listed separately.
Why Blue Hour is not here
Because it overlaps. Blue Hour, as most tools define it, sits inside what Lightphase calls Nautical and Civil Twilight, and different tools draw it at different angles. Mixing two systems would make every boundary approximate. Lightphase implements one model exactly rather than several loosely, so the deep blue window you are looking for is the back half of Nautical Twilight and the front of Civil.
Where sunrise comes from
Sunrise and sunset are the moment the sun’s upper edge appears to touch the horizon. Work back to the center and it sits 50′ lower, which is −0.833°: 16′ for the sun’s own radius, and 34′ for the way the atmosphere bends light near the horizon and lifts the disc into view before it is really there.
That is the definition every almanac uses. NOAA writes it as a zenith angle of 90.833°, the Astronomical Almanac writes it as its two parts, and they are the same instant. Lightphase uses it, so its sunrise agrees with the one on your weather app to the minute.
The twilight thresholds are different, and deliberately so. Civil, Nautical and Astronomical Twilight are conventionally defined on the sun’s geometric center at −6°, −12° and −18°, with no correction at all. Lightphase matches that too. Every threshold here matches the standard for that threshold, which is not the same thing as applying one rule to all of them.
The 50′ assumes a standard atmosphere at sea level. Real refraction moves with pressure and temperature, and a cold-air inversion can shift it by a degree. Lightphase does not model that, because it would need weather it deliberately never fetches, and it would disagree with every published table by an amount that changes daily.
Lightphase also assumes a flat horizon. It does not know about the mountain in front of you, or that you are standing on top of one. Real elevation moves first light earlier by several minutes.
How the times are found
Solar position is deterministic: given a date, a time and a pair of coordinates, there is exactly one right answer. Lightphase computes it in your browser from the standard astronomical series in Meeus, then finds each crossing by sweeping the day minute by minute, bracketing every point where the sun passes a threshold, and narrowing to the second.
That is slower than the closed-form formula a solar library would use. It buys three things:
- One method for all six thresholds, including
+35°, which no rise-and-set formula exposes. - No special case at the poles. If the sun never reaches a threshold, no crossing is reported and none is invented.
- Both sides of a graze. Above the Arctic Circle in midsummer the sun touches a threshold and falls back, and each crossing is found.
The engine is checked against an independent implementation of the NOAA solar equations, which arrives at elevation by a different route. Across nine locations, five dates and every hour of the day, the two agree to within a hundredth of a degree, about two and a half seconds of the sun’s motion.
Time zones
“Today” means the local calendar day where you are, resolved through your device’s time zone. Never a fixed offset from UTC. That would quietly shift every phase time by an hour on the two days a year the clocks change. Days that are 23 or 25 hours long are handled as such.
Your location
Your coordinates are read once, held in memory, and used for the calculation on your device. They are not sent anywhere, not stored, and not attached to anything. The privacy page is short and specific.