Skip to main content

Choosing an Import Source

This is the Select step of Importing Contacts — where the importer lives, what it accepts, and how each source hands its contacts over. Once a source loads, every one stops at the same source summary before How Imported Contacts Are Filed.

Getting to the importer

Open the shared Import Contacts page from any of these shortcuts:

  1. Import in the sidebar — its own row at the top, first under Manage Contacts, which opens it in one tap.
  2. Logbook → Import Contacts — the button above the Contact Folders heading.
  3. Activate → Import a past activation.
  4. Logbook → Parks on the Air → Activations → Import.
  5. QRZ connection page → Import from QRZ — opens this importer with QRZ already selected and starts the fetch immediately.

All five open the same importer. The QRZ shortcut begins retrieval immediately; it skips only the source chooser, not the Select summary, Review, or Finalize, and nothing is saved automatically.

During Select, the page has one Back control above its title. It reads Back to logbook on the source choices, then Back to import options after you open Import from file, Import from connection, or Migrate from your logger.

After the source is read and routed, Select stays highlighted and shows We found X contacts with the records-read, ready-to-import, unreadable, duplicate, and rejected counts that apply. The headline and each count row stay visible and centered; only Show parse notes remains a disclosure when the source has notes. The top Back to import options button returns to the source choices. The bottom Next button opens Review with the same routed plan — it does not read or route the source again.

Supported files

Choose Import from file, then drop one file onto the drop zone or click to browse:

  • ADIF (.adi or .adif) — the standard amateur-radio log format, exported by virtually every logger. A contact's notes are read from the file's COMMENT field, or from NOTES when there is no comment, so a log written either way keeps what you wrote on each QSO. A summit or WWFF reference written in the dedicated SOTA_REF or WWFF_REF field, or their MY_ twins, is read as that program's activity when the record has no SIG / SIG_INFO pair, so a log from SOTAdata or a desktop logger sorts the same way as one tagged SIG=SOTA. When a record carries both, the SIG pair decides, and a record naming both a summit and a WWFF area is read as the summit. The dedicated field itself stays with the contact and is written back on export.
  • CSV (.csv) — a spreadsheet-style file. Hamtrax reads its own CSV export back in with full fidelity (a complete round-trip), and recognizes the common column names other logbooks use (CALL, QSO_DATE, TIME_ON, FREQ, BAND, MODE, COUNTRY, DXCC, and so on) automatically. There's no column-mapping step to fill out — recognition is automatic. Hamtrax finds the header row itself: if your spreadsheet export starts with a title line and an export date above the column names, it looks down the first ten rows for the real header, so you do not have to tidy the file first. It also detects the separator, so a tab- or semicolon-separated file still reads correctly even when it was saved with a .csv extension. If no header can be found, the error quotes the first row of your file so you can see what Hamtrax actually read.

Local ADIF and CSV files have a 64 MiB safety ceiling. Hamtrax checks the file size before reading it into browser memory, so an unexpectedly huge or hostile file stops with a clear error instead of freezing the tab. Individual records can still be turned away for their own reasons once the file is open — see Import Validation.

CSV imports also retain CONTEST_ID, SAT_NAME, SAT_MODE, PROP_MODE, and SUBMODE when present, keeping those details available for review and custom-folder suggestions. A SOTA_REF or WWFF_REF column is not among them — a spreadsheet carries an activity only in its SIG and SIG_INFO columns — so export a summit or WWFF log as ADIF when you want those contacts sorted by their program.

Export from another logger

Choose Migrate from your logger, then select See Steps for the logger whose file you want to move:

LoggerRecommended export
World Radio LeagueGeneral ADIF for a whole logbook, or a filtered QSO Manager export
Ham2K PoLoFull ADIF Export
HAMRSADIF export from Logbook Actions

Each guide explains only how to get the file out of that logger. Return to Importing Contacts for the maintained Hamtrax steps.

