Who is flying that? The map now says so, in the airline's own mark

· aircraft · map · spotting

Open the map with the live sky on and you would see a stack of aircraft labelled DLH441, AUA872, WZZ1TN. Every one of those strings names an airline in its first three letters, and if you have spent years around aviation you read them without thinking. If you have not, the map was a wall of registration numbers — the information was there and it was unreadable.

So the maps now draw the operator beside each aircraft. Where we have a logo it is the airline's own mark; where we do not, it is a compact code chip in a colour derived from the code itself, so the same airline is the same colour every time you see it. When the sky is quiet enough for a second line to fit, the airline's full name is spelled out under the callsign. The same mark shows up on the card you get when you hover or tap an aircraft, and on the radar card after a scan — a blip and its ambient twin must not look like two different aircraft.

Where the operator comes from

Nothing new is being fetched from anyone. An ADS-B callsign carries the operator's three-letter ICAO code as its prefix, and we have had an airline reference table in the database since the spotting pipeline landed — that is what already fills the "Airline" row on a caught aircraft's card. The live sky layer simply never asked it. It does now, and because that layer answers a poll from every open map every few seconds, the whole table is loaded into memory once at startup so the lookup costs nothing per aircraft.

Where the logos come from

Wikimedia Commons, baked ahead of time into the airline table rather than fetched live. Two rules govern what gets baked, and both matter.

The first is identity. A wrong logo is worse than no logo, because it puts one airline's brand on another airline's aircraft. So a Wikidata match is accepted only when the entity's own IATA or ICAO code matches the row we are baking, or — for entities that publish neither — when the name matches exactly and the description says it is an airline. A conflicting code rejects the match even if the name is perfect, because several carriers trade under the same name in different countries.

The second is licensing. A logo on a canvas map has nowhere to put a credit line, so the bake accepts only files whose licence requires no attribution: public domain, PD-textlogo, CC0. Anything under CC BY or CC BY-SA is skipped and logged as skipped. That is the licence working as intended, not a failure — it just means those airlines keep their code chip, which was always designed to be a real answer rather than a placeholder.

This is also why the rollout is gradual. The bake is an operator job that runs in batches with a human reviewing each proposed pairing before it is written, and the backend re-reads the table every half hour, so logos appear as they are approved rather than all at once. An airline with no logo yet is not broken — it is a coloured chip with a code on it, which is still more than the callsign alone ever told you.

More from Skydex

Play Skydex free →