Skip to main content

How Imported Contacts Are Filed

The importer takes an entire logbook and files each contact where it belongs — activations into activation folders, POTA hunting, DX chasing, and repeater contacts into their own monthly folders, and everything else into custom folders. For contacts that need a custom destination, Hamtrax suggests useful groupings from clues in your import for you to review.

The Review step of Importing Contacts shows each destination in this order: Activations → POTA hunting → DX chasing → Repeaters → Custom Folders — Manually organized → Custom Folders — Unrecognized → Finalize — that last stage shares its name with the Finalize step that runs the import after Review. Each automatic stage shows Auto-organized beneath its title, matching the Logbook's folder organization, and each program keeps its own review stage even when its folders cover the same months.

Stages that do not apply are skipped. Custom Folders — Manually organized appears when Hamtrax has proposals. Custom Folders — Unrecognized appears for contacts without a suggestion or set aside for manual filing, with a small, muted orange warning triangle calling out that these contacts still need an organization choice. Excluding every contact in a stage keeps it available so you can restore them.

For the same rules drawn as decision trees, see Every Import Decision, End to End.

Throughout the Review step, automatic and Unrecognized destination cards start with New folder or Existing folder. Cards in Custom Folders — Manually organized instead start with New suggested folder or Existing suggested folder. Each card then shows the complete visible Logbook path one folder level per line. POTA destinations read Parks on the Air → Activations/Hunting → folder; hunt-only programs read DX Chasing/Repeater contacts → month; custom destinations read Custom folders → any existing custom ancestors → folder. The hidden All Contacts storage root is omitted. An activation leaf still shows the park's real name above its technical folder name, and every contact row carries the reference that sent it there, because that reference is the reason for the destination. Where one activation is split across two cards because it ran through 0000Z, the second card says so in place — activations are scored per UTC day, so a session from 23:40Z to 00:19Z is filed as one folder per day by design, not by accident.

When a stage proposes more than one folder, use the folder-order dropdown to reorder its rows. Latest folder first is the default; the other choices are Oldest folder first, Contact count: decreasing, and Contact count: increasing. Each row shows its latest included contact as a YYYY-MM-DD UTC date at the top right. Use the centered Show N contacts disclosure beneath the folder details to open a table with labeled columns for callsign, UTC date and time, reference, band, and mode. On narrow screens, scroll the table sideways to see every column; it keeps a readable width instead of squeezing the contact details. Column headings stay visible while you scroll down its contacts. Counts and dates use the contacts still included in the import. Excluded contacts stop contributing to both values and the sort.

Use Next to the right of the centered review title to inspect each category in turn until Finalize. In Unrecognized, Next waits until that stage has somewhere to put its contacts — see Custom Folders — Unrecognized for what counts; excluding that stage's contacts goes straight to Finalize. That stage replaces Next with Import, in that same slot beside the title at every screen width — unless the run has nothing left to import, in which case the slot stays empty and the stage itself says why; see Review's Finalize stage. Import carries no count of its own — Finalize's To Import tile is where that number lives, among the counts described in Duplicates and the Import Summary.

During Review, Back sits to the left of the review title and the page-level Back control is hidden. On the first review, Back returns to the preserved Select source summary; selecting Next there reopens Review with the same routed plan and choices. When an earlier review stage exists, Back returns to it, including from Finalize. It steps aside whenever the Custom Folders — Unrecognized card has a step of its own to undo, so only one back control is on screen at a time — see that card's own way back. These navigation controls save nothing; contacts are written only after you confirm on that stage.

How contacts are sorted