The Import from connection screen contains the two services backed by production connections: QRZ Logbook imports contacts, while Logbook of The World manages confirmation sync for contacts already in Hamtrax. LoTW does not import historical contacts, and a logger that requires a file stays under Migrate from your logger rather than appearing as a connected service.

When you open either connection page from Import Contacts, its Back button returns here. When you open it from Settings — or load its URL directly — Back returns to Settings → Integrations.

Import directly from QRZ

Start from either place:

  • From the connected QRZ page, select Import from QRZ. Hamtrax opens Import Contacts and begins retrieval without asking you to choose a method or provider again.
  • From Import Contacts, choose Import from connection to see QRZ Logbook. If its card says Connect, open the dedicated page and add the API key; once connected, you can use either page's import action.

Hamtrax fetches the logbook in pages through its authenticated server gateway; your browser never contacts QRZ directly. Then use the same program-specific Review stages as file imports and finish the review to save only the new contacts.

Direct QRZ imports are capped at 100,000 contacts or 64 MiB per run. This keeps an unexpectedly large or malformed remote response from overwhelming the browser; no contacts are saved unless the complete fetch fits within both limits.

If a QRZ contact already exists locally, Hamtrax skips the duplicate and attaches its QRZ log ID to the matching local contact. That remote identity is what lets auto-push recognize the contact as already present in QRZ. A duplicate-only QRZ review can still be finished so those IDs are attached even when there is nothing new to save. Importing never deletes a contact from QRZ. Imported contacts are never auto-pushed either, and deleting an imported contact in Hamtrax always leaves the QRZ original alone.

Prefer a file, or need to connect first? See Import from QRZ for both supported paths.

Sync confirmations from LoTW

Choose Import from connection → Logbook of The World to open its dedicated connection page. Enter your LoTW username and password and select Connect LoTW. Hamtrax validates the login, then stores it encrypted on its server so the connection works from any device signed in to the same Hamtrax account. Select Sync Confirmations to request a read-only confirmation report; connecting does not start a sync, and syncs are never automatic. See LoTW Confirmation Sync for connection management and the one-time reconnection from the old vault.

Hamtrax matches each confirmation to an existing contact by callsign, UTC date and minute, band, mode or submode, and station callsign when LoTW supplies it. A confirmation cannot be reused for a second local row. Any confirmation with no exact local match is kept on that device and retried during later syncs, while the LoTW cursor continues forward. LoTW uploads remain a separate TQSL workflow; see Exporting Contacts.

Automatic POTA starter import

When your Hamtrax account gets a callsign for the first time, or when you change it later in Settings → Account, Hamtrax fetches the public POTA profile for that callsign and imports the latest public hunter QSOs POTA exposes. This is a starter import only: POTA currently exposes a capped recent public list, not your full private POTA logbook.

These contacts follow the same rules as file imports: Hamtrax skips duplicates, files hunted parks into monthly Hunting folders, fills map coordinates from POTA park data when available, and runs the same folder guardrails before anything is saved. The import runs in the background with a transactional per-callsign claim, so two devices cannot import the same profile at once. A successful import is final; if POTA returned no profile or no public rows, Hamtrax may retry after seven days on a later app open instead of treating that temporary empty response as permanent. Accepted contacts appear automatically while Hamtrax is open and connected; you can keep using the app while the import runs.

Importing a single past activation

There is no separate activation importer. Tap Import a past activation on Activate, or Import beneath Logbook → Parks on the Air → Activations; both shortcuts open Import Contacts.

Choose Import from file, upload the ADIF or CSV, and review the destinations Hamtrax derives from the file. For POTA contacts to land in an activation folder, the source must carry valid operator-side POTA activity identity, including the park reference. Hamtrax does not ask you to invent or overwrite a missing park during import: missing, invalid, or ambiguous identity stays visible in Review and is never silently re-tagged.

An imported activation arrives finished, not live. When a matching recorded activation already exists, its span can keep a session together through 0000 UTC. Without one, contacts are organized into activation folders by UTC day.

Re-importing is safe: the same guarded duplicate checks used for every other import skip contacts already in your logbook.