Man, I would love to be part of the development team that determines the rates and routes at a place like Expedia or Travelocity.

I'm trying to get someone from Nassau to Calgary on the 25th and back again on the 29th. I generally start with Expedia because I like that they display the total travel time in their results, although I do like that Travelocity has a little pop-up window right in the search results to show you how much time you have to connect.

Round 1: Starting airport is NAS, destination is YYC. Cheapest fare: about US$1450.

Knowing a little about airline fares, I wonder, aloud, how it could be so expensive. (My wife subsequently wonders, aloud, why I don't wonder a little more quietly.) For example, I know that it doesn't cost more than $1000 for a round trip from Miami to Calgary. And I know it isn't more than $300 for a trip from Nassau to Miami. If I can book these trips separately at a cheaper price, why not together?

This leads to Round 2: Enter a multiple destination trip with the following parameters:

  • NAS - MIA on the 25th leaving around 8AM
  • MIA - YYC on the 25th leaving around noon
  • YYC - MIA on the 29th leaving around 8AM
  • MIA - NAS on the 29th leaving around 8PM

Cheapest fare: $990. And it is reasonable. Nonstop flights 'twixt Nassau and Miami, one-stop flights 'twixt Miami and Cowtown, usually through Dallas....

...through Dallas, eh? I wonder if...

Round 3:

  • NAS - MIA on the 25th leaving around 8AM
  • MIA - DFW on the 25th leaving around noon
  • DFW - YYC on the 25th leaving around 6PM
  • YYC - DFW on the 29th leaving around 8AM
  • DFW - NAS on the 29th leaving around 8PM (I had to do this because Expedia allows a maximum of five legs)

Cheapest fare: $731.93. All nonstop except the last leg which has a layover in Miami.

In other words, by laying out my flight pattern a little more exactly, I can save almost 50% on the flight. And as a programmer, I can't help wondering why Expedia's internal process can't do the same thing. Pardon me, as a naive and generally non-cynical programmer, I can't help wondering that.