Ask a fractional owner how many legs they flew last year and you'll usually get a shrug and a rough guess. It isn't carelessness — the information genuinely is scattered. Each operator hands you activity a month at a time, in a format designed for accounting rather than memory.
Private flying makes an unusual map
It looks nothing like a commercial one, and that's most of the appeal. Airline maps are hub-heavy: a dozen big fields, over and over. Private maps are the opposite — one home base and a long tail of places no scheduled carrier serves.
That's why the airport database behind RoutesFlown is the full one, not a list of commercial hubs. It covers roughly 31,000 airports including general-aviation fields, and it accepts either code style — so ASE and KASE both land on Aspen, and the small fields that never had an IATA code at all still resolve by their ident.
The operators are already in the list
Pick your operator from the same dropdown as the airlines, and the map colours that leg in their own scheme — useful the moment you've flown with more than one:
- NetJets
- Flexjet
- Airshare
- VistaJet
- XO
- Wheels Up
- Sentient Jet
- Jet Linx
- Nicholas Air
- PlaneSense
- Set Jet
- Tradewind Aviation
- Executive Jet Management
- Solairus Aviation
- Clay Lacy Aviation
- JSX
- Blade
- Surf Air
- Private / Owner
- Charter
There's a free-text option too, so a one-off charter or a friend's aircraft doesn't break the pattern. Operator names are used only to label and colour your own legs.
Getting your flights in
If you fly twenty legs a year, typing them is genuinely quicker than anything clever. Past that, upload.
-
Get your legs into a list
Your operator's owner portal is the place to start — monthly statements, flight activity reports, or an occupied-hours summary. Between them you'll usually have the date, the two airports, the tail number and the aircraft type for every leg. A PDF is fine; you only need the leg table out of it.
-
Convert it to a flights file
RoutesFlown imports a JSON file. The format is deliberately small — five keys, two of them required — so converting from a spreadsheet or a statement takes one step.
-
Import it
Open the app, scroll to the bottom of the left panel, and click Import. Pick your file. Every leg draws at once, and the counters fill in immediately.
-
Keep it
Sign in with just an email address — no password — and the map syncs to your other devices. Until you do, everything stays in your own browser.
The file format
Deliberately small, so a conversion is one step rather than a project.
flights.json — the shape the Import button reads
[
{
"from": "KTEB",
"to": "KASE",
"date": "2026-02-14",
"airline": "NetJets",
"aircraft": "Challenger 350"
},
{
"from": "KASE",
"to": "KAPA",
"date": "2026-02-17",
"airline": "NetJets",
"aircraft": "Challenger 350"
}
]from and to are the only required fields. Everything else is optional: leave date out and the leg still draws, it just won't sit on the timeline. Codes can be IATA (ASE) or ICAO (KASE) — both resolve to the same field.
Turning a CSV or a statement into that file
# Paste your rows into any AI assistant with this:
Convert the flight records below into a JSON array.
One object per leg, with the keys:
from, to, date, airline, aircraft
- from / to = departure and arrival airport codes, uppercase
(IATA or ICAO, whichever the source uses)
- date = YYYY-MM-DD
- airline = the operator name, e.g. "NetJets"
- aircraft = the type, e.g. "Challenger 350"
Return only the JSON, nothing else.
Then paste my rows below.Save what comes back as flights.json, then hit Import. If a code is wrong or a field isn't in the database, that one leg simply won't draw — the rest of your map is unaffected, and you can fix it in the flight list.
Statements often list the tail number but not the type. Both are worth keeping — put the type in the aircraft field and the map works out your most-flown aircraft for the year, which is usually the stat people find most surprising.
What you get at the end
- Every leg on one globe, replayable in date order from your first flight to your last.
- Totals — legs, miles, unique fields, most-visited airport, most-flown type.
- Your real pattern — how much of your flying is the same two fields, and how far the tail actually stretches.
- Something to send — a share link, or an animated GIF of the globe turning.
Where your flights live. Until you sign in, your map is stored in your own browser and never leaves the device. Signing in syncs it to your account so you can open it elsewhere. Nothing is connected to an operator, an airline, or a logbook service, and a map is private until you choose to share a link.
Put every leg on one map
Import your statements or add legs by hand. Free, and no account needed to start.
Open RoutesFlown →Keep reading: A flight map for pilots · How to map every flight you've flown