← Monitor

Sources & methods

This independent console uses provider data as supplied, with validation and formatting. It does not report observed aurora or calculate a personalized sighting probability.

Ten-day selection and hidden daylight

The checked-by-default Hide daylight hours checkbox removes hourly slots with maximum sampled solar altitude >−6°, including civil twilight; exactly −6° stays visible. The maximum uses start, midpoint and end, exactly matching the rubric. Unchecking restores every UTC hour and its existing solar blocking rule. The hour dropdown, UTC date controls, slider, previous/next and playback use the same location-dependent visible slots.

Clamping retains a valid selected hour; otherwise it uses the next visible hour, or the last if beyond the window. No visible slots produces an explicit empty state with playback disabled. Playback advances one available hourly slot per second, showing actual UTC dates/times and a jump message across hidden daylight gaps. Location selection and map highlight remain fixed while ranks update.

Later hours show known weather + darkness subtotal and the number of supplied factors (three factors, nine possible points with complete coverage). Missing Kp, weather or static darkness remains explicitly missing. Partial points have no full-score category and never influence the effective aurora ranking; the full base/effective score remains unavailable. A known cloud/solar blocker is still shown. The full-score map stays hatched when required inputs are missing.

ECMWF / Open-Meteo coverage documentation currently supports forecasts beyond ten days. The provider interpolates later 3-/6-hourly native ECMWF steps into hourly data; the Site does not invent additional weather values, finer spatial resolution or forecast confidence. Weather issue time remains unknown. Weather and Kp supplied horizons and retrieval times are shown separately.

SPACE WEATHER · NOAA SWPC

All timestamps are UTC. Timezone-less NOAA strings are interpreted as UTC. RTSW records are filtered to active observations with valid numeric fields and usable quality, then sorted by observation time; their source satellite name is retained. Missing values and the −9999 sentinel are rejected. Negative Bz is preserved.

ProductEndpointStale threshold
Estimated minute planetary Kpplanetary_k_index_1m.json20 min
3-hour observed Kp fallbacknoaa-planetary-k-index.json4 hours
Planetary Kp outlooknoaa-planetary-k-index-forecast.json6 hours by product modification time; issue age unknown if missing
IMF Bz GSM and total field Btrtsw_mag_1m.json15 min
Proton speed and densityrtsw_wind_1m.json15 min
OVATION auroral gridovation_aurora_latest.json20 min since observation; expired forecast validity shown separately

NOAA’s 2026 data-format migration notice explains replacement of legacy solar-wind products. The app supports both object arrays and legacy table arrays where appropriate.

OVATION product documentation describes a short-term model with variable lead time, generally around 30–90 minutes. When L1 forcing is unavailable, NOAA may use Kp without normal forecast lead. The product is not an observation or personal viewing probability. It is available as collapsed short-term context and through the official product link; it does not color or extend the combined map into future nights.

CLOUD FORECAST · MET NORWAY

The previous preset console used selected fixed Iceland coordinates with Locationforecast 2.0 compact. Total cloud area fraction is shown as modeled percent coverage, with its valid hour and model run time. Values are rounded, reformatted and combined with independent darkness calculations. A valid hour is used only within one hour of that timestamp; the model becomes stale eight hours after its update time. No nearest out-of-date hour is relabeled as current.

Attribution: Norwegian Meteorological Institute (MET Norway), Locationforecast data retrieved as labeled in the console. CC BY 4.0. API terms. The current spatial heat map uses Open-Meteo for both clouds and precipitation; MET Norway is not blended into missing spatial cells. The source link and attribution are retained for independent comparison. No visitor location is requested.

ICELANDIC MET OFFICE

IMO’s official hourly cloud and aurora page remains an external source link. White represents clearer sky; green represents cloud. Its published sun and moon times apply to Reykjavík. The console does not scrape and execute its scripts, guess image filenames, embed unverified frames, or substitute a frozen cloud image for current data.

VIEWING-SUITABILITY RUBRIC · 0–12 POINTS

The map uses Mike’s four-factor rubric: each factor gets 0–3 points, summed into a base score from 0 to 12. A complete score becomes an effective score of zero if clouds are >90% or the maximum checked solar altitude is >−6°. These strict inequalities leave exactly 90% and exactly −6° unblocked. Base and effective scores, every factor’s points and blocking reasons remain visible in the selected-area summary and expanded methodology. Rankings are High (10–12), Moderate (7–9), Low (4–6), Highly unlikely (0–3). They are rubric ranks, not percentages, calibrated sighting probabilities or guarantees of impossible visibility.

