3-hour UI review of Expedia

I signed up to interview with Expedia on Monday. I figured I should look at their site for a few minutes before interviewing with them, but I ended up playing with their basic search feature for over an hour.

Should I spend my 30-minute interview pointing out how their site sucks* or trying to get a job?

The form on the front page

  • "Search for flight" (for submitting the form) looks like a link, not a button. IE users are used to losing form data randomly when they click on links, so they'll spend a lot of time looking for something that looks like a button before clicking the link.
  • The return date textbox is prefilled with "mm/dd/yy". Prefilling textboxes like that is usually frowned upon, in part because it makes people like me skip the textbox. But I think I understand why Expedia prefills it.
  • If the return date textbox is prefilled, it should clear itself onmousedown!
  • Why make it look like I have to enter a year? I'm very unlikely to book a flight more than a year in advance. And I'm still typing the year as "03" out of habit, even though it's been 2004 for a month.
  • The single-digit date for February in the "Depart" textbox makes it look less like a date.
  • Why can't I get a flight and a car without a hotel? I can get every other combination of flight, car, and hotel.
  • I think the form should use 3 checkboxes (flight, car, hotel) rather than 7 radio buttons (each nonempty subset of {flight, car, hotel}). Using checkboxes would make the UI simpler but would require more clicking.
  • "Morning, Noon, Evening, Anytime": What times does Expedia consider "morning"? More importantly, what times are "noon"?
  • "Morning, Noon, Evening, Anytime": Where's the "middle of the night" option?
  • The DHTML calendar does not work in Firebird.
  • In the DHTML calendar, double-clicking the right button only goes forward one month. This is a bug in IE, but Expedia should work around it because it affects almost everyone who books a flight two or more months in advance.

The intermediate (error) page

The intermediate page appears only if you submit the form with errors, omissions, or ambiguities. It allows you to fix the problems and resubmit the form.

  • I typed "Los Angeles" in the "from" box. It gives me the following options:
    Los Angeles, CA (QLA-All Airports)
    Burbank, CA (BUR-Bob Hope Airport)
    Los Angeles, CA (LAX-Los Angeles Intl.)
    Ontario, CA (ONT-Ontario Intl.)
    Orange County, CA (SNA-John Wayne Intl.)
    • The "all" option is not set apart from the others. It should be bold, or parenthesized differently, or something.
    • There's no way to say "LAX or Ontario", which seems to be a common preference at Mudd. I think it should be 4 checkboxes, with no special "all" option.
    • I've never heard of QLA (meaning "All LA airports"). Is that a standard thing? What cities have it?
  • If I leave out the return date, I get "Please check your date." It should give me the option of saying "I want to travel one-way" right there (in addition to letting me enter a return date).
  • There are several new questions on the error page. This turns me off for two reasons. First, it makes it seem like there's no one-step form, so it makes Expedia seem slow to use. Second, it makes me feel like I've been deceived by the small form -- it only led to a longer form. If I make no errors on the small form, the error page doesn't appear at all, and I am not given these questions.
  • WTF does the checkbox labeled "Avoid most change penalties" mean? After looking at Help, I decided it meant "Avoid flights with change penalties".
  • The help box next to the "select airline" dropdown is confusing.
  • I think that confusing help box is trying to say "If you select 'no preference' instead of a specific airline, we only show flights for which we can confirm availability". If that's what it's trying to say, why is the choice of an airline tied to "only show flights with confirmed availability"? Why can't I search for any airline and include unconfirmed flights, or search for only confirmed Jetblue flights?

Search results

  • The date format "Sat 21-Feb" looks European. This is especially strange given that the front page made me enter a date in US format.
  • "Some itineraries are not available as e-tickets. If your itinerary cannot be booked as an e-ticket you will be informed prior to completion of your purchase. If your itinerary requires paper tickets, there is an additional $19.99 shipping and handling charge to print and express deliver your paper tickets." First, why not include the $20 charge in the price shown? Second, why is expensive express mail the only option?


  • It would be cool if I could give Expedia my address and have it figure out which airport I should use for a given destination, taking both driving time and flight time into account.
  • I have to select a departure time. Why can't I select an arrival time instead?

Non-UI things I noticed

  • http://expedia.com/ redirects to http://www.expedia.com/Default.asp, not http://www.expedia.com/. Since some people link to expedia.com, that might hurt Google rankings.
  • The front page could be made smaller/faster, like I did with Google's.

All in my head

  • Every time I see the phrase "nonstop flight", I think "nonstop fright" and giggle.

* Expedia doesn't suck. Not only does it not suck, but it also kicks Travelocity's ass. Travelocity says "There are no fares offered between the selected cities" when you give a bogus starting city. Travelocity presents a list of four "Washington DC" airports in two widely spaced columns of radio buttons. If I add a comma, Travelocity silently searches for flights to any of the four "Washington, DC" airports.

2 Responses to “3-hour UI review of Expedia”

  1. jcurious Says:

    I haven’t looked at the site, but if the date doesn’t show mm/dd/yy, this could confuse people from other locales… ie… what is 05/03/04?

    March 4, 2005?

  2. Jesse Ruderman Says:

    Yes, that’s why Expedia pre-fills the textbox with the text “mm/dd/yy”. That doesn’t explain why they chose to put it *in* the textbox rather than next to it, though.