News from OpenFlights, the site for flight logging, mapping, stats and sharing


Fixing plane autocomplete and releasing aircraft data

OpenFlights has always had a very liberal policy when it comes to entering planes for your flights: be it Boeing 737 or Santa’s Sleighanything goes, just type in the box and it’ll be accepted.  Over the years, this has led to over 70,000 different names being entered, most reasonable if occasionally misspelled (there are 28 different Beoings in there).  However, since OpenFlights will also create new planes from CSV imports, this has led to a lot of completely random cruft including large chunks of raw XML and one particularly misguided user uploading over 10,000 strings of gibberish.  And because OpenFlights used to match against the whole lot when typing in planes, this made it harder and harder to find the needles in the haystack.

So I’m glad to announce that the plane autocomplete results have been given a long-overdue reworking.   There is now a canonical list of 160-odd planes that will always show first, so entering 747 will default to Boeing 747, and common three-letter IATA codes like 772 for Boeing 777-200 are also understood.  For everything else, results are ordered by frequency of usage, so entering Tupolev now defaults to the fairly common Tu-154 (~2600 flights), not the hypersonic Tu-144 “Concordski” which hasn’t flown since 1978 and which only 3 Openflyers claim to have boarded.

What’s more, the canonical plane data is now released as open source, so you can use it to demystify the IATA and ICAO codes often found in schedules and more.

This is only the first stage in a data scrub that will next move onto airlines and finally finish off with airports, which were already given a quiet but incomplete reboot last year.  Stay tuned for more!

Plane simple,


Airport edit review now through Github

Last month, OpenFlights moved to Github, and today we’re rolling out the first new feature enabled by this: airport edits on Github.

Until now, any edits to airports not submitted by yourself were sent by e-mail to a perennially backlogged review queue, which at time of writing has some 200+ edits waiting for review.  The downsides to this were legion: aside from the wait, there was no sensible way to distribute the load, no visibility into the status, and no way to prevent duplicate copies of exactly the same edit piling up in the queue.

Effective immediately, edits are instead posted as issues on Github, like this. This means they’re visible, so you can search and see if anybody else has reported the same thing; they’re automatically deduped, so that edits to the same airport (as determined by ICAO code) get added as comments to the existing issue; and they support “subscribing”, so you can get notified when it’s commented on, accepted or rejected.

And what’s more, you can now help.  Head over to, “Watch” the repository, and configure how you’d like to be notified for new issues.  You can then review any edits and tell us if you think they should be accepted or rejected, making our job that much easier.

For time being, the autogenerated issues are pretty crude, you’re offered a chunk of SQL that you need to eyeball against any potential dupes.  We’re planning to upgrade this to a cleaner diff soon, and expand this to cover airline edits as well.

Gitting better every day,


1 Comment

OpenFlights rolls out new maps, moves to GitHub

It’s been a long time coming, but I’m delighted to announce three fairly fundamental upgrades to OpenFlights: one obvious, the other two less so, but no less important.

The first change is that OpenFlights has new maps, more specifically three of them!  They are…

The “Positron” political map tiles from CartoDB, now the new default map:

Political map

The “Open Aerial” satellite map tiles from MapQuest:

Satellite map

And an entirely new style of map, the “Watercolor” artistic map tiles from Stamen:

Artistic map

You can choose your favorite tiles by clicking on the little globe icon in the top right corner. And in addition to being pretty, all three providers should be much more reliable than our previous servers.

The reason this switchover took so long is that until now, OpenFlights was using an equirectangular (plate carrée) projection to display its maps, which is computationally very simple but doesn’t have a whole lot of other benefits, and is not very popular with modern mapping software.

The second change was thus adopting a new map projection: Web Mercator, which has become the de facto standard for online maps.  This is not a perfect solution, since Mercator maps are distorted around the poles and regions north/south of 85°N/S are clipped off entirely, but the vast majority of flight routes display fine and almost all the world’s airports can squeeze into the top level zoom without scrolling.  (Sorry, Longyearbyen!)

The third change is that OpenFlights has switched from SVN to Git, and now has a new home on Github.  Back when OpenFlights launched in 2008, Sourceforge & SVN was the standard place to way open source projects, but GitHub has long since taken over that mantle.  What’s worse, Sourceforge continues to engage in increasingly worrisome behavior, bundling malware with downloads and taking over repositories.  So long, Sourceforge; and contributors past, present and future, welcome!

It’s about forking time,

1 Comment

Survey: Do you want airline schedule/timetable data?

Everybody loves free OpenFlights airport, airline and route data, but the single most common request made to OpenFlights is, “Do you have airline schedule data?”  Or airline timetables, flight times, frequencies, or anything else you could derive from a full schedule.  Our answer remains “Sorry, no” — but that may soon change!

