From Mode S code to tail number
Posted On 2021-05-08
No tail number! After installing your first receiver and connecting it to main flight tracking sites – such as FlightRadar24 and FlightAware – once you start playing with the dump1090 feed by yourself, one of the most frustrating part is that you only get a 6 digit hex code – the Mode S code of the aircraft – and sometimes a flight number, but no more information about the aircraft (type, airline, origin, destination). You can access many of them through the flight tracking sites you are contributing too, but with a lot of limitations. How to get from the 6 digit mode-s code in hex format to the tail number / registration, aircraft type, airline…?
From Mode S code to tail number
There are quite a few solutions to get the tail number (or registration) of an aircraft from its Mode S code. Here are the solutions I have been using so far. It goes from manual search into online databases, downloading and installing big databases and finally using dedicated APIs to make that automatically. I made the codes I found over the years available, the links are listed below.
Manual hex code lookup
Some websites have an extensive database of aircrafts, but they don’t have API and limit the use to a manual search:
- The Gatwick Aviation Society lookup form – this has been one of the historical site to propose code lookup, but sadly it didn’t survive the death of Gary Jones, the developer that has been developing the tool for the GAS. I’d like to pay my tribute to Gary Jones and the GAS here as it was the first resource I ever used.
- Airframes.org Passenger airliners, cargo airplanes, business jets, helicopters, private aircraft, civil and military, showing common registry data as well as mode-S radar transponder addresses.
- FlightRadar24 (if you are a feeder)
- Planefinder – just enter the mode-s code in hex format into the search box
- absbexchange – no real search solution, but simply replace XXXXXX by the mode-s hex code at the end of the URL (globe.adsbexchange.com/?icao=XXXXXX)
- Foxtrotcharlie – civilian and military aircraft
- MilRadioComms – over 80,000 military and about 280,000 civilian mode-s hexcodes in a searchable database
- RZjets.net – put the Mode S code into the “registry(*) 24bit” field
- mictronics.de – a database with 450 000+ aircraft
- flightdeb.net – a database maintained by enthusiasts
Most of them are pretty up to date, meaning their databases are updated regularly with new aircraft.
There are also some free databases available online that you can use locally. You need to download the file and import it into a MySQL database or use Excel to lookup for the code you are I retested in. This is a great place to start, but this is static: there are many new aircrafts registered every day, and these databases are getting obsolete very fast.
Some databases are behind a paywall.
More interesting if you are into coding, here are some available APIs.
Other APIs are available to get data about routes and airports:
As usual, I very welcome your feedback if you know some other ways to get access to more databases. Even with all my efforts, I have more than 6000 Mode S codes detected by my receivers that I was not able to identify, from all countries.
Also, be careful with the data you get from all these free sources. Data can be obsolete, there are many mistakes (you see them when you are using them for plane spotting). That great for a fun use, not really for a professional or business one. In case you need accurate data, you should register to paid services that keep their databases up to date.
How to check the data?
Sometimes, the data you find from the above links will look weird. There are several options to check if it is erroneous or out of date:
- check if the different resources provide the same data
- look for the aircraft by its tail number in other databases (such as airfleets.net, scramble.nl or skytamer.com) to see if the model / owner are the same
If there is some incoherence between the different sources, you will have to evaluate which one has the most accurate data.