Apologies for being AWOL for the past two months, I’ve been pretty heads down working on my startup (avisell.com) and I just didn’t feel like there was a whole lot to write about post-holidays.
But I’m back! I’m currently planning a RTW (round the world) for next winter, hoping to diminish my glistening pile of AA miles on the verge of devaluing. First class seems like a good option given it’ll become a little less attainable in a few weeks.
The Problem: Find Routes with Three-Cabin First Class
So that led me to research what products I want to fly and where I want to go. Australia and Hong Kong were definitely on the list, and maybe Eastern Europe on the way back. Etihad, Emirates, Qantas and JAL were all likely contenders.
But then comes the chore of planning and picking apart route networks, routing rules, fifth freedom flights and cabin configurations to figure out how to maximize the redemptions (RTW’s generally are more than one ticket these days).
So I happened to have a dataset of nearly every scheduled flight over the past year, and it happened to have cabin and aircraft type data (as well as when the route was scheduled – if you read a typical airline schedule, it’s published as a “effective from” to “effective to” date, with some or all of the days of the week set to true (they fly that day) or false (they don’t – more common in routes that are 1x or 3x weekly service). And routes are often seasonal, so those flights with F to vacation destinations are swapped back on to high business demand routes outside of the holiday/summer seasons.
The Solution: Build a Script to Deduce Which Flights Likely Have First Class
First, I wanted to restrict the schedules to only look at widebodies (and the AA a321T – sorry, no domestic first class for me!) 🙂 so I defined specific equipment types to look for.
Then, since some carriers fly widebodies that are only configured with business class, and others market business class as F in domestic/short-haul markets, I set constraints to only look for flights selling F (not J or C) > 0 and less than or equal to 14 – the largest first class cabins flying (BA, QF, EK).
I also added an alliance designation, since that’s fairly useful for matching up partner flights. I also excluded any schedule lines describing flights that were flying for less than 30 days so that we didn’t capture one-off repositioning flights. While many routes are not year-round (BA F to the caribbean), they hopefully will give you some ideas.
Lastly, it outputs to a user-friendly csv/excel file if you’d like to do your own crunching. In addition, since I love maps and visuals, I also had it output as a GCMAP-friendly string, color-coded by carrier.
You can download the dataset, output csv, python code, GCMAP strings and resulting pictures from my github profile – https://github.com/ericboromisa/First-Class-Routes
The Results: Pretty Maps!
So without further ado, here are the maps in all their glory:
Surprisingly, AA’s (red) only long-haul routes in the dataset were MIA and JFK-LHR, which are utterly buried under all the BA lines, but it’s interesting to see that they’re flying their A321Ts to places like Boston and Miami with some regular frequency. The lack of South America F seats might be a product of the 777-200 retrofits and removing the cabins from the 767-300’s, but I thought they were still flying the 777-300ERs to GRU/Sao Paulo. Feel free to chime in here if you know any details!
TAM (yellow) also is in the process of removing their first class cabins, so expect all of those lines to go away.
BA (blue) clearly is the winner here, with a lot of F seats flying to all corners of the earth. Though you may want to remove it too, since you’ll incur massive fuel surcharges. If you do that, you get the following route map (sans BA and JJ).
Not quite as rosy of a picture
Qantas is also cutting back on their F routes, though NRT (I think it’s now HND) and DXB-LHR are still going strong. Availability on the US routes is near nil.
I think this exercise especially highlights the value of Cathay and JAL. Cathay’s route HKG-JNB also stands out. You can also see CX’s and QF’s North American transcons, which are easily the best way to get between coasts.
- British Airways (blue)
- American (red)
- Cathay Pacific (green)
- TAM (yellow) – going away
- JAL (purple)
- Qatar Airways (white)
- Malaysia Airlines (orange) – just LHR and CDG
- Qantas (black)
Wow, so many options! There’s especially a lot of density in Europe (thanks to LH) and East Asia (thanks to SQ, TG, OZ, CA, NH all next door to each other). Note that to get to South America, or Africa, you pretty much have to go through Europe and are heavily reliant on LH’s elusive space. Though it’s worth pointing out the Singapore/SQ fifth freedom routes from BCN/Barcelona-GRU/Sao Paulo and the Air China Route from MAD/Madrid-GRU/Sao Paulo.
Singapore also has great projection into Australia and New Zealand and may be good way to get there if you’re hamstrung by Oneworld.
It’s also pretty odd to see United’s deployments of their 777’s, with several bouncing between Guam/GUM, Honolulu/HNL and Japan. Wouldn’t think those are premium routes, but they were deployed for several months last year.
Also, Air India is starting more service to the US, so expect to see more navy lines pop up as well.
Lastly, ignore the green lines, since Swiss doesn’t really open up space to partners. But otherwise a lot of dense options, especially in the northern hemisphere.
- Lufthansa (blue)
- Air China (red)
- Swiss (green)
- ANA (yellow)
- Asiana (purple)
- United (white)
- Singapore Airlines (orange)
- Thai (black)
- Air India (navy)
Ah Skyteam, the alliance everyone loves to hate. Air France (red) has a fairly dense network, though sadly their First Class Awards are not available to partners or non-elites. What’s more impressive is the huge route network of Korean (in yellow above/purple below), blanketing nearly all of Eurasia and much of North America. Definitely a good option if you have Chase Ultimate Rewards Points lying around. China Southern also has a fairly noticeable route network in Green, particularly to Australia, though given Ben’s experience, I’m not keen to try them any time soon.
I also didn’t have the data for Garuda Indonesia (Orange) or China Eastern (Black), but their routes are fairly easy to keep track of, so I added them in manually. Check out the modified map removing Air France and adding Garuda and China Eastern (and modifying China Airlines – Blue to account for their retrofitted 747 routes to SFO, LAX, PVG and PEK) for a more realistic picture of Skyteam.
Note how there are no Transatlantic options and the entire continents of South America and Africa are untouched. Maybe with Etihad’s help, someone like Alitalia could step up to the plate (though unlikely any time soon).
- China Airlines (blue)
- Air France (red) – removed in 2nd map
- China Southern (green)
- Korean (yellow)
- Korean (purple – changed for better visibility on 2nd map)
- Garuda Indonesia (orange) – have heard nice things
- China Eastern (black)
Lastly, I changed the perspective of the non-aligned carriers with first class because they’re all fairly close together — and completely dominated by Emirates (red) with all of the a380s and 777’s they fly to nearly every corner of the world. Even to Mauritius, Seychelles and the Maldives. Completely insane. Their route network is truly impressive, while Etihad (blue) and El Al (green) are practically buried underneath.
Well, at least they have the Apartments.
I hope this analysis was helpful and could further your travel planning efforts. By no means is it perfect, and I’m beholden to my increasingly out-of-date dataset. But feel free to download the code, send me an email or come to the SF Travel Hackers Meetups and let’s make it better!
As always, feel free to pose question, comments or corrections below!