So if you would like to see OpenFlights offer schedule data and possibly join our beta test program, please help us out by filling out this short survey:

OpenFlights Airline Schedule Data Survey

All answers will be kept strictly confidential.   Thank you for your continued support!

Scheduling some future excitement,

Leave a comment

Personal Data Hacks: Visualizing Data from

James Siddle has done some interesting work creating visualizations of OpenFlights data.   Check it out:

Personal Data Hacks: Visualizing Data from

And remember, you can export all your flights easily with Backup to CSV from the Settings screen, or any selection of your flights by clicking on the CSV button of the List flights dialog.

Happy new year,


OpenFlights migrated to new production server

OpenFlights has been successfully moved to a new production server today.  While there shouldn’t be much in the way of user-visible changes, the new server is twice as fast as the old one, which should provide a bit of a boost for some operations.  The long-broken blog navigation has also been repaired, and as a cherry on top, a bunch of bugs involving Tripit imports, most notably timezones, have been fixed.  That said, the upgrade involved moving to a new version of Ubuntu, Apache, PHP, MySQL and even WordPress, so there may be gremlins lurking in the machine.  Please report any bugs or oddities!

Also, if you’ve ever thought about setting up your own little copy of OpenFlights (you did know it’s open source, right?), there’s now a completely rewritten installation guide that walks you through getting it up and running on Ubuntu 12.04 LTS.

New and improved,



Import flights from TripIt

It’s been a long time coming, but I am tickled pink to announce the release of a long-awaited feature: integration of with online trip planning tool extraordinaire, which lets you create travel itineraries for flights, hotels and more automatically simply by forwarding them your reservation emails.  Here’s how it works:

  1. Log in to your OpenFlights account and select Import.
  2. In the Import dialog, choose the newly minted Import from TripIt up top.
  3. The first time only, you’ll be requested to authorize read-only access to TripIt.

You’ll then be presented with a list of your Tripit itineraries, newest first, with a separate tab for future flights.  Flights already in your OpenFlights record (same date, airports and direction) are automatically filtered out, and you can then choose Import for single flights or Import All for an entire trip.  Once done, click Close, and your newly imported flights will now be on your map.

As this is a new feature, bug reports, feedback and suggestions for improvement are very welcome.  And a big shout out to Andrew Chen for contributing virtually all the code for this!

Tripping it,

1 Comment

State of the Data: One million flights!

Calloo, callay, what a frabjous day!  On December 11, 2011, the number of flights entered into OpenFlights crossed the one million mark.  It’s quite a milestone, and I’d like to take this opportunity to thank you all for making it possible.  It took just over a year to double the flight count from 500,000, so let’s see what has changed since then.

Top 10 Airlines

Airline 500k rank World rank
1 United/Continental 1 (+2) 1
2 Lufthansa 2 5
3 Delta/Northwest 3 (-2) 2
4 American Airlines 4 4
5 Air France-KLM 5 8
6 British Airways 7 (+1) ?
7 Ryanair 8 (+1) ?
8 US Airways 9 (+1) 7
9 Scandinavian 10 (+1) 10
10 Qantas new ?

Yet another mega-merger brings United/Continental to the top in both IATA’s 2010 stats and on OpenFlights, beating Lufthansa by a hair and pushing reigning champion Delta/Northwest back into 3rd place.  But the rest of the list, astonishingly, is static: since Continental was swallowed by United, its newly freed slot pulls up everybody below #5 up a notch and squeaks Qantas back onto the board at #10 after a near-three-year hiatus, but their ordering is the same.

So who’s missing?  World #2 Southwest continues to be disdained by OpenFlyers, who rank it at #20, a notch down from the previous #19.   Perhaps emboldened by our recent launch in Chinese, new world #6 China Southern Airlines has climbed up six spots but remains distant at #43, with world #9 China Eastern Airlines (world #9)  pipping it by one place to #42

A statistical sidenote: on OpenFlights, we figure out airlines from flight numbers, so regional affiliates not using their parents’ codes are not going to show up here.  Since all the majors have their own sidelines, I figure they’re all disadvantaged more or less equally, and this thus probably doesn’t make a huge difference.

Top 10 Airports

Airport 250k rank World rank
1 Frankfurt Main (FRA) 1 9
2 London-Heathrow (LHR) 2 3
3 Chicago Ohare Intl (ORD) 3 4
4 Munchen (MUC) 5 (+1) 26
5 Charles de Gaulle (CDG) 4 (-1) 6
6 Los Angeles Intl (LAX) 6 5
7 Amsterdam-Schiphol (AMS) 7 14
8 Atlanta-Hartsfield (ATL) 8 1
9 New York-John F Kennedy Intl (JFK) 9 16
10 San Francisco Intl (SFO) 10 22

