How the estimates work
Every number on this site is a documented heuristic. Here is the full method.
Rough, documented visibility estimates for rocket launches and aurora.
EVERYTHING HERE IS A HEURISTIC ESTIMATE. It ignores weather/clouds/marine layer,
terrain, light pollution, trajectory direction, and launch slips. See README.
Launches
--------
1. Distance d = great-circle distance city -> pad. Bearing = initial bearing city -> pad
(that is the direction to face; the rocket climbs above/away from the pad).
2. Lighting uses the Sun's altitude at the CITY (is the sky dark?) and at the PAD
(is the rocket's exhaust above Earth's shadow?). Earth's shadow height over the pad
is approximated as h_shadow = R * (1/cos(depression) - 1).
* "twilight_plume" (the 'jellyfish'): sky at the city is darker than sun alt -4 deg
AND h_shadow over the pad is below ~300 km, so the upper stage / exhaust plume
climbing through roughly 100-300 km can still be in sunlight against a dark sky.
* "night": city sky dark, rocket in shadow -> you see the engine as a moving light.
* "day": Sun above -4 deg at the city -> only a contrail/dot, close range only.
3. Radius heuristics (assumed, not measured; tuned to widely reported sightings of
Vandenberg twilight launches from LA/SD/Phoenix/Las Vegas):
day 120 km | night 500 km | twilight_plume 1000 km
'Likely' within 60% of the radius, 'Possible' within the radius, else 'Unlikely'.
A geometric cap also applies: something at ~200 km altitude is below the horizon
beyond ~1,600 km (d_max = sqrt(2*R*h)).
4. Launch time must be reasonably firm: net_precision of Second/Minute/Hour(ish).
Day/Month/Quarter/Year-precision dates are shown as 'date not set'.
Aurora
------
Geomagnetic latitude from a centred-dipole model (geomagnetic north pole ~80.8N, 72.8W,
approximate IGRF-2025 value; assumption). Rough equatorward limit where aurora MAY be
seen low on the northern horizon by eye: mlat_eye = 66 - 3*Kp (Kp5 ~51, Kp7 ~45,
Kp9 ~39 deg; sanity-checked against the May-2024 and Oct-2024 Kp 8-9 storms, when aurora was
photographed from Southern California and Florida). Phone cameras pick up faint aurora ~4 deg further equatorward:
mlat_cam = mlat_eye - 4. These are loose fits to commonly published Kp 'viewline' maps,
not an official NOAA product. Uses the max Kp forecast during the city's dark hours.
Trajectory assumptions (typical, not mission-specific; LL2 does not publish azimuths):
* Launch azimuth from the pad comes from a small lookup table keyed on pad + orbit/mission
name. Where the shell inclination is known, azimuth follows sin(Az) = cos(i) / cos(lat_pad)
using the southbound (Vandenberg) or northbound/eastbound (Florida/Texas/Virginia) solution.
- Vandenberg Starlink 'Group 11-x' (53 deg) ~133 deg (SE) | 'Group 15-x' (70 deg) ~155 deg (SSE)
| 'Group 17-x' (97 deg) ~189 deg (S/SSW) | other Starlink ~155 deg
- Vandenberg other LEO / polar / SSO / NRO / SDA ~190 deg (S, down the coast)
- Cape/KSC: Starlink & ISS/LEO ~45 deg (NE) (some Starlink shells fly SE instead);
GTO/GEO ~95 deg (E); polar ~170 deg (S along the coast); Lunar/other ~90 deg
- Starbase ~95 deg (E over the Gulf); Wallops ISS cargo ~130 deg (SE)
* Ascent profile (rough Falcon-9-like): (downrange km -> altitude km)
0->0, 50->40, 100->75, 250->130, 500->165, 900->190, 1500->200.
* The effective distance used for the visibility radius is the closest ground distance from
the city to any track point that would be at least 3 deg above that city's horizon.
* 'Where to look' gives the bearing to the first point that clears ~3 deg (start) and to the
last such point (end), i.e. the direction it appears and the direction it travels.ISS passes
Visible ISS pass predictions for each city (next 10 days) from the cached CelesTrak TLE. Definition (documented, simple): * A pass = rise -> set above 0 deg (skyfield find_events). * Visible part = samples (every 5 s) where ISS altitude >= 10 deg AND ISS is sunlit AND the Sun is below -6 deg at the observer (civil twilight or darker). * Keep a pass if its visible part's peak altitude >= 10 deg. Start / end / peak are taken from the visible part (so a pass that fades into Earth's shadow 'ends' where it disappears). * Approximate magnitude: standard magnitude -1.8 at 1,000 km range and 90 deg phase angle (a commonly used ISS value), scaled by 5*log10(range/1000) and a diffuse-sphere phase function F(p) = (sin p + (pi - p) cos p)/pi relative to F(90 deg). Real brightness varies with the station's attitude and solar-panel orientation; treat as +-1 mag. TLE accuracy degrades with age; predictions beyond a few days can shift by a minute or more.
Moon, planets, meteor showers & eclipses
Sky Events layer: Moon, planets, conjunctions, meteor showers (IMO), eclipses (NASA). All computed with skyfield + JPL DE421 or taken from the cited catalogs - nothing invented. Definitions (also shown on /about/): * Moon phases/illumination: skyfield almanac. Full Moon names: traditional North American names (Wolf, Snow, Worm, Pink, Flower, Strawberry, Buck, Sturgeon, Corn, Hunter's, Beaver, Cold) by month, with 'Harvest Moon' = the full Moon closest to the September equinox and 'Hunter's Moon' = the next one. * Supermoon: a full Moon whose geocentric distance at the moment of full Moon is < 360,000 km (one common threshold; other outlets use Nolle's '90% of perigee' rule and list more supermoons). * Planets tonight: naked-eye planets (Mercury, Venus, Mars, Jupiter, Saturn). 'Visible' = at least 10 deg up (5 deg for Mercury) while the Sun is below -6 deg. Best time = highest point within that window. Magnitude from skyfield.magnitudelib (Mallama & Hilton 2018). * Close approaches: geocentric separation minima < 3 deg among the Moon and the five planets in the next 60 days, skipped when either body is < 15 deg from the Sun. * Meteor showers: IMO Meteor Shower Calendars 2026 and 2027 (activity dates, peak solar longitude, ZHR, radiant). Peak time = when the Sun's J2000 ecliptic longitude reaches the IMO solar longitude (IMO quotes explicit times for some showers; ours match those to within ~1 h). Per city: radiant altitude through the peak night, best hour (radiant highest while Sun < -12 deg), Moon illumination/altitude, and a rough expected hourly rate = ZHR x sin(radiant altitude) for a dark site (moonlight and light pollution lower it). * Eclipses: NASA GSFC eclipse catalog (Espenak). Lunar: visible from a city if the Moon is above the horizon at greatest eclipse (partial/total) - we also report Moon altitude. Solar: local maximum magnitude computed from topocentric Sun/Moon separation sampled each minute within +-4 h of greatest eclipse while the Sun is up.