A Technical Look: How Expedia is Simplifying Travel Planning

By John Kim & Aman Bhutani

In the last four years, the average number of flight searches a customer makes per booking has grown from 15 to 48. 15 to 48! Isn’t that crazy?! Do you remember the last time you searched for a flight or hotel? How many searches did you do? Did you remember the results of all your searches? How about even two or three searches?

In our lab, we’ve noticed that people can barely remember the searches they’ve performed or the results that they’ve seen. What we’ve also noticed is despite technological advances, many people still opt for good old pen and paper to help them determine the best travel choices.

In an age where you want to search and book at any point in time on any device, taking physical notes seems impractical. By the time you write things down and share the information with your travel companions, all that information has probably changed and all your hard work has gone down the drain.

Here at Expedia, we’ve developed technology to solve this. The time has finally come to ditch the pen and paper.

Meet Expedia’s Scratchpad.

With Scratchpad, we’ve eliminated the need for you to take handwritten notes. Scratchpad allows you to return instantly to the hotels, flights, and packages you looked at before, with the same dates you used during your last search and the most current price.

Scratchpad records everything for you so you don’t need to jot anything down. Much like your handwritten notes, you can keep what you want and delete information you no longer need. The power is in your hands. And the best part? We keep all this information up-to-date for you.

Scratchpad makes it easier to search across devices too: start your search on your laptop during lunch break, continue it on the Expedia app on your smartphone on the subway ride home, and then review options with your travel partner on your tablet later that night.

This new feature is already live on our site. Check it out and let us know what you think. We already have more ideas on how to make Scratchpad even better, but we’re always hungry for feedback. We’re so excited to continue developing features that the world has never seen before.


Warning: We’re about to get our geek on below. Continue reading at your own risk.

At Expedia, speed and scale are of the essence so we implemented the note-taking functionality inside Amazon EC2. Whenever a user conducts a search, a brief message is sent to our cloud-based User Interaction Service. We also used Apache Thrift as a lightweight (and, so far, flexible) format to encode and transmit those messages. Our goal is to preserve backward compatibility as the message format evolves, something that Thrift has done well so far.

The User Interaction Service is a simple broker. Its job is to inspect messages and hand them off to a variety of consumers, each of which can write the details of that message into a different place in the collection of data stores. The relationships between this data, between users, the searches they do, the hotels and flights and cars they look at, and the things they eventually buy, make up an enormous network of nodes that we call the Travel Graph.

User Interaction Service


Rather than build a traditional relational database schema that encompasses everything, we’ve built the Travel Graph as a collection of special-purpose data stores. A good example of this is the note-taking system that records your shopping on the site, which is a simple sharded MongoDB cluster that scales well (with a few caveats).

Today we’re recording about 100 notes per second for all our users combined, for around 200GB of data overall. We expect that figure to increase by one or two orders of magnitude as we keep track of more things and rollout worldwide. Other special-purpose systems help us aggregate and trend that data, so that we can show shoppers what the travel marketplace looks like in real time.

The data that results from users shopping on Expedia should ultimately be an integrated part of the entire shopping experience and not just limited to the Scratchpad page itself. As a result, the Travel Graph service layer collects data from the various data stores, and returns it back to our site servers.

We’ll break down individual pieces of this architecture in subsequent posts, with comments from the development teams that have built them, and focus on practical implementation. In the meantime, keep watching the site—we’re releasing new Scratchpad features quickly, and would love to know what you think.


This entry was posted in Technology by John Kim. Bookmark the permalink.

About John Kim

John Kim is the Chief Product Officer at Expedia. He is a seasoned and accomplished product and marketing executive with over 17 years experience as a digital media executive. John has a deep domain expertise in online and mobile search, local, advertising, analytics, gaming, and social media.

