Product proposal for Inspire.
Prepared by Troy Carlson for
Airbnb on April 11, 2017.


My name is Troy Carlson, nice to meet you. I am the entrepreneurial hacker type with a broad range of experience building digital products. I embody extreme ownership and thrive in ambiguity. My biggest strength is my relentless drive to deliver results. My second biggest strength is distilling complex ideas into a digestible, human form. 

This is how I will approach building Inspire. My approach is broken up into five parts:



If you have any questions please don't hesitate to email or call me. I'll be happy to chat.


The goal of Inspire is to get Airbnb users excited about a destination for their next trip.


Airbnb is reimagining the search functionality to inspire guests throughout their trip planning process. Currently, guests use a variety of inputs to come up with the idea for the trip. Much of this process happens off Airbnb today, and we’d like to integrate it into the Airbnb experience.


Planning a trip can be a daunting task, especially if the destination isn't pre-determined. All but the most fortunate travelers must balance budget, schedule, comfort, and the expectations of their travel party. The overwhelming possibilities of where and when to travel may lead to analysis paralysis or buyer's remorse. What if Budapest wasn't the absolute best way to spend those vacation days?

Inspire aims to make choosing a travel destination a delightful experience instead of a painful one. Users deserve to be excited about and confident in their chosen destination. This not only makes traveler's lives more enjoyable but also sets the host up for success by welcoming an optimistic and excited traveler into their home.


Defining appropriate metrics will be crucial for Inspire's success. How will we know if our target users are having a better experience if we don't know how to measure progress?

Without access to existing data, my hypothesis is that users without a pre-determined destination start the search process but don't book a listing in the same session. They may delay the booking process or never book their trip at all. There is little visibility into why the search was abandoned because so much of the planning process is done offline.

Here are three quantitative metrics that may prove useful in improving the discovery process. If possible, these metrics should be isolated to our target users (see part 2) instead of all users of Airbnb.

1 - Abandoned searches
The number of abandoned searches should decrease as the discovery process improves. 

2 - Time to book
There are two ways to interpret this metric. The time between the user's first search and them clicking the Book button may decrease as the discovery process becomes more efficient. Of course, if users find the discovery process enjoyable they may start planning their trips further in advance and the time to book may increase. Regardless, this seems like a valuable piece of data.

3 - Cancelled bookings
Another hypothesis: indecisive users who aren't confident in their plans are more likely to cancel their bookings. If the discovery process does a good job of getting the user excited about their destination the cancellation rate should decrease.

These metrics should be reviewed on a regular basis to ensure we are measuring the right things.


We need to deeply understand our target user and the problems they are using Airbnb to solve. 

Target User

I will continue to work off hypotheses in the absence of data. These items should be reviewed on a regular basis to ensure we are targeting the right people. Our target user has the following attributes:

They haven't settled on a destination for their trip.

Partially Committed
They are committed to travelling to some degree but aren't sure exactly when/where.

Schedule Constrained
They have at least a rough idea of when they'd like to travel.

They have limited experience with travelling and/or Airbnb.

Travelling for Pleasure
Instead of travelling for business.

User Problems

People use Airbnb for various reasons. Our target user chooses Airbnb to solve one or more of the following problems:

They scroll through listings for entertainment.

They check Airbnb to see if they can stay in a given city for cheaper than their usual hotel.

They want to stay somewhere cooler than a hotel and have a great story to tell.

They simply want to see what kinds of listings match their availability.

Meet Allison

Let's give our target user a face and a name. Talking about new features is far more compelling and relatable in the context of an actual person. So, who is Allison?

Allison is a 28-year-old young professional from West Michigan. She is an account executive at a digital advertising company and earns about $50k per year. Her friends always admire her adventurous and bold fashion choices. Her favorite TV show is Game of Thrones and she volunteers at the local humane society the 3rd Saturday of every month. 

Allison didn't travel much until she graduated from the University of Michigan. Her parents weren't interested in leaving their hometown and traveling as a full-time student wasn't an option. The last trip Allison took was to a resort in Cancún. Although she enjoyed the warm weather, she wants her next trip to be a more authentic experience. 

The HR department at Allison's company recently sent out a memo: all unused vacation days must be used by August 31 or they will be forfeited. She has accumulated 10 days and now the clock is ticking to use them. Allison's good friend Sharon works in the customer service department of the same company and has 8 days of her own. 

It wasn't long before trip ideas started flying back and forth between the two...


Now we're getting to the fun part: dreaming up and implementing features. Except dreaming probably isn't the right approach.

Feature Ideas

The features we build should be informed by data and user feedback whenever possible. New features must either solve a real user problem or make the user's experience more enjoyable. 

Generating ideas for new features should be a deliberate process. Get the right people in the room, review the data and research, establish goals for the brainstorming session, and get to work. Here are a few ideas I came up with during my solo session.

1. Suggestions Based on Previous Trips

This is discovery and personalization 101. If you visited a beach town then chances are you will enjoy other beach towns. But suggestions can be far more interesting than just similar cities.

Let's say Allison has stayed in Ann Arbor, Michigan while visiting friends from the University of Michigan. One of Ann Arbor's sister cities is Belize City, Belize. We can suggest Belize City as a destination. The novelty of visiting a sister city gives Allison a fun and unique story to tell.

If Allison loved the culinary scene in Ann Arbor, we can suggest other cities known for their food.

2. Suggestions Based on Social Media Interests

Users voluntarily share their interests with Facebook, Twitter, Pinterest, and many other services daily. Analyzing the pages someone likes on Facebook, the accounts they follow on Twitter, and the boards they've created on Pinterest could yield incredibly valuable insights for travel recommendations. 

