Could you please elaborate? What makes a flight search so expensive?
Could you please elaborate? What makes a flight search so expensive?
In order for your flight search product to be useful, you need a database containing effectively every flight in the world - all the airlines, all the destinations - and you need to update it every time a fare or seat availability changes. Then you need optimized routing algorithms to find routes that accommodate a vast array of consumer preferences. So, there are giant costs just to get access to all the data in the first place, then write the code and run all the servers.
ITA Software offered this as a service via an API, but since a couple of years after Google acquired them they stopped offering access to outsiders.
Now the GDS companies (Amadeus, Sabre, Travelport) offer API products, but they are still very costly, so big transaction volumes are needed to justify it.
There is now one way small/niche businesses can offer flight search and transactions fulfillment; a YC company called Duffel. They still only offer a narrow selection of airlines, but it’s growing.
Some other companies like Skyscanner offer access to their API, but only if it’s in their interests (ie, if you generate sales for them; you can’t make much revenue for yourself that way).
The whole acquisition was a huge failure on the part the DoJ Antitrust Division.
The hard problem the flight search engines solve is initially for the airlines. They have aircraft of different capacities, ranges, seat types, and so on. Then, different tiers of fares based on seat type, advance purchase, refundability, add-ons like priority boarding, bag fees, inflight wi-fi, etc. Then, a "flight" is some combination of actual flight "legs" (single takeoff + landing).
So, airlines want to maximize revenue. To do that, they set available inventory levels for many of the unique combinations of all the variables above. Perhaps, for example, only 10 of the "deep discount" point-a->b->c coach seats, but 50 for the highest priced b->c leg. Oh, and the price is higher on day "X", because some popular sporting event is held in city "c" on that day, and the morning flights priced even higher.
If you extrapolate then, you can tell that someone wanting to fly from a->c has a lot of different possible fares, with each fare having a different number of available seats to sell. And all those variables are changing underneath your search, all the time. And, you're obligated to show actual fares, including taxes, fees, etc, which vary dynamically by airport, pax type, etc.
Companies like Amadeus, Sabre, Travelport, and so on did a reasonably good job over the years of exposing APIs to both airlines and travel agents to search these. ITA came along with a more computer science based approach and made the shopping part of this much faster, with more results, flexible, more tunable by the airlines, etc.
But travel agents died with the internet.
http://www.ai.mit.edu/courses/6.034f/psets/ps1/airtravel.pdf
Directs are a trivial problem.
1-stop indirects is a simplish batch processing problem to produce an easily indexable data set.
2-stop indirects is a huge quantity of computing power.
There aren't many computing platforms that could offer a higher profit margin per byte stored or queried!
Pretty much any other computing service has a better ROI.
You can’t easily prune the tree on cost or time because you don’t know my preferences. You might notice that most pruning is done only on segment count, with (almost?)no one by default showing itineraries with 2 additional segments over shortest. I might prefer a carrier (I do), but even if I do, I still want to see the other choices, because my preference isn’t thousands of dollars strong.
Rather than 10 queries per seat sold, I’d not be surprised if the actual query count was 10K or more.