Factor3 points2 points1 point0 points
Aurora activity · Iceland/high latitudeKp ≥32≤Kp<31≤Kp<2Kp<1
Aurora activity · midlatitude referenceKp ≥54≤Kp<53≤Kp<4Kp<3
Total cloud cover0–20%>20–50%>50–85%>85–100%
Sky darknessAstronomical night ≤−18°Astronomical twilight (−18°,−12°] or nautical twilight (−12°,−6°]Civil twilight (−6°,0°), before solar overrideDaytime ≥0° or high modeled artificial skyglow
Precipitation · default hourly heuristic0 mmTrace: >0–0.1 mmModerate rubric band: >0.1–2.5 mmHeavy rubric band: >2.5 mm

The supplied activity ranges had boundary gaps: ≥3 in Iceland and ≥5 for the midlatitude reference close the excellent-band boundary. Fractional clouds are graded continuously with ≤20, ≤50 and ≤85 cutoffs. The source table omitted astronomical twilight between −18° and −12°: it receives 2 points conservatively, disclosed as a gap resolution. Nautical twilight is correctly between −12° and −6°, and civil twilight between −6° and 0°. Exactly −6° is a nautical boundary, 2 points and no solar override. The brightest checked solar altitude at hour start, midpoint and end is used, preserving the selected-hour interval approach.

Missing, invalid or stale required inputs make both base and effective scores unavailable; they are not assigned zero or optimum points. Known blocking reasons are still displayed for an incomplete score. For complete inputs, overrides take precedence over every total: high-latitude fair Kp 2 + astronomical night 3 + dry 3 + clouds 99% 0 = base 8 (Moderate), but the cloud blocker produces effective 0 (Highly unlikely rubric ranking). A zero category is not proof that seeing aurora is physically impossible.

CONFIGURABLE HEURISTICS

The user’s precipitation bands did not specify numeric limits. Defaults are dry exactly 0 mm, trace (0,0.1] mm per selected hour, moderate rubric band (0.1,2.5], and heavy rubric band >2.5. These deliberately disclosed viewing heuristics are not universal meteorological intensity definitions and include rain/showers/snow water-equivalent total. The trace and moderate maxima are adjustable in the collapsed methodology; invalid thresholds retain the last valid configuration. Precipitation uses the provider’s accumulation at t+1 for interval [t,t+1], never the accumulation ending at t.

The authentic static World Atlas 2015 input remains part of the single sky-darkness factor. The existing natural-sky reference is 0.174 mcd/m². This categorical rubric adds a configurable high-artificial-skyglow cutoff: default artificial / natural ratio ≥1 (artificial zenith brightness ≥0.174 mcd/m²) gives sky darkness 0 points. Below that cutoff, the solar twilight band supplies its points; no separate artificial-light score is added. This cutoff is a viewing heuristic, not a universal Bortle boundary, current lighting measurement or extra hard override. The previous continuously attenuated index is replaced by this explicit rubric. The pre-existing <1% reference description remains a static low-skyglow comparison, not the high cutoff. Configured cutoffs persist in this browser; Reset restores the declared defaults without fetching weather.

SPATIAL WEATHER COVERAGE & API BUDGET

The map requests 84 regional samples covering mainland Iceland and coastal cells, arranged in 0.5° latitude × 0.75° longitude cells (approximately 35–56 km). Coastal samples use an actual coastline vertex when the cell center is offshore. Four bounded batches of at most 24 coordinates use Open-Meteo’s documented multiple-coordinate forecast API, with ECMWF IFS (~9 km source model), nearest source-grid selection, only cloud_cover and precipitation, two past days and eleven calendar forecast days (covering the rolling next-ten-day window and its following-hour endpoint). Returned model-grid coordinates are retained internally. Each regional weather sample is held constant within its cell; there is no invented smoothing, fine-scale measurement or weather interpolation between samples. Skyglow and solar inputs vary over the authentic 0.1° display grid; coast clipping and finer colored display pixels do not imply that the weather has 0.1° precision.

Weather is cached at least one hour in shared origin-local browser storage, including across reloads. Selecting a location, changing opacity, scrubbing time and animation only use cached hourly data; they do not request weather per frame. Four hourly HTTP requests represent conservatively 84 location-calls/hour, or 2,016/day for a continuously visible device. The request covers thirteen calendar days and two variables, within the documented fourteen-day/ten-variable single-location call unit. This personal owner-private noncommercial use is below the documented free limits of 600/minute, 5,000/hour and 10,000/day. Multiple devices or unrelated applications sharing an IP also consume provider limits; HTTP failures/rate limits are shown and backed off, not evaded. Call accounting depends on locations, variables and time range; batching is not represented as making 84 locations free of quota.

