How SacredCal Calculates Dates & Prayer Times
Every date and time on this site is produced by documented, deterministic calculations — no scraping, no guessing. This page explains exactly how, what the known limitations are, and how to report an error.
We are not a religious authority. SacredCal publishes astronomical calculations, not religious rulings. Observance dates — especially Islamic dates that depend on physical moon sighting — are decided by local religious authorities and may differ from our estimates by ±1 day. Always confirm important dates with your local mosque, temple, gurdwara, or synagogue.
Prayer times
Prayer times are computed from solar position (equation of time and solar declination) for each city's coordinates and timezone. Fajr and Isha use the solar depression angles defined by the calculation method shown on every city page — different regions follow different conventions, which is why the method is always displayed rather than hidden:
| Method | Fajr angle | Isha |
|---|---|---|
| Muslim World League | 18° | 17° |
| ISNA (North America) | 15° | 15° |
| Egyptian Authority | 19.5° | 17.5° |
| Umm al-Qura (Mecca) | 18.5° | 90 min after Maghrib |
| University of Islamic Sciences, Karachi | 18° | 18° |
| Institute of Geophysics, Tehran | 17.7° | 14° |
| Gulf Region | 19.5° | 90 min after Maghrib |
| Kuwait | 18° | 17.5° |
| Qatar | 18° | 90 min after Maghrib |
| MUIS Singapore | 20° | 18° |
High-latitude summers: above roughly 48° latitude, true astronomical twilight never fully ends in midsummer, so the standard formulas have no solution for Fajr and Isha. In that case we apply the angle-based rule (the fraction angle/60 of the night, measured from sunrise or sunset) — the same fallback used by most mainstream prayer apps. Pages using the fallback say so directly beneath the date.
Asr follows the standard (Shafi'i) shadow-length convention. Dhuhr is solar noon plus one minute.
Calendar conversions
- Islamic (Hijri): tabular Islamic calendar (astronomical, Meeus). Actual observance follows local moon sighting and can differ by ±1 day — this is the single largest source of date variance on the site, and we label affected dates as expected rather than confirmed until they pass.
- Hebrew: arithmetic Hebrew calendar with leap months. Validated against Rosh Hashanah, Yom Kippur, Passover, and Hanukkah anchor dates across multiple years. Our simplified year-start rule can disagree with the full postponement (dechiyot) rules roughly once per several thousand days; if you spot a wrong date, please report it.
- Chinese Lunar: anchored to a table of known New Year dates, with an approximation for years outside the table (±1 day accuracy noted where used).
- Hindu (Panchang): computed Tithi, Nakshatra, Yoga, Karana, and Vara. Regional observance conventions (e.g., which day a festival is kept when a tithi spans two days) can differ from our listing.
National holiday data
Country holiday pages are generated from the open-source date-holidays dataset, plus corrections we maintain where that dataset is incomplete. Government gazettes occasionally move holidays after publication; when a listed date is superseded by an official announcement, the official announcement wins — tell us and we'll correct it.
Reference sources
- Astronomical Applications Department, U.S. Naval Observatory — Reference for solar position and twilight definitions used in prayer-time formulas.
- PrayTimes.org calculation documentation — The standard reference for prayer-time calculation methods and high-latitude adjustment rules.
- Moonsighting.com — Crescent visibility reports we reference when describing moon-sighting variance for Islamic dates.
- date-holidays (open-source national holiday database) — Primary dataset for national public-holiday pages, supplemented with corrections we maintain (e.g., major Indian national holidays).
- Hebcal — Jewish calendar references — Used to validate our independent Hebrew calendar implementation against known anchor dates (Rosh Hashanah, Passover, Hanukkah).
Corrections policy
If a date or prayer time on this site is wrong, we want to know. Use the Feedback button on any page (or the contact details on our About page). Verified errors are corrected in the next deployment and noted in the page's updated date.