TravStats vs. AdventureLog
AdventureLog is an open-source (GPL-3.0), self-hostable travel tracker and trip planner. It is the closest thing to TravStats in philosophy — your server, PostgreSQL with PostGIS, Docker, an Immich integration on both sides — and the furthest in emphasis. AdventureLog starts from places and plans; TravStats starts from flights, cruises and stays you have already taken.
At a glance
Section titled “At a glance”| TravStats | AdventureLog | |
|---|---|---|
| Hosting | Your server (Docker) | Your server (Docker Compose; Kubernetes via Kustomize) |
| Database | PostgreSQL + PostGIS | PostgreSQL + PostGIS |
| License | AGPL-3.0 | GPL-3.0 |
| Core unit | A flight, a cruise, a stay | A location with visits |
| Trips | Group flights, cruises, stays and bookings | Collections: itineraries with transportation, lodging, notes, checklists |
| Flights | First-class records with airports, airline, aircraft, registration, delays | A transportation entry on a collection, with flight number and times |
| Adding records | Booking emails, PDFs, boarding passes → automatic; list imports; manual | Manual, with place search; activities from Strava or Endurain |
| Cruises | Yes, with ports, sea days and sea routes | No |
| Places / POIs | Beta, behind the instance switch | Yes — the core of the app |
| Countries | Counted from your records by evidence | Countries, regions and cities in a world travel book |
| Planning tools | No | Itineraries, checklists, calendar with ICS export, PDF itinerary |
| Outdoor activities | Road, hike and bike sections on a trip (beta) | GPX tracks and activities; Strava, Endurain and Wanderer integrations |
| Photos | Immich albums on a trip (link or import), uploads | Uploads, Immich |
| Sharing | No public surface | Public links, and inviting other users to edit |
| Sign-in | Local accounts, two-factor, passkeys | MFA, social and OIDC sign-in (Google, GitHub, Authelia and more) |
| Achievements | 270+ | — |
| Export | Whole-logbook spreadsheet (re-importable), JSON, database backup | Backup archive (JSON plus media) that it imports again |
Where TravStats wins
Section titled “Where TravStats wins”1. Flights and cruises as the main event
Section titled “1. Flights and cruises as the main event”In AdventureLog a flight is a transportation entry inside a collection. In TravStats it is a record in its own right, enriched from flight-data providers, drawn on a map built for routes, and measured: punctuality, records, distance, CO2, cost per kilometre. Cruises get the same treatment — ship, ports of call, sea days and a reconstructed sea route. If most of your travel history is flying or sailing, TravStats has far more to say about it. See Flights and Cruises.
2. The inbox does the data entry
Section titled “2. The inbox does the data entry”In AdventureLog you add locations, flights and lodging yourself (place search helps, and activities can come from Strava or Endurain). TravStats reads booking confirmations — mail, PDF, a photographed hotel bill — and boarding passes, decides whether each is a flight, cruise or hotel, and shows what it found before saving. The strongest results need a local language model (Ollama); without one, built-in templates cover single-leg bookings on common European carriers.
3. Counting that you don’t have to do
Section titled “3. Counting that you don’t have to do”TravStats derives your countries from what you recorded — a night slept, a port call, a day on the ground — and keeps a change of planes apart from a visit. Money is kept per currency and converted with ECB rates, and 270+ achievements unlock on their own. See Countries & passport.
Where AdventureLog wins
Section titled “Where AdventureLog wins”1. Planning
Section titled “1. Planning”AdventureLog is a trip planner as much as a log: day-by-day itineraries, checklists, notes, a travel calendar you can subscribe to over ICS, and a printable PDF of the itinerary. TravStats records bookings, including upcoming ones, but plans nothing.
2. Places, regions and cities
Section titled “2. Places, regions and cities”Locations are AdventureLog’s foundation — categories, tags, notes, photos, attachments, several visits each — and its world travel book goes down to regions and cities. In TravStats, places are a newer domain still behind the beta switch, and there is no counterpart to the regions-and-cities book.
3. The outdoors
Section titled “3. The outdoors”GPX tracks with distance and elevation, and integrations with Strava, Endurain and Wanderer, make AdventureLog a home for hikes and rides. TravStats’ road, hike and bike sections (and Dawarich tracks) are beta.
4. Sharing and sign-in
Section titled “4. Sharing and sign-in”Collections can be shared by public link or edited together with other users, and sign-in works through Google, GitHub, Authelia and OIDC providers. TravStats has no public sharing and no single sign-on.
Moving data between them
Section titled “Moving data between them”There is no AdventureLog importer in TravStats. AdventureLog’s backup is an archive with the data as JSON and the media alongside; TravStats does not read it. Flights and stays from it would have to be turned into CSV — for the logbook and hotel imports — by a script of your own.
Because both run on your own hardware and both talk to Immich, running them side by side is a reasonable answer too: AdventureLog for plans and places, TravStats for the flights, cruises and hotel nights.
Verdict
Section titled “Verdict”If your travel is about where you go and what you do there — planning it, sharing it, hiking it — AdventureLog is the better-shaped tool.
If it is about how you got there and where you slept — every flight, cruise and stay, entered from the booking and counted for you — TravStats is. Neither asks you to hand your history to someone else’s cloud.