Hamtrax resolves each activity through the installed program packages and routes it automatically. This core filing policy also drives the Logbook's global Add Contact preview and save, so one contact reaches the same program destination whether it came from a file or the manual form. Three programs are installed today — Parks on the Air, DX Chasing, and Repeaters — and the same seam is ready for later programs without changing the importer:

  • You activated under a supported program (a "my reference" in MY_SIG_INFO; currently POTA only — DX Chasing and Repeaters do not support activations) → that program's activation folder, named in POTA's current CALLSIGN@PARK-YYYYMMDD format. Hamtrax checks each contact against same-program activations already in your logbook: if one recorded a session covering that contact's UTC day, the contact joins it, so a session that ran through 0000 UTC stays whole. Otherwise Hamtrax creates a folder keyed to the contact's UTC day.
  • You recorded a POTA hunt, DX chase, or repeater contact with no MY activity identity (a "their reference" in SIG_INFO — a POTA park reference, SIG reading DX with the ADIF DXCC entity number in SIG_INFO, like 269 for Poland, or SIG reading REPEATER with the repeater's callsign and output frequency in SIG_INFO, like W0ERH 442.100) → that program's UTC-month folder, created automatically if needed. Program-scoped monthly folders require the same program, a reference valid for that program, no MY_SIG / MY_SIG_INFO, and the same month — a DX month never takes a POTA hunt, a POTA month never takes a DX contact, and neither takes a repeater contact. A contact whose MY side names a reference is activation/P2P-owned and cannot enter a month; when that MY program is unsupported, the import keeps the original fields and offers the contact in the custom-folder review instead of stripping them. Released POTA YYYY-MM folders preserve month-only compatibility for blank-program legacy contacts, while an explicit other program is still blocked.
    • A MY_SIG with no MY_SIG_INFO beside it is dropped, because it names nothing. A program code on its own selects no folder, earns no program credit, and isn't a meaningful ADIF pair to keep. Some loggers stamp the log type's program code onto every record of a session-typed log whether or not you recorded a location — HAMRS writes MY_SIG=POTA across a whole POTA-typed logbook — so reading that bare code as an activation would keep an ordinary hunt out of its month for no gain. Hamtrax removes it and files the contact using its contacted-side reference. The test is the reference, not the program, so it applies the same way whatever the code says. A MY side that does name a reference is never touched — including an unsupported program like SOTA with a real summit reference, which still keeps its fields and goes to a custom folder — and a reference a supported program refuses is still reported as a rejection rather than quietly erased.
    • Repeater contacts route on that explicit SIG tag only. Nothing is inferred from a frequency, a mode, or a callsign, and no logbook before Hamtrax wrote SIG=REPEATER — so the tag is effectively Hamtrax's own export coming home, and a contact through a repeater that arrives untagged simply files like any other untagged contact.
  • The contact carries no activity tag at all, but names a DXCC entity → the DX Chasing UTC-month folder for that entity. No logger other than Hamtrax writes SIG/SIG_INFO for DX — that ADIF pair names a special-interest activity like POTA or SOTA, and country chasing has no such tag — so a DX contact exported from another logbook or pulled from QRZ arrives carrying only the standard DXCC entity number, or a COUNTRY name. Hamtrax reads either one and files the contact, using the very same rule that decides whether a country counts as worked on your DX Chasing tab. A DXCC value must be a complete integer that names a current ADIF entity: partial values such as 9A, scientific notation, zero, and unknown entity numbers are ignored rather than half-read into the wrong country. Country names are matched against the official ADIF entity list, plus a small hand-checked set of everyday short names — so Germany finds the entity the list calls Federal Republic of Germany. Names that genuinely cover more than one entity are never guessed: Korea, Russia, Congo, United States and United Kingdom each span two or more DXCC entities, so a contact carrying only one of those words waits for you in the custom-folder step rather than being credited to the wrong country. Three things stop it from over-reaching: another program's tag on either side always wins, in the SIG pair or in that program's own dedicated ADIF field (a summit chase stays SOTA even when it also carries a DXCC number, and your own activation stays an activation), the entity must be a real current one from the official ADIF list, and contacts in your own country are left alone — most loggers stamp DXCC on every contact including domestic ones, so filing those would bury the real DX in your own folders.
  • The activity is unsupported or ambiguous, or neither side has an activitycustom-folder review. The original fields stay unchanged; Hamtrax never guesses a program or re-tags SOTA or WWFF as POTA. Review the folders selected for creation in Custom Folders — Manually organized, then decide whether to import or exclude contacts without a suggestion or set aside for manual filing in Custom Folders — Unrecognized. If a known supported program is explicit but its reference is invalid, the row is rejected instead of falling through to a less-protected folder.

Activation folders are fixed by your park and the session Hamtrax matched the contact to. POTA hunting, DX chasing, and repeater folders are fixed by their program, valid worked reference, and UTC month. Those destinations cannot be changed in Review, which keeps the same folder-hygiene rules as normal logging. Custom folders have no protected placement rule, so the two custom review stages ask how you want those contacts organized. Protected destinations are fixed during Review: if an import files an activation under a park reference that was wrong in the file itself, tap the finished folder's name card to correct its park.

Why one folder, and not one per UTC day

Because that is what POTA asks for. Their log-submission guidance is explicit:

"It is recommended to combine logs from a single activation into a single ADIF file where applicable (same park and same station callsign), although not required."

"A single ADIF file may contain multiple UTC days."

POTA — Submitting Logs

An activation folder is what Hamtrax exports as one log file, so cutting a session in half at midnight would hand POTA two files where they want one. Splitting also never affected your credit either way — POTA scores from the timestamps in the log, not from how your folders are arranged.

Folders still merge the way POTA counts activations:

"Multiple activities at the same park in the same state/province/entity and the same UTC day count as a single activation, provided that the ten or more QSOs combined were made."

POTA Rules

One case still splits at midnight

If a file's contacts run through 0000 UTC and there is no matching activation already in your logbook, they land in one folder per UTC day. There is no recorded session for them to rejoin, and Hamtrax won't guess where one session ended and the next began. POTA permits either shape, so Hamtrax takes the honest one rather than inventing a session boundary.

When an imported contact is missing coordinates, Hamtrax fills them from data already on your device — the POTA park catalog first, then the callsign data Hamtrax keeps locally. POTA park coordinates always win over callsign coordinates for both the operator side and the contacted-station side, so maps use the actual park location for POTA contacts. A contact that already carries a grid square is left as it is, because a grid square is enough on its own — maps, shared maps, and QSL cards turn it into a point when they draw, and an export carries it through as a grid square.

Nothing in this step goes out to the internet to look a callsign up, so filling in locations never holds up a large file. The trade is worth knowing: a station the local callsign data doesn't list — most stations outside the US, and very new licensees — is stored without coordinates of its own unless its record carried a grid square. Nothing else about the contact changes. It files into the same folder and exports exactly the same, and your own side of the QSO is still placed from the park you activated, the folder it landed in, or your profile location; the contact simply has no pin of its own on the map until something can say where it was.

Contextual custom-folder suggestions

In Custom Folders — Manually organized, each proposed folder uses the same row layout as the other review stages, with its full editable name, contact count, latest-contact date, and expandable contacts. Each contest year, each month of chasing, and each activation session has its own row and independent choice.

Expand a suggested folder to see the values that led Hamtrax to group its contacts. Matching dates, bands, and modes are highlighted in their own columns. Other clues appear in Matching details, such as a contest ID, satellite, activity tag and reference, propagation mode, matched net phrase from the notes, or portable station and location. Only the clues used for that suggestion are highlighted, and editing the folder name leaves those original values unchanged.

Every suggested folder starts on Create this folder. Change its dropdown to I'll folder these myself (next) to mute the row and send its contacts to Custom Folders — Unrecognized. The name and dropdown remain usable, and you can switch it back at any time. This choice does not exclude any contacts. Your dropdown choices remain in place if you retry the import or update your account callsign during review.

Select a suggested folder's name or edit folder name directly below it to edit the import suggestion. The name becomes a focused input field. Leaving the field or pressing Enter applies the change and shows the name again; leaving it blank restores the previous name. New suggested folder means Hamtrax will create it, while Existing suggested folder means the import will add to the named destination. Nothing is created until you confirm the import.

Clues include a recorded contest ID, a satellite name, an activity program Hamtrax does not run itself (tagged in the SIG pair or in the dedicated SOTA_REF / WWFF_REF fields — see Supported files), or a propagation mode. Hamtrax groups recurring contests across years and unsupported programs such as SOTA, WWFF, or IOTA by whether you chased their references (SOTA Chasing) or activated them (MY SOTA) before choosing which groups to suggest. It then shows the actual folders separately, shaped like the folders Hamtrax keeps for its own programs: one row per contest year (ARRL-FIELD-DAY - 2019, ARRL-FIELD-DAY - 2020), one per UTC month of chasing (SOTA Chasing - 2026-06, SOTA Chasing - 2026-07) like a monthly hunting folder, and one per operator reference and UTC day like an activation folder. Activator-side suggestions start from the callsign@reference-YYYYMMDD convention used by native activation folders, with computer-friendly punctuation in the proposed custom name, such as W1AW@W0C-FR-001-20260627 for reference W0C/FR-001. You can keep one year, month, or session, rename another, and file a third yourself.

Generated custom-folder names use plain hyphens between parts, such as 20m - SSB. They keep letters and numbers, including non-English letters, ordinary spaces, hyphens, underscores, periods, and @, and replace other punctuation with hyphens. This cleanup applies to suggested names and generated month, year, band, or mode groups. It leaves your contact data, existing folder names, names you type yourself, and native automatic-folder names unchanged.

Chased references share their month's folder whatever summit or area they name, so a lifetime of chasing reads month by month instead of as one folder holding every reference you ever worked. A reference recorded with no program code is still offered on its own. A satellite name already says how the signal travelled, so those contacts are offered by satellite rather than as a generic SAT propagation folder. Patterns Hamtrax infers rather than reads — a shared named net in the notes, the same portable station and operator location on one UTC day, or a shared band and mode — need contacts from at least three distinct callsigns.

Hamtrax selects up to eight groups from the current import without extra service lookups, then expands them into individual folder rows. A multi-year contest, years of chasing, or a group of activation sessions can therefore produce more than eight rows. The groups rank by the contacts they would actually keep, so a club net noted on hundreds of contacts can outrank a contest entered once. A shared band and mode waits behind other clues because the remaining contacts can already be split that way. Native activation and program-monthly routes, duplicates, and rejected contacts stay outside this step. Each contact belongs to at most one suggested folder, so keeping several suggestions cannot file it twice.

A folder a suggestion made is found again on later imports, even if you renamed it. Hamtrax remembers the clue that created a folder separately from what the folder is called. The next import looks first for a custom folder whose name matches the card exactly, and failing that for the folder that same clue already created — so the folder you renamed "Summit Chasing" still collects your SOTA chases, and a suggested name that reads slightly differently this time (arrl-field-day - 2026 from one logger's export, ARRL-FIELD-DAY - 2026 from another's) still lands in the folder you already have. The card reads Existing folder, and the path beneath it shows Custom folders → any parent folders → Summit Chasing, so a renamed or nested destination is explicit. You keep the last word: type the exact name of a different custom folder and that folder wins, so the card always says what will actually happen. Merging a suggestion's folder into another custom folder hands the clue over with the contacts, so later imports follow them; moving contacts between folders changes nothing here, because duplicates are judged per contact rather than per folder. Older suggestion folders that lack that remembered clue continue matching by name alone.

Custom Folders — Unrecognized

The Custom Folders — Unrecognized stage contains contacts without a suggestion and contacts from rows set to I'll folder these myself (next). Its card opens with the count waiting here — the number, then unfoldered contacts — above We don't know where to put these. Select See Contacts directly below that heading to open a read-only table of every one of them, so you can see exactly which ones Hamtrax could not file before you decide what to do with them. It has the same labeled columns and sideways scrolling as the folder tables, but no exclude or restore controls of its own. It opens with up to 200 contacts; Show N more contacts reveals the next batch until every contact is available.

Below See Contacts, the choice is two cards — I'll folder these and Exclude from import — side by side on a wide screen and stacked on a narrow one, each with an icon and a line explaining what it does. Excluding leaves out this stage's contacts and opens Review's Finalize stage immediately. Choices made in earlier stages remain in place. The card you choose stays marked as the chosen one, so leaving this stage and returning shows where you left off rather than an untouched pair. Stepping back with the card's own chevron is the one thing that clears a mark, because it reopens the question you stepped past. To reverse the bulk exclusion before finalizing, choose Back, then I'll folder these — that restores every contact in the stage at once. This stage recovers as a whole rather than one contact at a time; per-contact and restore controls arrive with the folder rows below, once this stage has a destination.

Choose I'll folder these and the decision steps aside for the grouping choice. I'll folder these and Exclude from import slide off to the left while Group together and Multiple Folders slide in from the right into the space they leave — the same kind of card, each with its own icon tile and a line saying what it does. Only one pair is ever on screen: these are steps between views, not a row that grows, so the pair you came from leaves rather than stacking above the new one. It stays one tap away: a chevron appears in the card's top-left corner as soon as the card has stepped at all, and each press returns you one pair with the slide played in reverse. It never appears on the first pair, and the pair it returns you to is unmarked. Nothing is saved either way. Multiple Folders stays marked on the pair just as the decision does; Group together steps forward again to its own pair, described below. On a narrow screen each pair stacks instead of sitting side by side.

  • Group together puts every one of these contacts in a single custom folder. If you already have custom folders of your own, it steps forward once more: the grouping pair slides off to the left and a New folder / Existing folder pair slides in from the right, as two more cards of the same kind. New folder creates one and lets you name it; Existing folder offers a dropdown of your saved custom folders below the pair, opening on Choose a folder with nothing picked yet. Each side keeps its own answer, so choosing New folder again returns the name you were creating rather than the folder you picked. A folder saved without a name is left out of that list — give it a name to import into it. With no custom folders saved yet there is nothing to choose between, so this step is skipped and the grouping pair stays put. A new folder is named on the folder card itself rather than in a field above it — select its name or edit folder name beneath it, exactly as you rename a suggestion, and the card reads back the name that will actually be created.
  • Multiple Folders splits them. Unlike Group together it does not step forward: the pair stays where it is and By month, By year, By band, and By mode appear below it. Those stay plain buttons; select one dimension to show the proposed folder rows and Next. A split keeps its Folder name prefix field on the card above, because every folder it makes carries that one name and no single folder card owns it.

For contacts you choose to import, folder previews, folder sorting, and Next stay hidden until this stage has a destination: a split dimension, Group togetherNew folder, or Group togetherExisting folder with a folder picked from its dropdown. Choosing Existing folder on its own is not enough — the rows and Next wait for the folder itself, so nothing on screen claims a destination you have not chosen. The revealed destination rows also read New folder or Existing folder before you finalize. That is each row reporting what it will do, not the choice you made above — a row says Existing folder whenever its name matches one you already have. No folders or contacts are saved during these choices.

If a suggested folder set to Create this folder and your manual choice use the same folder name, both review stages can show that destination with their own contacts. They still create or reuse one folder, and each included contact imports once.