A personal HF propagation tool centered on a single Maidenhead grid, with separate scoring models for long-distance (DX) and short-range high-angle (NVIS) work.
The geometric intuition: DX cares about how the bands behave at low elevation angles over long paths, so its model weights D-layer absorption heavily — that’s where most of the signal loss happens on a multi-thousand-kilometer hop. NVIS cares about whether the F-layer is ionized enough to bounce signals straight back down to you, so foF2 is the dominant story — if the critical frequency falls below your operating frequency, the signal punches through and you hear nothing locally regardless of how much sunspot activity there is. D-layer absorption still matters on 80 and 40 m around midday, especially in summer and during flares, but with less weight than on a long DX path.
DX mode applies a continuous D-layer absorption term derived from solar elevation, SFI, and current X-ray flare class, weighted per band (80 m hit hardest, 10 m essentially immune). Because the D-layer sits ~90 km up it stays sunlit ~9° past ground sunset, and its electrons take 30–45 min to recombine afterward — both effects are modeled, so dayside absorption persists right up to and a bit past local sundown rather than vanishing at the geometric horizon. A gray-line bonus boosts 80 m during civil twilight. Geomagnetic Kp adds a uniform penalty above Kp 4–5.
NVIS mode compares operating frequency to the available foF2. For “now,” the measured value from the nearest GIRO ionosonde takes priority; the IRI climatology fills in when no station is reporting. The +3 h and +6 h forecast horizons use IRI directly, since no real-time measurement of the future exists. Quality is primarily determined by how far foF2 exceeds the band’s operating frequency. A reduced D-layer absorption term (solar elevation + SFI + flare class) is then applied to reflect the dayside losses on 80 and 40 m as the signal traverses the D-layer twice on the up-and-down path.
Quality buckets are poor, fair, good, excellent. The +3h and +6h columns reuse the same model with projected Kp and recomputed solar geometry; SFI is held constant (it changes too slowly to matter at that horizon) and flares are not projected forward (they decay in minutes).
The HAF indicator (Highest Affected Frequency from NOAA's D-RAP product) is shown alongside the model for comparison but does not currently feed the band ratings — the in-house absorption formula above runs independently. The two are deliberately decoupled while we observe how their dayside and flare-time outputs agree.
For POTA / SOTA activators: the activator’s problem is “will the people who hunt me actually be able to copy my signal from this park, right now or in two hours when I get there?” A generic report gives you global SFI and a vague colored grid, but doesn’t know whether you need DX or NVIS. This tool tells you both, side-by-side, for your specific location and for the future window when you’ll actually be operating.
For regional nets: regional nets live or die by foF2 — if the F2 critical frequency drops below the net frequency, the net fails regardless of what the global SFI says. This tool pulls real measured foF2 from the nearest ionosonde, so when an NVIS net on 75 m starts losing check-ins it’s usually visible here before it’s visible on the air.
For DX: the +3 h and +6 h columns let you plan around band openings. Querying a remote grid (e.g. ?grid=PM85) recomputes solar geometry at the far end, so you can see when the target region transitions through gray-line or when a flare blackout on the path is likely to have cleared.
When a new feature ships or the model is meaningfully revised, a short announcement appears on first load as a dismissable modal. Click OK to dismiss it; the page remembers (in browser local storage) which announcements you've already seen, so you won't be shown the same note again on subsequent visits. If several have queued up since your last visit, they're shown one at a time with a counter (“2 of 3”).
To re-read past announcements, append ?news=all to the URL. That replays every embedded message in order, oldest first, without updating the “last seen” marker — so your normal dismissal state is preserved. Only announcements posted in roughly the last week or two are embedded; older ones are dropped from the page to keep its weight down.
poor/fair/good/excellent) are subjective and tuned to typical SSB/CW DX or NVIS regional work. WSPR and FT8 routinely succeed on bands labeled poor; that’s expected, not a model failure.This report would not exist without the data and services freely provided by:
This is a non-commercial personal project. Comments, corrections, and suggestions to KD6O.
What worked, what didn’t, what surprised you, what’s missing. Your callsign if you want a reply. Hit Send and your local email client will open with the message ready to send to KD6O.
| Band | now 11:07 · Kp 1.3 |
+3h 14:07 · Kp 2.0 |
+6h 17:07 · Kp 1.7* |
WSPR DX >1500 km, last 15 min |
|---|---|---|---|---|
| 160m | poor 0 0 | poor | poor | — |
| 80m | poor 0 0 | poor | poor | — |
| 60m | poor 0 0 | poor | fair | — |
| 40m | poor 0 0 | poor | fair | — |
| 30m | fair 0 0 | fair | fair | 9 · 5 RX · -24 dB |
| 20m | good 0 0 | good | good | 116 · 22 RX · -17 dB |
| 17m | good 0 0 | good | good | 52 · 14 RX · -25 dB |
| 15m | good 0 0 | good | good | 26 · 8 RX · -24 dB |
| 12m | good 0 0 | good | good | 5 · 5 RX · -26 dB |
| 10m | fair 0 0 | fair | fair | 26 · 10 RX · -22 dB |
Solar radio emission at 2.8 GHz. Proxy for the EUV that ionizes the F-layer and lifts the MUF. Higher = better high-band DX (15/12/10 m especially).
Typical: <70 minimum · 100 low · 140 active · 180+ solar peak.
The classic measure of solar activity — daily count of sunspots weighted by group size. Tracks the ~11-year solar cycle. Strongly correlated with SFI.
Typical: 0–30 minimum · 30–100 ascending/descending · 100–200 active · 200+ peak.
3-hour global measure of geomagnetic disturbance from a network of magnetometers. Quasi-logarithmic. Higher Kp = more HF absorption, especially on polar paths and high bands.
0–2 quiet · 3–4 unsettled · 5 G1 minor storm · 6 G2 moderate · 7+ severe.
Solar X-ray flux measured by GOES satellites, indicates flare activity. Classes A < B < C < M < X (each 10× the previous). Flares cause sudden ionospheric disturbance — dayside HF degradation lasting minutes to an hour.
A/B background · C minor · M dayside fadeout · X dayside blackout.
NOAA SWPC's estimate of the highest frequency at which at least 1 dB of D-layer absorption is occurring at your QTH right now. Frequencies below HAF are absorbed more strongly (roughly 1/f²); frequencies above it pass through nearly unaffected.
For example, HAF = 8.1 MHz means 160, 80, 60, 40 m are absorbed; 30 m and above are clean.
Updated every minute from GOES X-ray + 5-min proton flux.
Highest frequency the F2 layer reflects straight back down. For NVIS, your operating frequency must be below foF2 or your signal punches through and doesn't return. Also caps the MUF.
<3 only 160 m NVIS · 3–5 80 m marginal · 5–8 80 m solid, 40 m marginal · 8–12 40 m good, high MUF · 12+ great DX bands.
The IRI forecast ×0.79 note means today's measured foF2 differs significantly from the IRI climatology, so the +3h and +6h forecast foF2 values are being scaled by that ratio to anchor them to live conditions.
The north–south component of the solar wind's embedded magnetic field, measured at L1 ~1 hour upstream of Earth. Sustained southward (negative) Bz couples solar wind energy into Earth's magnetosphere and drives geomagnetic storms. The single best ~1-hour leading indicator for Kp.
+5 to −5 quiet · −5 to −10 storm-driving · −10 to −20 strong · <−20 severe.
Speed of solar wind plasma at L1. Faster wind couples more energy into the magnetosphere, especially when Bz is also southward. Sustained elevated speed often signals a coronal hole stream that drives recurring Kp activity.
300–400 slow/quiet · 400–500 normal · 500–700 fast (Kp watch) · 700+ very fast (CME or strong stream).
Whether the sun is above the horizon at this location. Drives the D-layer absorption that kills 80/40 m DX during the day, and the gray-line bonus that briefly opens those bands at sunrise and sunset.
Watch for the gray-line window (~30 min around sunrise/sunset) — best low-band DX of the day.
:Product: 3-Day Forecast
:Issued: 2026 Jul 06 1230 UTC
# Prepared by the U.S. Dept. of Commerce, NOAA, Space Weather Prediction Center
#
A. NOAA Geomagnetic Activity Observation and Forecast
The greatest observed 3 hr Kp over the past 24 hours was 4 (below NOAA
Scale levels).
The greatest expected 3 hr Kp for Jul 06-Jul 08 2026 is 2.67 (below NOAA
Scale levels).
NOAA Kp index breakdown Jul 06-Jul 08 2026
Jul 06 Jul 07 Jul 08
00-03UT 2.67 1.67 1.33
03-06UT 2.00 1.33 1.33
06-09UT 1.67 1.33 1.33
09-12UT 1.33 1.67 1.67
12-15UT 2.00 1.67 1.33
15-18UT 2.00 1.33 1.33
18-21UT 2.00 1.33 1.67
21-00UT 2.00 1.33 1.67
Rationale: No G1 (Minor) or greater geomagnetic storms are expected. No
significant transient or recurrent solar wind features are forecast.
B. NOAA Solar Radiation Activity Observation and Forecast
Solar radiation, as observed by NOAA GOES-18 over the past 24 hours, was
below S-scale storm level thresholds.
Solar Radiation Storm Forecast for Jul 06-Jul 08 2026
Jul 06 Jul 07 Jul 08
S1 or greater 10% 10% 5%
Rationale: There is a slight chance for a greater than 10 MeV proton
event (S1-Minor) on 06-07 Jul due to the recent and potential flare
activity of Regions 4478, 4479, and 4482.
C. NOAA Radio Blackout Activity and Forecast
Radio blackouts reaching the R2 levels were observed over the past 24
hours. The largest was at Jul 05 2026 1757 UTC.
Radio Blackout Forecast for Jul 06-Jul 08 2026
Jul 06 Jul 07 Jul 08
R1-R2 75% 55% 20%
R3 or greater 20% 10% 5%
Rationale: R1-R2 (Minor-Moderate) radio blackouts are expected, with a
slight chance for an isolated R3 (Strong) event, through 06 Jul. As
Regions 4479 and 4480 rotate around the west limb by 07 Jul, activity is
expected to decrease. However, moderate levels are likely to persist
until these regions rotate another day beyond the limb. Activity should
decrease to a slight chance for R1-R2 (Minor-Moderate) levels on 08 Jul
as these regions complete their transit of the limb.
2026-05-21.md