Allison likes Dwell Magazine on Facebook and follows them on Twitter. Among the keywords associated with Dwell are architecture and industrial design. We can match these keywords with experiences and suggest these experiences and listings in the appropriate cities. Allison will see, "Because you like Dwell, here are three architecture tours in Barcelona and 15 listings within a few kilometers." 

3. Mood Boards

Display a series of images and have the user express interest or disinterest in them. This could have a swiping mechanic like Tinder. Each image will have a set of attributes, such as sunny, urban, social, mountainous, snowy, calm, etc. Feedback from these images can be compiled to see which attributes received the most positive response from each user.

If Allison has always wanted to try skiing she may give disproportionately positive feedback to snowy, mountainous images. Of course, we then suggest cities near the mountains and skiing experiences.

This could be overtly labeled as a source for recommendations or it could be "hidden" in a new photo album feature. Either way, this offers users a fun and engaging way to spend time on Airbnb.

4. Airline Integration

Airfare and lodging are two of the biggest expenses when planning a trip. We can easily filter listings by price, but that's only part of the story for our users. If the listing is cheap but the airfare is too expensive, they won't book the trip. 

Airline integration will allow our users to specify a total trip budget (lodging + airfare). We can then suggest listings + airfare that fall within their budget. Allison really wants to visit Belize City but the flights are simply too expensive. Since we know her total trip budget we can suggest other cities in Central America with accompanying airfare that works for her.

The addition of airfare also introduces a sense of urgency to book the listing since ticket prices fluctuate constantly. This sense of urgency will have to be balanced to ensure users never feel like they booked too soon and regret it.

Next Steps

Determining which features to build is a delicate balance between quantitative data, qualitative data, experimentation, and overall impact on the business.


Before diving head first into development it's important to validate assumptions that were made during the idea generation process. These assumptions will inform the decision of what to build first.

Identify Assumptions

Here are some assumptions I've made with my feature ideas:

Suggestions Based on Previous Trips
Users will book destinations with similar attributes to previous trips. It is feasible to identify novel attributes about regions, cities, neighborhoods, and experiences.

Suggestions Based on Social Media Interests
Users are willing to link their social media accounts to their Airbnb account. Those social media services allow us to retrieve interests, followed accounts, etc. The process of linking accounts is low friction enough to not ruin the rest of the search experience. It is feasible to relate interest data from social media accounts with attributes about regions, cities, neighborhoods, experiences.

Mood Boards
Users are willing to leave the traditional Airbnb search experience to view mood boards. It is feasible to relate attributes of mood board items with regions, cities, neighborhoods, experiences. It is feasible to generate content for mood boards. 

Airline Integration
Airlines or third-party services allow API access to costs. It is feasible to proactively query these costs relative to Airbnb destinations. It is feasible to provide accurate, up-to-date cost data to users (so the price hasn't fluctuated substantially by the time they view the suggestion). Users will book destinations based on suggested airfare + listing combinations.

Prioritize Assumptions

What is our leap-of-faith assumption? What assumption could make or break the product? I think the biggest assumption regarding discovery is:

It is feasible to identify novel attributes about regions, cities, neighborhoods, and experiences.

If we can't identify and apply these novel attributes to our listings and experiences then our ability to provide personalized suggestions will be very shallow. Shallow is boring. We want to provide deep and meaningful connection to our suggestions so that users feel understood. 

Once this data is available, the sources for personalization are endless.


Remember those metrics we defined in part one? It's time to put them to use. Did search abandonment decrease? Were fewer trips cancelled? Were trips booked faster? Are these even still the metrics we care about?

Reviewing these metrics and analyzing the data must be an ongoing effort. This data has a major impact on which features stay, which features get cut, and where development efforts are focused on the next iteration.


Now let's do it all over again. Utilizing the data, user feedback, engineering discoveries, and new ideas we picked up along the way, we repeat the process. Either a new goal is developed or the existing goal is renewed.

Iteration is at the heart of good product management. The shorter the feedback loop the faster we learn what really matters to our users. And the sooner we know what really matters the sooner we can really solve their problems.


From the bottom of my heart, thank you for taking the time to read this. I know you have a million other ways you could be spending your time, and I'm grateful you chose to spend it here.

Now, let's chat...

[unex_ce_button id="content_a2skyznpg,column_content_6x8eg9ntv" button_text_color="#ffffff" button_font="semibold" button_font_size="15px" button_width="content_width" button_alignment="center" button_text_spacing="2px" button_bg_color="#fb414d" button_padding="15px 60px 15px 60px" button_border_width="0px" button_border_color="#fb414d" button_border_radius="0px" button_text_hover_color="#ffffff" button_text_spacing_hover="2px" button_bg_hover_color="#000000" button_border_hover_color="#000000" button_link="tel:2317661971" button_link_type="url" button_link_target="_blank" has_container="" in_column="1"]CALL ME[/ce_button]


[unex_ce_button id="content_a2skyznpg,column_content_dvwx2btcr" button_text_color="#fb414d" button_font="semibold" button_font_size="15px" button_width="content_width" button_alignment="center" button_text_spacing="2px" button_bg_color="" button_padding="15px 60px 15px 60px" button_border_width="1px" button_border_color="#fb414d" button_border_radius="0px" button_text_hover_color="#ffffff" button_text_spacing_hover="2px" button_bg_hover_color="#000000" button_border_hover_color="#000000" button_link="" button_link_type="url" button_link_target="_blank" has_container="" in_column="1"]EMAIL ME[/ce_button]