Methodology, accuracy and sources
Prepared by Alton Jorge de Souza Vieira. Reviewed 27 October 2026.
What a displayed time means
Sunrise and sunset are calculated at a solar-centre altitude of −0.833°. This standard approximation accounts for the Sun’s apparent radius and average atmospheric refraction. Times are rounded to the nearest minute and refer to the listed coordinate, with a clear, level horizon.
The calculation interpolates a geocentric solar ephemeris, converts it to the observer’s position and solves the altitude crossings within the actual local date. The ephemeris covers 2025–2036; the public date selector keeps a small margin at its ends so adjacent-day comparisons remain available.
Mountains, buildings, cloud and unusual refraction are not modelled. The result is an astronomical planning reference, not a forecast of visibility, weather or access. See the US Naval Observatory’s definitions.
Twilight and photography light
Civil, nautical and astronomical dawn and dusk use the Sun’s centre at −6°, −12° and −18°. A missing crossing is shown explicitly. At high latitudes, there may be no sunrise, no sunset or no astronomical night on a date.
Our golden-hour convention is −4° to +6° in the morning and +6° to −4° in the evening. It is a photography aid, not an official definition of daylight. The site reports no complete interval if its required crossings do not both occur on that local date.
Time zones and clock changes
Each place has an IANA timezone. The bundled rules are version 2026e; coordinates are checked against the timezone-boundary-builder 2026d polygons. The displayed offset is calculated for each event, including transition days.
A local date is bounded by its two local midnights. Those boundaries need not be 24 elapsed hours apart. Countdown timers use timestamps, and daylight duration sums the actual time above the horizon threshold. Cached city pages expire no later than the next local midnight.
Future governments can change their rules. The date range is a calculation range, not a guarantee that today’s timezone legislation will remain unchanged.
Place data and population
The starting place names, alternative names and coordinates come from GeoNames, licensed under CC BY 4.0. We have modified names, population records, duplicate handling and two timezone assignments. GeoNames does not endorse this site.
The initial directory uses places with at least 15,000 recorded inhabitants after corrections. Population selects the initial directory; it is not presented as a current population estimate. A town centre is not every address within that town.
National reference sources include the US Census Gazetteer and GNIS; ONS geography, OS Open Names and NISRA; Statistics Canada’s 2021 Census and CGNDB; and the Australian Bureau of Statistics Census and Gazetteer of Australia.
These are name, coordinate and population cross-checks, not a claim that every national geography is identical to a GeoNames place. Where a municipality, urban area and neighbourhood differ, we retain the original place scope unless a correction is unambiguous.
Contains OS data © Crown copyright and database right 2026 and ONS/NISRA public-sector information under the Open Government Licence v3.0. Adapted from Statistics Canada, Census 2021; this does not constitute an endorsement by Statistics Canada. Canadian geographical names use the Open Government Licence – Canada. Australian Census data: © Commonwealth of Australia, Australian Bureau of Statistics, 2021, CC BY 4.0; Gazetteer data are credited to Geoscience Australia and the supplying naming authorities.
Validation and corrections
The engine is checked against dated results from the US Naval Observatory, including India, northern summer and winter, and clock-change dates. The automated comparison allows up to 90 seconds for rounding and model differences. This tolerance is a validation criterion, not a promise about the first visible sunlight at every location.
Found a place-name, timezone or timing problem? Send the place, date and source. We keep an internal correction record and update the affected data and tests.