No change in the top three, with Frankfurt still reigning supreme, and the rest of the list has remained static as well with the sole exception of Teutonic flyers pushing Munich back up to #4, above Charles de Gaulle.  World #2 Beijing only makes it to #24 on OpenFlights, and still no sign of newly international Haneda, although Narita shows up at #40.

And now for something a little different:

Top 3 Airlines and Airports By Language

Language Share Top 3 airlines Top 3 airports
1 English 76.5% United, Lufthansa, Delta LHR, FRA, ORD
2 Russian 7.8% Aeroflot, S7, Transaero SVO, DME, LED
3 German 7.5% Lufthansa, Air Berlin, Ryanair FRA, MUC, DUS
4 French 3.1% Air France, Lufthansa, Air Austral CDG, ORY, LYS
5 Polish 1.2% LOT Polish, Ryanair, Lufthansa WAW, KRK, KTW
6 Portuguese (Brazilian) 1.1% BRA, TAM, GOL GRU, CGH, BSB
7 Spanish 0.9% Iberia, Ryanair, Alitalia MAD, BCN, ALC
8 Finnish 0.8% Finnair, Lufthansa, Blue1 HEL, FRA, ARN
9 Swedish 0.5% SAS Scandinavian, KLM, Lufthansa ARN, CPH, GOT
10 Chinese (Mandarin) 0.4% Air China, China Southern, China Eastern PEK, SHA, SZX

Splitting up the flight database by the user’s preferred language, it’s surprising (or, on second thought, perhaps not?) how local flying still is: for Russians, Germans, French, Poles, Brazilians, Spaniards and Chinese, all three top airports are in the language’s home country.  The only international hubs that sneaks onto others’ lists are Frankfurt and Stockholm-Arlanda for the Finns and, oddly, Frankfurt for English-speakers as well — presumably simply because many of OpenFlights’ German users have not switched their language.  On the airline side, for every language the flag carrier of the home country dominates, but this time Lufthansa sneaks onto 4 lists outside Germany and Ryanair isn’t far behind at 3.

* * *

Last and least, in less happy news, we have finally put our long-ailing Facebook app out of its misery.  Ideas for what should replace it are welcome, and work is ever-so-slowly continuing on TripIt integration.

To infinity and beyond,

Leave a comment

OpenFlights now in Chinese! 欢迎光临OpenFlights中文版!

OpenFlights has just added over one billion potential users, thanks to a Chinese translation by sscat.  This means that OpenFlights is now available in 12 different languages, and we’re still looking for more — if you can help, take a look at the instructions!  It’s easy and no programming skills are needed.  You can also use the same instructions to edit existing translations if you find something that looks a bit funny.

And if you’re curious, here’s a breakdown of the current user base by language, with an estimate of the language’s share of Internet users in 2011 in parentheses:

  • English 75.7% (26.8%)
  • German 8.1% (3.6%)
  • Russian 8.0% (3.0%)
  • French 3.4% (3.0%)
  • Portuguese 1.1% (3.9%)
  • Spanish 0.9% (7.8%)
  • Finnish 0.9% (n/a)
  • Swedish 0.4% (n/a)
  • Japanese 0.2% (4.7%)
  • Chinese 0.1% (24.2%) — but hey, it’s only been a few days!
  • Lithuanian 0.03% (n/a)

As it turns out, the only top 10 languages not supported by OpenFlights yet are Arabic (#7) and Korean (#10).  Help us fill these gaps!

Polyglottally yours,

Leave a comment

Great Circle meets OpenFlights

Many aviation enthusiasts will be familiar with the Great Circle Mapper, a handy website that does just what it says on the box: maps great circle routes on top of a world map.  And now, thanks to a patch contributed by an OpenFlights user, you can get your OpenFlights maps up on GCM as well: just choose List flights and then click the shiny new GCMap button, which will open up GCM in another tab with a map that looks something like this:

Since the GCMap export is based on the currently shown list of flights, you can apply filters before listing and thus control the output of the map quite precisely.  And since GCM generates its maps as flat images, you can save them locally and reuse them as you wish — although it’s worth bearing in mind that GCM, an external service not affiliated with OpenFlights, retains the copyright to anything you create there.

The same kind contributor also provided the new Class by distance piechart for Analyze, which shows how much time/distance you’ve spent in each class of seat, whereas the existing Class chart just showed number of flights.  As frequent flyers will know, while short hops are quite tolerable even in steerage, it’s the long flights where those lie-flat business seats really make a difference.

In new circles,