Field Notes

Finding New DXCC with PSK Reporter: A Data-Driven DX Hunting Workflow

Stop calling into the void. Watch what stations a few hundred kilometers away are decoding, and you'll know exactly when a rare one is workable from your QTH.

By BG1SB  ·   ·  ~7 min read

DX hunting has a classic loop: watch the cluster, hear DX CQ'd by somebody, tune in, call, call again, give up. It works, but it's blind. You're gambling on propagation you can't see. Over the last year I've switched to a different signal that costs nothing and is far more reliable: what stations near me are decoding right now. If a station 500 km away is decoding Franz Josef Land on 15 meters, the path from my QTH to the high Arctic is open too — at this exact moment.

This article is the workflow I actually use, built around a small self-hosted tool that turns PSK Reporter's public spot data into a short list of DXCC entities I haven't worked yet but realistically can, right now.

Your neighbors are a propagation oracle

PSK Reporter already publishes millions of decoded-spot records a day: station A decoded callsign B on frequency F with signal strength S at time T. The data is a living map of who is hearing whom across every band, worldwide.

The trick is that propagation is regional. If a station in my propagation zone decodes a DXCC entity, the same opening is almost certainly reaching my antenna too. This is the principle behind propagation beacons — except instead of one beacon, I have thousands of nearby operators, each reporting in real time. The hard part is never the data; it's filtering it down to: "which DXCC do people around me hear that I still need?"

A personal PSK Reporter analysis dashboard

To answer that question continuously, I run a small dashboard that ingests PSK Reporter spots into a database, keeps my worked-DXCC list, and recomputes a recommendation set every few minutes. It's the kind of thing that started as a script and grew into a proper page — full-data explorer, a map of nearby spots, and a DXCC recommendation view.

It runs at radio.vlsc.net and knows my station: Beijing, grid ON80da. Everything downstream is relative to that QTH.

How the recommendation works

Under the hood it's a single question, restated as a query:

Within the last N hours, which DXCC entities were decoded by stations within 1000 km of me — that I have not yet confirmed in my log?

Three parameters control the answer, and all three are knobs I've learned to respect:

Reading the table

The recommendation view is a small table — DXCC, band, spot count, distinct calls, average SNR, most recent time, and a status flag. Two columns matter more than the rest:

Spot count and distinct calls tell you how solid an opening is: five spots from three different German stations means a healthy path; one spot from one station means a fragile but possibly precious one.

A real evening session

Here's a live example from tonight. The 2-hour window returned two candidates:

DXCCBandSpotsCallsSNRLast heardStatus
Franz Josef Land (R1FJZ)15 m11−16 dB18:49 local🆕 First seen
Fed. Rep. of Germany (DL)15 m53−14 dB18:44 localAlready appeared

The headline is Franz Josef Land — an Arctic entity I've never worked, flagged first seen, one spot, one call, on 15 meters, heard at 18:49 local. A station near me was decoding it twenty minutes before I looked. The Arctic path was open. That's the moment the tool exists for: not "someday workable," but workable right now.

Germany was the volume play — five spots from three calls, a solid but ordinary path to a common entity that still counts toward the DXCC total. And earlier, before it slipped out of the 2-hour window, Dodecanese had shown up on 20 meters — a reminder that keeping a couple of windows open catches the ones you'd otherwise miss.

Behind it all, the propagation backdrop: F10.7 at 200 (high solar flux — the high bands are alive), Kp 1.7 (a quiet geomagnetic field), Bz positive. That combination is exactly why the action was on 15 meters rather than 40.

The action sequence

The tool narrows the world down to a shortlist; the QSO still happens at the radio. When a candidate looks fresh, my sequence is:

  1. Get the callsign. The recommendation is at DXCC granularity. I open the live map or full-data view filtered to the last few hours to pull the actual callsigns and frequencies.
  2. Trust the band. If the tool says 15 m, I go to 15 m. The band it was decoded on is the band the path supports.
  3. Tune and decode. Set the frequency, let the decoder run, and the first time the call appears, answer. With FT8, being already tuned when the station transmits is half the battle.
  4. Log it. The confirmation goes into the log, which is what makes the worked list — and therefore the whole recommendation engine — accurate.

None of this is magic. The tool just makes sure I'm at the right frequency at the right time, and tells me which entity to chase in the first place.

What I've learned

Field notes

Tonight's session ended the way most good ones do: a short list, one clear priority, and the clock already past 21:00 local. The 15-meter path to the Arctic that had been open at 18:49 was fading by the time I had the rig warmed. That's the honest part of this workflow — the tool tells you the window exists, but it doesn't hold it open for you. The value isn't in the recommendation itself; it's in being ready when the flag goes up: tuned, decoding, and pointed at the right band.