Forecast selection spans 240 hourly intervals from the current UTC hour (next ten days); history is a separate preceding-48-hour window. Both retain missing-input states where provider coverage is absent. NOAA Kp is matched only to its supplied three-hour intervals and is never extrapolated into the later weather forecast. Past weather is archived model output, not ground observation. Historical forecast documentation. Model issue time is not supplied; generationtime_ms is processing duration and is never treated as model issue time. Retrieved time and valid interval are distinct. Clouds use the larger of the selected hour’s two bracketing instantaneous values. Precipitation at t+1 is the preceding-hour total for [t,t+1]. Missing bracketing values remain unknown. Weather is not scored after a failed request or more than three hours since retrieval. Attribution: Open-Meteo / ECMWF, CC BY 4.0; values reformatted and combined into a derived rubric.

TIME MATCHING & PLAYBACK

Kp is used only within its supplied three-hour interval, retaining observed, estimated and predicted types. Supplied historical observed Kp takes precedence for its own interval. Missing coverage is unknown; the present minute estimate is not extended into future or past hours. Failed or aged Kp products are not scored. OVATION stays separate short-term context, is not part of the combined heat map, and is never projected over historical or future nights. Its selected-area context appears only for its valid current hour and recent observation. Solar-wind and magnetic-field observations stay explicitly current context.

Opacity defaults to 25% opaque (alpha 0.25) and is adjustable from 0 to 100%. Forecast play advances one forecast hour every one second using already cached data, from now through +48 hours. It stops at the end; playing again restarts from now. Manual time/date changes pause playback. Hidden pages and page teardown clear its single timer. Missing frames show unknown instead of reusing a mismatched earlier forecast; daytime still receives its independent zero gate.

ARTIFICIAL SKYGLOW · STATIC WORLD ATLAS 2015

Source: Falchi et al. / ISTIL, World Atlas of Artificial Night Sky Brightness, GFZ Data Services (2015 model, published 2016), CC BY-NC 4.0. The native 30-arcsecond grid reports artificial zenith brightness in mcd/m², excluding natural sky brightness. The importer streams the official archive, preserves a local Iceland crop, and samples native pixels at preset coordinates. The displayed grid is decimated to 0.1° cell-center samples, not areal averages. Global archive/raster files are excluded from deployment. Metadata includes source, retrieval, vintage, resolution and archive SHA-256.

The ratio uses a stated conventional natural-sky reference of 0.174 mcd/m². Artificial brightness below 1% of that reference is a low-skyglow heuristic, not proof of zero lighting. The exact ideal of no light pollution cannot be confirmed by this old model. No RGB-to-Bortle conversion or invented local measurements are used. Urban lighting, LEDs, snow, atmosphere and local lamps may have changed since 2015. The static layer's age is always visible, and missing samples are never treated as zero.

DARKNESS & LOCATION

Solar altitude is calculated locally using the vendored, pinned SunCalc 2.0.0 library. Version 2 returns apparent, refraction-corrected altitude in degrees. The solar calculation excludes terrain and local horizon; artificial light is included through the separate static input within the combined sky-darkness factor. The BSD license is preserved. Astronomical night is at or below −18°, nautical twilight at or below −12°, civil twilight at or below −6°. Darkness alone does not prove aurora visibility. The selected-hour test checks start, midpoint and end and uses the brightest altitude conservatively; the timeline naturally shows periods with no astronomical darkness. Clock and location are shown; calculations are not a weather observation. The moon is not modeled.

Named coordinates are approximate monitoring points, not viewing recommendations or safe access routes. The coast uses Natural Earth 1:50m public-domain geography, downloaded 11 October 2026 and reduced to the Iceland feature. No external map tiles are requested.

CAMERAS

Aurora Reykjavík’s operator YouTube camera uses the verified official embed route, loaded only on request. Credit: Aurora Reykjavík. Player navigation/load is not evidence of capture freshness, active streaming or aurora in the frame. Use the visible operator timestamp and the official link; provider playback restrictions can still apply. Third-party cookies and IP logging may occur when you load it.

Landhotel’s official northern-lights camera page is an external link: snapshot redistribution permission was not established. It is not relabeled as a camera at the selected coordinates. There are no fabricated snapshots or stock photos presented as live images.

REFRESH & FAILURE BEHAVIOR

While visible: minute Kp, wind and magnetic-field checks every minute; OVATION every five minutes; three-hour Kp products every 15 minutes; regional weather at least one hour or later if Expires requires it. Hidden pages pause polling. Requests time out after 20 seconds and use exponential backoff (NOAA up to 15 minutes; regional weather from two hours up to six hours after failures). Check now respects eligible refresh times and provider caches. Retrieval and observation/model-valid times are separate. A one-minute render tick updates ages even between requests; retained old data stays labeled stale.

Production code contains no synthetic observations. Tests use isolated fixtures outside public assets. Source access can fail, and forecasts can be uncertain even when the data is fresh.

← Return to map