Skip to main content

Importing Contacts

Hamtrax has one import path: import a past activation from an ADIF file. The whole session — folder, metadata, and every QSO — comes in as a single activation.

Hamtrax does not import CSV, Cabrillo, or contest-format files

There's no general "import a logbook" flow. If you have older contacts in a different format, the easiest path is to convert them to ADIF (most loggers can export ADIF) and bring them in as one or more past activations.


Importing a past activation

If you have an ADIF file from a previous POTA, SOTA, IOTA, WWFF, GMA, NPOTA, or other activation, Hamtrax will create the activation folder and import every QSO in one step.

Steps

  1. Open the Logbook tab.
  2. In the folder tree, find the Activations category folder and click the Import button that appears below it (alongside New).
  3. Drop your ADIF file (.adi or .adif) onto the drop zone, or click Browse Files.
  4. Hamtrax parses the file and auto-detects:
    • Activity type — from the MY_SIG field. Choices in the dropdown: POTA, IOTA, SOTA, WWFF, GMA, NPOTA, Other.
    • Location reference (e.g. K-1234) — from the MY_SIG_INFO field.
    • Activator callsign — from STATION_CALLSIGN or OPERATOR.
    • Date range — from the earliest and latest QSO dates.
  5. Review and edit the detected fields. If the file omits MY_SIG / MY_SIG_INFO, you'll need to fill them in manually. Location reference is required to enable the import button.
  6. Preview the QSOs. Up to 200 contacts are shown with callsign, date, band, and mode. Larger files show a "+ X more contacts (will be imported, not previewed)" footer — the full set still imports.
  7. Click Import [N] QSOs as Activation to confirm. A progress bar tracks the import.

When the import completes, Hamtrax will have:

  • Created an activation folder in the Activations category, named in the standard callsign@reference-YYYYMMDD format, with all session metadata (start/end time, activity type, location reference, callsign).
  • Imported every QSO into that folder with the activation reference, MY_SIG, and MY_SIG_INFO fields set.

[SCREENSHOT: Import Activation modal showing parsed-QSO count, activation-detected banner, and the Activity Type dropdown]


Validation and warnings

The importer is conservative — bad records are dropped at parse time so they don't pollute your log. Whenever a record is rejected, the count appears as "N skipped" in the file-info banner, and an expandable Show N skipped records disclosure lists each error with its record index and reason.

What gets dropped:

  • Missing required fields — every record needs CALL, QSO_DATE, and TIME_ON.
  • Invalid date — the QSO_DATE must be a real YYYYMMDD between 1900-01-01 and one year from today. Feb 30, 99999999, year 1776, etc. are rejected.
  • Invalid timeTIME_ON / TIME_OFF must have hours < 24, minutes < 60, seconds < 60. A typo like 250000 is rejected instead of becoming "25:00".
  • Garbled callsign — must be at least 3 characters and contain only letters, digits, and / (for portable suffixes like W1AW/P).
  • Oversized field — any single ADIF field declared larger than 64 KB drops the whole record. (Real fields don't get anywhere near this; this catches malformed files where a length declaration corrupts the rest of the record.)
  • Frequency out of range — anything ≤ 0 or ≥ 300,000 MHz is replaced with 0 (the BAND field, if present, is still used).

The review screen also shows two HEADS UP banners when applicable:

  • Mismatched park / program. If the file contains QSOs whose MY_SIG_INFO or MY_SIG points at a different activation, those QSOs are skipped rather than silently re-tagged. The banner shows the count: "N QSOs reference a different park or program and will be skipped."
  • Duplicate collapse. Identical records (same callsign, date, time, band, mode) within the file collapse to one. The banner shows the count: "N duplicates will be collapsed to one."

The Import button always reflects the actual number that will be written, not the raw count parsed from the file.


Offline imports

You can import an activation without an internet connection. Contacts are saved to your local database immediately and sync to the cloud when you reconnect.

Large files (10,000+ QSOs) parse in a few seconds. The contacts preview is capped at 200 rows for responsiveness; the full set imports.