Privacy Policy
Effective Date: February 11, 2026 Last Updated: October 15, 2026
Hamtrax ("we," "us," or "our") respects your privacy. This Privacy Policy explains how we collect, use, store, and share information when you use the Hamtrax application, website, and related services (the "Service").
1. Information We Collect
Information You Provide
- Account information: Email address, name, callsign, country, and license class.
- Profile information: Display name, nickname, and profile photo.
- QSO logs: Contact records you create or import, including callsigns, frequencies, modes, dates, times, and notes.
- Location data: Grid square, coordinates, or city — depending on the location mode you choose (callsign lookup, device GPS, or manual entry). If you explicitly tap Find Nearest while choosing a park, Hamtrax also stores the fresh GPS coordinates from that request in the same shared location preferences.
- User-generated content: Photos, livestream URLs, folder cover images, station equipment images, and feedback submissions.
- Billing information: If you subscribe to a paid plan, payment is processed by Stripe (web and Android) or by Apple via the App Store using RevenueCat (iOS). We do not store your credit card number or full payment details — these processors handle them directly. We store the entitlement status and plan plus the processor identifiers needed to keep billing tied to one account: canonical Stripe Customer and subscription IDs, optional historical Customer IDs, temporary Checkout lifecycle state, or the RevenueCat user ID used for an App Store entitlement.
- Communication preferences: Which automated emails, app announcements, and optional nearby-park alerts you have chosen to receive or turn off. Email preferences can also be changed from an email's unsubscribe link. The upcoming nearby-park setting is described under Location Data.
- Station equipment: Rig and antenna profiles, including names, descriptions, and photos you upload.
- API keys and AI connections: When you create a Hamtrax API key, we store its hash, a short display prefix, name, permission tier, account ownership, creation time, and revocation state; the full key is shown once and is not stored in plaintext on our server. If you authorize a remote MCP connection for an AI assistant, we also store its client registration and redirect addresses, approved read/write/delete scopes, a reference to the API key that authorized it, and authorization and token lifecycle metadata. Authorization codes and access and refresh tokens are stored as hashes. The API key you enter on Hamtrax's authorization page is used to verify access; it is not stored in the MCP grant or sent to the AI provider.
- Integration credentials: If you connect QRZ Logbook, you provide a separate API key for each QRZ logbook you choose to connect, up to five. If you connect Logbook of The World (LoTW), you provide your LoTW username and password to Hamtrax; we validate them with LoTW and store them encrypted on our server for confirmation syncs you request. If you connect POTA, you provide the email address and password of your POTA account. We collect that pair only to perform the sign-in, which runs in your own browser directly against AWS Cognito, the sign-in service POTA uses: your POTA password is never transmitted to Hamtrax and is never stored by us. POTA returns a session token and a refresh token, which we store encrypted as described below. If you sign in to POTA with Google, Facebook, or Amazon instead, you copy your existing POTA session from pota.app with a bookmark that runs entirely in your own browser and only places the copy on your clipboard, then paste it here rather than entering a password; that paste carries the same session and refresh tokens, which we store the same way. Other optional integrations may request their own credentials as described in their setup screens.
Information Collected Automatically
- Device information: Browser type, operating system, and device identifiers.
- Native notification registration: If you enable native notifications, Hamtrax stores a notification delivery token for that app installation linked to your account. For optional nearby-park alerts in the upcoming iOS update, it also stores a revocable installation registration and the latest alert-attempt time needed to enforce the account-wide seven-day limit. These records do not contain the coordinates sent for a proximity check.
- Language preference: The language your browser asks for, the language Hamtrax actually displayed, and whether we were able to match the two. We record a coarse language tag such as
deorpt-br— not the full list of languages your browser reports — and we use it only to decide which languages to translate Hamtrax into next. - Session platform: Which platform each of your sessions runs on — web, the iOS app, or the Android app. Your account record keeps the platform of your most recent session and a running list of the platforms your account has used, so we can tailor platform-specific communications (for example, asking iOS app users for an App Store review — by email, or through the in-app "Enjoying Hamtrax?" prompt shown only in the mobile apps).
- Usage data: Pages visited, features used, and interaction patterns within the Service. This includes setup-checklist progress and display preferences, and in-app prompt history — for the "Enjoying Hamtrax?" review prompt, when it was last shown, whether you chose a response or closed it without choosing, and whether you asked us not to show it again — so we can honor its frequency limits and your permanent opt-out.
- Analytics data: We use Google Analytics 4 (GA4) — in the app via Firebase and on our website and documentation site (docs.hamtrax.com) via Google's gtag — to collect usage metrics. These include page views, sign-up and login completions, and interaction signals such as scroll depth, expanding explanatory sections, and clicks on App Store badges. After selected signed-in actions, we also measure whether Hamtrax remains visible in the foreground for 60 continuous seconds, or whether it is switched away from earlier. These measurements record foreground presence, not whether you were looking at the screen. In the app, signed-in activity may be linked using a pseudonymous Firebase user ID; Hamtrax does not send your email address, callsign, or name as the analytics identity. This data helps us understand how the Service is used and where to improve. IP addresses are anonymized on the documentation site, and analytics data is processed according to Google's privacy policies.
- Performance measurements: We measure how well the Service performs for real visitors: standard page-speed metrics (such as how long the page takes to render and how quickly it responds to your input), and — when a network request takes longer than one second — a record of that delay. A slow-request record contains only the elapsed time, the server the request went to (for example
api.pota.app), a generalized version of the requested path with any identifiers replaced, the kind of request, and the feature area you were using. Full addresses and query strings are never sent, so a callsign, grid square, or search term travelling in a request cannot appear in these measurements. A given slow resource is reported at most once per session. On the public Hunt, Activate, DX, and Repeaters maps, we also record when the initial map load runs into trouble (still loading after five seconds, a categorized loading error, leaving before readiness, or choosing Refresh); a map that loads normally sends no loading record. These records can include the map and dataset modes and whether the map is light or dark; elapsed time; online, page-visibility, style, and tile-readiness flags; source and pending-source counts; a broad pending-source, resource, and error category; and an HTTP status number when one is available. They never include a raw map error message, URL or tile path, coordinates, or an internal source identifier. We use these measurements solely to find and fix slow parts of the Service. - Approximate session location and analytics exclusion: When the app (web, iOS, or Android) needs its session-location context, a Hamtrax Cloud Function sends the visitor's public IP address to GeoJS for an approximate location. The Function uses that estimate to decide whether the production or beta app may enable GA4 analytics — and, on the web, load Microsoft Clarity — and may also return a rounded coordinate and area label when the estimate is accurate enough. For signed-out visitors, the app uses them to start the public Repeaters map nearby, to name the area under My Station on the Hunt, DX, and Repeaters tabs, and to suggest a nearby park on the Activate tab. The browser keeps that area only in page memory and caches only the analytics exclusion decision for the tab. Hamtrax application code does not write the IP address or provider coordinates to its databases or application logs, and the displayed area label is masked from session replay. Google Cloud and GeoJS process request metadata under their respective privacy policies. Sessions within 30 miles of Kansas City, Missouri, sessions whose reported accuracy area overlaps that radius, and sessions whose location cannot be resolved are not sent to GA4 or Clarity. This is not continuous physical-location monitoring, and the analytics exclusion does not apply to docs.hamtrax.com.
- Cookies and similar technologies: Our website and documentation site use Google Analytics cookies (such as
_ga) to distinguish visitors and measure usage. Because these cookies are shared across hamtrax.com subdomains, a visit to our documentation and a later sign-up may be recognized as the same journey. You can block or delete these cookies via your browser settings. Opening the in-app checkout loads Stripe's payment script on hamtrax.com, and Stripe may set its own cookies. Hamtrax does not load that script on ordinary page loads. See How We Share Your Information. - Referral and campaign data: When you arrive from a marketing link, we record the campaign parameters in the entry URL (for example,
utm_sourceandutm_campaign). When you follow a link from another website, Google Analytics also records the referring address your browser shares, usually just that site's address (for example,www.google.com). We use both to understand which campaigns and sites bring people to Hamtrax and how visitors arriving from each use our website. Campaign parameters are retained for the browser session; both are attached to that visit's analytics events and are not linked to your identity. - Session replay: We use Microsoft Clarity to record session replays of how the Service is used — including page interactions such as clicks, scrolling, and mouse movement — so we can identify usability issues and improve the Service. Clarity may also collect device and browser information. For signed-in activity, Hamtrax may send the same pseudonymous Firebase user ID described above so activity can be linked without sending your email address, callsign, or name as the analytics identity. Recordings are processed by Microsoft and are subject to Microsoft's Privacy Statement.
- Crash and error reports: When the app encounters an error, we record an anonymous report containing the device class (mobile, tablet, or desktop), platform, app version, environment, the feature area in use, the error message and technical stack trace, and a random per-session identifier. These reports contain no account ID, callsign, page URL, or browser user agent and are not linked to your identity. We use them solely to find and fix problems in the Service. On the iOS and Android apps, error reports are also processed by Firebase Crashlytics.
- Signup callsign diagnostics: When a callsign was entered and its lookup or final profile save during signup is unsuccessful, Hamtrax first attempts to place a report in a device-local queue scoped to the pseudonymous Firebase account ID, attempts to create a private server-only record, and removes any queued copy after confirmed delivery. If delivery is unavailable and the local queue was available, the queued report remains for a later connectivity and authentication retry. The report contains the normalized callsign entered, failure stage and stable result code, and an opaque ID; when both deliveries succeed, that ID can link the private record to the corresponding analytics outcome. We use this record only to distinguish Hamtrax service failures from gaps or delays in public licensing databases. The callsign field is masked from Microsoft Clarity, and the value is not sent to GA4, crash reports, or Cloud Logging.
- Authentication data: OAuth tokens and session information from third-party sign-in providers (Google, Apple).
- API security metadata: Authenticated CLI and MCP API use records the key's latest-use time, a hash of the requesting IP address, and the request's user-agent value limited to 200 characters. Hamtrax also keeps request counts and timing needed to enforce API limits. We use this metadata to operate the connection, show key activity, and prevent abuse. The MCP tools do not collect the assistant's full conversation; Hamtrax receives the tool inputs and returns the requested records or operation results.
Information from Third Parties
- Callsign lookups: We query external callbook and licensing databases (HamQTH, QRZCQ, QRZ Digital, DMR/global callsign data, and the FCC ULS amateur database) to retrieve publicly available registration data such as name, address, grid square, and license class. Callsign detail views use only a respectful projection of that data and do not display street addresses, ZIP codes, or exact coordinates.
- Activity and reception data: We aggregate public amateur radio activity from POTA, HamQTH's DX cluster, Reverse Beacon Network, and PSK Reporter. These services may report the callsign actually heard or spotted, time, frequency, mode, signal information, and public activity references.
- POTA contact history: With Automatically sync POTA contacts enabled, Hamtrax retrieves recent public hunter contacts for your saved callsign and, once you connect POTA, your hunter and activation logbook history. Retrieved contacts include callsigns, dates, times, bands or frequencies, modes, and park references, and are saved to your Hamtrax logbook under its usual visibility settings. The switch defaults to On and can be turned off before connecting or at any later time.
- Other ham services you use: Hamtrax periodically checks your callsign against the user lists that LoTW, eQSL, and Club Log publish for logging software, and against POTA's public profiles. We also note when contacts you import were exported from another logging app, such as World Radio League. The matches, and when each was first found, are kept in a private, server-only record that we use only internally, to understand which services our members use. They are never shown to other users, sold, or shared.
- Location imagery: We use Flickr's public API and Wikimedia Commons to source freely licensed photography for park, country, and location displays, with the photographer credited on each image. The images are loaded directly from those providers' servers, so — like any web request — that load sends your IP address and the requested image to Flickr or the Wikimedia Foundation; their handling of that data is described in the Flickr Privacy Policy and the Wikimedia Foundation Privacy Policy.
- Map imagery: When you zoom into the detailed map view, map tiles are loaded directly from OpenStreetMap's public tile servers. Like any web request, these tile loads send your IP address and the requested map area to the OpenStreetMap Foundation; their handling of that data is described in the OpenStreetMap Foundation Privacy Policy.
2. How We Use Your Information
We use collected information to:
- Provide, operate, and improve the Service.
- Create and manage your account.
- Display your profile and QSO statistics to other users (based on your privacy settings).
- Power location-based features such as distance calculations, map displays, and the optional nearby-park alerts described under Location Data.
- Resolve callsign data and derive default settings (band plan, license privileges).
- Perform third-party integration actions you request, such as checking contacts in both directions with QRZ Logbook or syncing confirmation status from LoTW, and run automatic QRZ sync or POTA imports while the corresponding preference is enabled.
- Process subscriptions, reconcile billing state, prevent overlapping charges, and refund payments from rejected duplicate Stripe Checkouts.
- Send account-security communications you request and, while your account remains active, eligible activity, product, and occasional promotional emails — for example, a request to review the app, which may be targeted using the platforms your account has used. Before each non-transactional automated send, Hamtrax rechecks that the authentication account is active and that applicable stored email preferences allow delivery. You control these emails individually under Settings → Preferences → Notifications, and every such email carries an unsubscribe link in its footer plus a one-click unsubscribe header that Gmail and Yahoo surface natively. Account and security emails, such as password resets and account notices, are transactional and are always delivered.
- Occasionally ask, inside the mobile apps only, whether you are enjoying Hamtrax — routing you to the App Store review sheet or to the in-app feedback form depending on your answer, subject to the frequency limits, dismissal backoff, and permanent opt-out recorded in the prompt history described above.
- Detect and prevent abuse, fraud, or violations of our Terms of Service.
3. How We Share Your Information
We do not sell your personal information.
We may share information in the following circumstances:
- Public profile data (your Showcase): Your Showcase has a short link of the form
hamtrax.com/<your short code>. That page is public: anyone who has the link can open it without a Hamtrax account or signing in. Your callsign, display name, username, profile photo, and general location (city/state/country and grid square, not a precise address) are published there, along with any of the following you have not hidden: your social links; your radios and antennas; your activation and monthly hunting folders, including their names, contact counts, photos, notes, and approximate contact maps; and a summary of the countries and DXCC entities you have contacted together with the number of contacts it was calculated from. Folders with no contacts are not published on your Showcase, including their photos, notes, and links. Public folder map previews use coarse contact areas rather than exact contact coordinates and appear only while your logbook is visible. Contact-by-contact details are published only if you leave your logbook visible. Each of these has its own visibility toggle on your Showcase — your equipment, and each activity program's activations and hunting separately — and hiding one stops it being sent to that page at all. Your email address, password, exact address, and payment details are never published there. - Service providers: We use third-party services (Firebase/Google Cloud for hosting, storage, notification delivery, and crash and error reporting — including Firebase Crashlytics on the iOS and Android apps; Apple's notification service for delivery to iOS; Microsoft Clarity for session replay analytics) to host, store, and process data on our behalf. A nearby-park notification contains the park's name and reference. These providers are bound by their own privacy commitments.
- IP geolocation provider: Hamtrax sends the public IP address to GeoJS to obtain the approximate session location used by the analytics exclusion and the signed-out area features described above. GeoJS's handling of that request is governed by the GeoJS Privacy Policy.
- Payment processors: If you subscribe to a paid plan on the web or Android, billing is handled by Stripe, Inc. Stripe receives the payment information you provide during checkout plus a pseudonymous Firebase account ID and Hamtrax project marker used to associate and deduplicate billing; Stripe's use of your data is governed by Stripe's Privacy Policy. On the web, opening the in-app checkout loads Stripe's payment script onto hamtrax.com, which lets Stripe set its own cookies and collect device and browser information for fraud prevention. That script loads only when you open checkout, not on ordinary page loads, and your card details go to Stripe directly without passing through Hamtrax. If the panel cannot load, Hamtrax opens Stripe's checkout page instead. In the Android app, checkout opens Stripe's own page. If you subscribe through the iOS app, billing is handled by Apple via the App Store and entitlements are mediated by RevenueCat, Inc.; their use of your data is governed by Apple's Privacy Policy and RevenueCat's Privacy Policy.
- External services you connect: When Hamtrax checks a connected QRZ logbook's status or synchronizes contacts, it sends that logbook's API key and the data required for that operation to QRZ over HTTPS. QRZ handles that data under its own privacy policy. Each connected logbook receives only contacts whose station callsign matches that logbook's callsign; contacts matching no connected logbook are not sent to QRZ. Sync now requests one check in both directions, including eligible existing Hamtrax contacts. Automatically sync with QRZ starts On when adding a logbook and can be turned Off before Connect logbook. Connecting with it On, or turning it On afterward, gives ongoing consent for server-side reads and eligible new-contact uploads for that connected book until you turn it Off or disconnect. This includes eligible contacts originally imported from files or POTA. The previous auto-push setting does not enable expanded sync. Hamtrax does not send QRZ record replacement or deletion requests through this sync. A request already sent can still finish after you stop automatic work.
- LoTW confirmation sync: When you connect or update your LoTW login, Hamtrax sends your username and password to ARRL LoTW over HTTPS to validate them. When you select Sync Confirmations, Hamtrax uses the saved login to retrieve a read-only confirmation report and update matching contacts. LoTW handles these requests under its own policies. Connecting does not start a confirmation sync, syncs are not automatic, and Hamtrax does not upload contacts to LoTW.
- POTA contact sync: With Automatically sync POTA contacts on, connecting starts an immediate history import and Hamtrax uses the saved POTA credential over HTTPS to check for contacts daily, including while the app is closed. Existing connections also receive these daily checks. Turn the switch off under Settings → Integrations → POTA to stop further automatic imports, including the public starter import; an offline change takes effect on the server after the device reconnects. Disconnecting stops authenticated sync. Contacts already imported remain in Hamtrax, and incoming sync does not change records at POTA. Activation uploads are a separate choice.
- POTA activation uploads: Connecting POTA lets Hamtrax validate the session and registered callsigns and read upload history. When you confirm an activation upload, or finish with Upload to POTA on Finish enabled, Hamtrax sends the session credential and activation ADIF, station callsign, park reference, and operating location to POTA over HTTPS. An offline request waits for synchronization and can run after you leave the page. POTA handles submitted logs under its own policies. Hamtrax does not automatically submit later edits or additional contacts.
- AI assistants you connect: When you connect an MCP-compatible assistant, it can receive the account identity, folders, activations, and contacts returned by the tools it calls, including callsigns, folder names, contact dates and times, and notes present in those records. If you approve write or delete access, it can request those changes within the permissions you granted and the same logbook validation used by Hamtrax. Local connections use your locally configured API key; hosted connections use a separate access token issued after your authorization. Connecting is your choice. The AI provider's retention and use of returned information depend on its own policies and your account settings, including the Anthropic Privacy Policy and OpenAI Privacy Policy when you use those services.
- Legal requirements: We may disclose information if required by law, regulation, or legal process.
- Safety: We may share information to protect the rights, safety, or property of Hamtrax, our users, or the public.
4. Data Storage and Security
- Your data is stored using Google Firebase (Firestore, Firebase Authentication, and Firebase Storage for user-uploaded media) with encryption in transit and at rest.
- Connected QRZ API keys, LoTW passwords, and POTA credentials are additionally encrypted (AES-256-GCM) before storage in server-only Firestore documents. For POTA that means the session token, the refresh token used to renew it, and any device identifier the sign-in service issues. Client applications cannot read those documents, and saved API keys, passwords, and tokens are never returned to the app after connection. LoTW connection metadata includes the username, connection timestamps, and an opaque connection identifier so the app can display and manage the connected account. QRZ connection metadata includes each connected logbook's callsign and name as reported by QRZ, connection timestamps, and an opaque connection identifier so the app can list and manage your logbooks. Hamtrax manages the encryption keys and can decrypt saved credentials on its server to perform the connected service's operations. The saved LoTW login is tied to your Hamtrax account and can be used for manual confirmation syncs from your signed-in devices. The stored POTA credentials are used to retrieve your POTA contact history while automatic sync is enabled, upload activations you choose to submit, check the connection and upload status, and renew the POTA session.
- Certain data is cached locally on your device (IndexedDB and session storage) for offline access and performance.
- POTA sync records keep copies of retrieved contacts awaiting import, progress, counts, retry state, and the last successful sync time so background imports can resume and report their outcome. Pending copies are removed as they are processed or replaced by a later sync, and account deletion removes the sync records. The sync status is readable only by the signed-in account that owns it; credentials remain server-only.
- Hamtrax also keeps private POTA contact-matching records and automatic-import exclusions derived from station callsigns, contact dates and times, bands, modes, parks, and recorded regions. Matching records let a later import identify an existing contact and add proven missing park-to-park information without overwriting personal details. Automatic-import exclusions prevent imports from recreating contacts you intentionally removed or adding back their old identifying details after a correction. They do not contain your contact photos or notes and are not sent to POTA.
- The unsubscribe link in our emails carries a cryptographically signed token identifying your account, so the page works without signing in. The token cannot be altered to reach another account, the page displays no email address or callsign, and opening the link never changes a setting on its own — a change is applied only when you submit the form or use your mail provider's one-click unsubscribe control.
- We implement reasonable technical and organizational measures to protect your information. However, no system is completely secure, and we cannot guarantee absolute security.
5. Your Location Data
For app features, you control how Hamtrax determines your location:
- Callsign mode: Location is derived from your callsign registration address (publicly available data).
- Device mode: Location is obtained from your device's GPS with your permission. Choosing Device mode does not enable the separate nearby-park background alerts described below.
- Manual mode: You enter a grid square, coordinates, or city of your choosing.
You can change your location mode at any time in Settings. Location data is used for distance calculations, propagation estimates, and map features.
If you allow Parks near me emails, Hamtrax uses the latest location settings saved to your account to select parks when preparing the email. It does not request a new device GPS reading for the email. See Email notifications.
The approximate session location described above is separate from these profile settings. It does not update your Hamtrax location; when a sufficiently accurate estimate is available, signed-out pages use only a rounded version — as the public Repeaters page's temporary opening browse center, as the area shown under My Station, and as the starting point for the Activate tab's suggested park. Searching for an area or accepting a one-time device location replaces the Repeaters center, and closing the page discards the estimate.
Opening the POTA activation setup or the Hunt tab's Hunting from a park? setup does not request GPS by itself. If you tap Find Nearest, Hamtrax requests a one-time fresh GPS reading -- regardless of your chosen location mode -- to find nearby parks and stores that reading in the same shared location preferences. With a blank park field, Hamtrax auto-selects the closest park only when you're within 0.5 miles; otherwise it shows the nearby-parks list. On iPhone, tapping Find Nearest shows the standard iOS location prompt the first time. If you deny permission, manual park search remains available. This foreground action does not enable nearby-park background alerts.
Optional nearby-park alerts
The Nearby POTA parks setting is prepared for an upcoming iOS update that has not yet been released through the App Store. Background nearby-park alerts are not available on Android. It is off by default and requires your explicit opt-in, precise background location access, and notification permission.
When enabled, your phone monitors nearby areas and obtains a fresh physical-location reading when a check is needed, including while Hamtrax is in the background. It sends the coordinates, accuracy, and reading time to Hamtrax over an encrypted connection to check whether you are within one mile of a POTA park's mapped point. Hamtrax uses those coordinates for that request and does not retain them in its databases or application logs. They do not update your callsign, manual, or saved Device location.
Your phone keeps the current monitoring areas, which may include the center of its most recent location check, and a protected registration that authorizes only nearby-park checks. It does not keep a travel history for this feature. Hamtrax's server keeps your opt-in preference, installation notification registration, and latest alert-attempt time so no account receives these alerts more often than once in seven days across all parks and devices. The alert is sent only to the installation that detected the park.
Turn the setting off under Settings → Preferences → Notifications to stop monitoring on that device. The preference syncs with your account and is checked by the server before further alerts; changes made offline apply to other devices after they sync. Signing out also stops local monitoring. You can revoke location or notification permission in your phone's settings at any time. See Nearby POTA parks for setup and delivery limitations.
6. Data Retention
- We retain your account data for as long as your account is active.
- Revoking a Hamtrax API key prevents further CLI use and remote MCP access authorized with that key. Revoked key metadata remains for its security audit history. Removing a connection or revoking its key does not remove records already received by an AI provider; manage that provider's retained information using its own controls.
- Disconnecting a QRZ logbook removes that logbook's stored API key and connection metadata and stops its new authenticated sync work; other connected logbooks are unaffected. That logbook's matching records, the last acknowledged contact snapshots, unresolved issues, send outcomes, and exclusions remain after disconnection to avoid duplicate uploads and unwanted re-imports when you reconnect it. These records are scoped to your account and that QRZ logbook and contain no API key. Hamtrax also keeps a private, server-only record of when each QRZ logbook was connected or disconnected and when its automatic sync was turned on or off; it holds no API key or callsign, remains after disconnection so a reconnected logbook keeps its history, and is deleted with your account. Once your account has connected QRZ, deleting a Hamtrax contact that records a station callsign, UTC date and time, band, and mode also saves a private account-level deletion record of its callsigns, date and time, band, mode, activity references, and recorded regions, so that no connected QRZ logbook, including one connected later, automatically imports it again. Deletion records contain no notes or photos and are not sent to QRZ. Deleting or merging away a monthly No Program folder, or a session folder for an activity program Hamtrax doesn't run, likewise keeps a private account-level record of that folder's UTC month, or its reference and UTC day with its station callsign when known, so that no later sync re-creates it; it contains no contacts, notes, or photos and is deleted with your account. Deleting a Hamtrax contact does not delete its QRZ counterpart; an excluded counterpart requires an explicit restore choice. Disconnecting LoTW removes its saved username and password. Disconnecting POTA removes its stored session token and refresh token and cancels unsent requests. POTA upload receipts, including activation identity, content fingerprints, status, and provider job identifiers when available, remain after disconnection to prevent duplicate submissions; they contain no session token. POTA contact-matching records and automatic-import exclusions also remain after disconnection, without expiring alongside temporary retry receipts. Manually re-creating a contact does not clear its automatic-import exclusion. Deleting your Hamtrax account removes its POTA upload receipts, folder claims, contact-sync jobs and status, contact-matching records, and automatic-import exclusions. Deleting your Hamtrax account also removes its QRZ sync status, book records, matching and send records, deletion records, exclusions, and the server-stored integration-credential document.
- Internal reports: Hamtrax's private administrator dashboard keeps its latest reports in server-only records that only Hamtrax's administrator can view. Two name members: the most active members over a period (callsign, first name, app activity, devices, approximate locations, home area, plan, equipment, and logbook statistics) and connected QRZ logbooks (each with its member's and its own callsign, its sync setting, its connection and sync-setting history, and how many contacts the member imported from QRZ). Each report is replaced at its next refresh, hourly during the day, so a disconnected logbook or deleted account can appear in it until then.
- Retired walkthrough data: A server-side cleanup task continues deleting temporary practice contacts left by earlier versions of the retired guided walkthrough. Previously saved walkthrough completion records may remain with retained account data.
- Signup callsign diagnostic records are marked to expire 30 days after collection and are deleted automatically by Firestore TTL. An undelivered device-local report is pruned the next time Hamtrax opens after it reaches 30 days. Deleting an account does not shorten the server record's automatic expiry period; you may request earlier deletion using the contact information below.
- When you use Delete account in Hamtrax settings, Hamtrax first closes unfinished Stripe Checkout and cancels and confirms every recurring Stripe subscription linked to your account. If a rejected Checkout was paid, deletion remains blocked until its exact payment is confirmed refunded or an exact provider chargeback already reimbursed it. If Stripe cannot confirm those outcomes, the in-app authentication deletion does not proceed. Hamtrax then removes your authentication credentials, server-stored integration credentials, and the email address from the retained profile. Minimal Customer, subscription, Checkout, payment, refund, and dispute identifiers/statuses remain in a private server-only billing record to prove cancellation, prevent duplicate compensation, and reconcile financial history; card data is never stored by Hamtrax. Automated activity and product email delivery stops. App Store subscriptions are controlled by Apple and must be canceled separately in Apple Subscriptions. Contact logs and other logbook/profile data are preserved and become inaccessible through that account; to export your data beforehand, use the ADIF export feature.
7. Your Rights
Depending on your jurisdiction, you may have the right to:
- Access the personal information we hold about you.
- Correct inaccurate information in your profile.
- Request deletion of personal information we hold about you, subject to applicable exceptions.
- Export your QSO logs and data.
- Object to certain processing of your information.
- Opt out of marketing email at any time, without contacting us — per email type under Settings → Preferences → Notifications, or from the unsubscribe link in any automated email (no sign-in required).
Settings can delete your login account as described above. To exercise rights covering retained profile or logbook data, contact us at info@hamtrax.com.
8. Children's Privacy
The Service is not intended for children under 13. We do not knowingly collect personal information from children under 13. If we learn that we have collected information from a child under 13, we will delete it promptly.
9. Third-Party Links and Services
The Service may contain links to third-party websites or integrate with external services (QRZ, HamQTH, POTA, etc.). We are not responsible for the privacy practices of these third parties. We encourage you to review their privacy policies.
10. Changes to This Policy
We may update this Privacy Policy from time to time. We will notify you of material changes by posting the updated policy with a new "Last Updated" date. Continued use of the Service after changes constitutes acceptance.
11. Contact
If you have questions or concerns about this Privacy Policy, contact us at info@hamtrax.com.