I keep track of everywhere I’ve spent the night in a lodging log on my local computer.
My lodging log, viewed in QGIS in February 2026.
Basemap © Mapbox © OpenStreetMap (Improve this map)
This originally started as tracking my hotel stays in a spreadsheet. I started including stays with friends and family as well, and eventually included every home I’ve ever lived in. With this data, for any given night in my life, I can determine where I spent the night.1
Each stay location and home includes geographic coordinates and the cities and metro areas, so I can create maps of where I’ve stayed, or calculate my distance from home on any given night.
Technical Details
My lodging log is stored in multiple layers of a single GeoPackage file, as described in Lodging Data Structure. I edit the data using QGIS.
I wrote a lodging_data_utils Python repository, with a number of scripts for compiling data from the lodging log. I use this data to create charts and maps, such as for my Year in Travel posts.
Version History
| Ver. | Title | Date |
|---|---|---|
| 1.0 | Track Stays in Excel | Late 2016 |
| 1.1 | Add Cities and Homes | Mid 2020 |
| 1.2 | Add Metros and Regions | Mid 2022 |
| 1.3 | SQLite Metros and Regions | Early 2023 |
| 1.4 | Add Locations | Early 2024 |
| 1.5 | Consolidate Stays, Cities, Metros, and Regions | Late 2024 |
| 2.0 | GeoPackage Data | 20 Jun 2025 |
Using Lodging Log Data
Having this lodging log data has allowed me to create a lot of travel stats. Here are a few pages where I used my lodging log data:
-
Distance From Home by Day
After noticing I was often on distant trips in mid-February, I charted which days of the year I was furthest from home on average. -
Nights Away and Home
When I had to pause some travel in 2020, I made a graphic showing my longest consecutive stretches traveling or at home. -
Lifetime Hilton Diamond
When I spent my 1000th night with Hilton and earned lifetime status, I wrote up a lot of statistics about my Hilton stays.
-
This even includes edge cases like overnight flights and crossing the international date line. See the Overnight Flights section of my lodging log documentation for details on how I encode these. ↩︎