67 thoughts on “A Technical Look: How Expedia is Simplifying Travel Planning

  1. I want to clear my scratchpad. It doesn’t always give me an option to erase. Why not, and how do I erase it? I’ve only seen “erase” one time.

    • Hi Rilla,

      If you click on the Scratchpad link on the top right menu bar, it gives you a list of your most recent searches along with a link for “View Scratchpad”. If you click on this link, the subsequent page has a link at the bottom left after your list of searches called “Erase Scratchpad”. Hope this helps.

  2. Very good tool, heaven knows you do write the info down, but with the pad it’s right there, the info you needed thanks expedia!

  3. So….scratchpad saves all my notes and all these zillions of layers of data are collected and saved to better serve the customer and make this easier… Wrong! This system didn’t even save my trip to my rewards program, nor is there any way to add it – trip for three out of the country. Back to Orbitz I go!

  4. Yesterday, I just lost a good flight opportunity. Due to I was away and couldn’t remember where I was at.

  5. kindly change your REM (is it remember or remove???) to either fully spell out the word or use DEL (for delete) instead. delete is far more commonly understood that remove. thanks…..

  6. I love this scratchpad. It is so helpful, and I don’t have to take notes or try to remember what was the fare or hotel from a precious day or time. This is a very helpful tool. I would like to find out how to delete items from my scratch pad. Thanks for the technology.
    Alberta M Mosley
    Last Stop Travel, LLC

  7. Do you have a system that can alert me when prices change for the flight dates and destination I’ve indicated?

  8. I’d love to have the searches in my scratchpad performed at regular intervals, say every four hours, and the results emailed to me.


  9. I found it very helpfull having the info there when i needed it ,i was doing this for a friend and it made it simple to bring back the info to show them the results. There was one thing i would have liked to have seen, is the departing flight number witch was not listed with the rest of the info? other than that i was happy and so where my friends thank you!

  10. I love the scratchpad. Your article above EXACTLY got it right – I was using little slips of yellow stickems to jot down costs, features, etc. for hotels and flights before I discovered the scratch pad. I wasn’t sure exactly how to use it and there were some bumps, but over all this is a great idea – I know it will be even better when I plan my next trip based on the comments you are getting.

  11. I expected to find on Scratchpad all of the arrangements I have already made R/T with rental car, pending payment. The only thing that comes up is departure — AND, I can’t get back to my arrangements that are pending!

    Now I have to start over. Bummer!

  12. how do I erase the scratch pad? I had hoped to plan a surprise trip for my wife but now she knows about. Thanks

  13. It’s a good thing, Expedia. Yet it doesn’t update as quickly as you might think. The price of my flight has changed (it went up naturally) but the scratchpad doesn’t show the change, except for the time/date. Uh, I could have gotten that by checking my calendar locally

  14. scratchpad is great idea…..very useful. Maybe in the future we could receive automatic updates of price drops on selected trips ???

  15. I would like to have an option that all the hotels in my scratchpad can appear in a map, as they appear when you look for hotels…..
    I haven´t find a way to have a map only with the hotels I´m interested in,

  16. Please add share feature so details of possible flights and searches can be shared via email or text. Thanks

  17. This is a great idea, I’m glad I found it. I travel a lot and i’m one of those people who doesn’t always write my searches down, because I do so many. I usually write down the final details and stop. This is going to help a lot!

  18. By the way the customer’s explained their point of view of the scratchpad I’m convinced that it’s a handy item to have once you learn how to use it.

  19. I have never used Scratchpad or heard of it before this day. I am signing up for it as soon as I finish this note! I’m hoping it will allow me to post, not only what I search on Expedia, but also what I search for on competing sites, such as priceline, hotwire, etc.

    Thank you and your R & D department for creating such a wonderful tool to the market place. My compliments to Expedia!

  20. I have developed great confidence in Expedia’s ability to offer best price and availability for all all aspects of my travel needs….Thank you and keep up the good service.

  21. Thanks for the scratch pad feature.

    I suggest an improvement, histories.
    I would like scratchpad to keep histories, so I can find the search I did for a flight from sfo to dca for August 15-21 at the price on July 23, 2014.

    I need to justify flying to New York first, which resulted in a lower fare. But I did not print that out at the time. I am filling out my travel reimbursement form now, and I need the fare direct to DCA documented.



  22. Just wanted to say the information was usefull and appreciated. It takes the worry out of having to think about where one would want to go with friends or that speacial individual. Scatch pad is beyond what can be exspected for anyone to appropriately plan that much deserved getaway..no worries extravaganza.

  23. This is great use of good technology…. I hope others follow. And, I agree with Debbie S. – automatic notifications/updates of price drops would be excellent!!!

Leave a Reply

Your email address will not be published. Required fields are marked *