Data science to improve marketplace efficiency at Turo

Kelli-Jean Chun
Turo Engineering
Published in
5 min readAug 3, 2018
Photo by Brandon Nelson on Unsplash

Turo is a two-sided marketplace connecting people who own cars (hosts) with people who want to rent a car (guests). An efficient marketplace is characterized by quick matching between trusted hosts & guests. The data science team works on projects that impact all aspects of the marketplace. We build production models to improve the marketplace for both the guest and host, whether it is making it easier for guests to find the best car or recommending the fair market price hosts should use to rent out their cars. Below is a brief overview of some of the ongoing projects being worked on by the team:

  • Search ranking & listing quality: When you search for a vehicle on Turo, we want to surface the most relevant vehicles that are owned by hosts who will most likely provide a positive experience. Out of tens of thousands of vehicles, how do we find the best one for you? Data science develops the models that determine the order in which vehicles appear in search and quality benchmarks for a listing’s search relevance.
  • Vehicle recommendations: Similar car recommendations complement search by quickly surfacing cars using guests’ past behavior on our platform. The model generates the listings that appear in the home page and car page “You might also like” carousel.
  • Pricing: When you list your vehicle on Turo, it may be difficult for you to determine the optimal price at which to set your listing. How should you price your car to provide a fair price to the guest but also maximize your own profit? This is just one of the many pricing problems the data science team tackles.
  • Forecasting supply & demand: Forecasting the economic tension between supply & demand on our marketplace is key to unlocking fair market prices for both our hosts and guests.
  • Risk: To keep our community and our hosts’ vehicles safe, it’s essential that we screen all guests to filter out potentially risky drivers or bad players. However, we also want to continue to grow the business and broaden access to the marketplace. So how do we keep out the risky people while reducing friction for the good guys? Data science works on the models that identify risky users to prevent them from participating in our marketplace.
  • Experimentation: At Turo, there is a strong emphasis on ensuring that any product change or data science model is tested for impact and well understood before enshrinement. We use a Bayesian framework and an internal tool built by data scientists to do A/B testing and to easily share reproducible results of experiments.

As a data scientist at Turo, I am currently working on improving marketplace efficiency by developing better models for search ranking & exclusion and recommendations. So, let’s dive a bit deeper into one of these projects, recommendations.

Recommendations

The recommender model (RM) at Turo surfaces similar vehicles primarily by taking into account the guest’s past behavior as well as the past behavior of similar guests. That is, it is through collaborative filtering that the RM surfaces recommendations.

For example, suppose we want to find similar cars for a Toyota Tacoma priced at $68/day. A very simple way to do this would be to use the click feedback of guests. We can count the number of guests/sessions that clicked on both the Toyota Tacoma and a second vehicle, and define more similar cars as those that have more same-session clicks. If we collected the data as in the below matrix, then our top recommendation would be the Toyota Tundra priced at $58/day over the Prius priced at the same price as the Tacoma. By using user feedback to build recommendations, we don’t even need to know that the Tacoma and Tundra are both trucks.

Example of co-occurrence matrix of same-session clicks. For example, 200 sessions clicked on both the Tacoma and Tundra while only 10 clicked on the Tacoma and Prius.

A purely collaborative filter model will oversimplify the problem and provide sub-optimal recommendations because successful recommendations at Turo involve actions by both the guest and host. In addition, nearly all sessions on our marketplace will have only a single success, so collaborative filtering on successes would be impossible.

What is a success?

For Turo, a successful recommendation is more than just a click. A success must not only lead to a guest clicking on the recommendation, but also to the guest requesting to rent the clicked vehicle. The request is by default automatically accepted (unless the host disabled Instant Book and must actively accept the request). Then, after all those potential points of failure, the host must fulfill the trip. In addition, we could add a final, quality-assessing, action that both the host and guest must rate the trip as 5-stars.

Turo’s conversion funnel for a successful trip.

The hybrid approach: collaborative filtering + host quality model

In order to take into account the long funnel that is required for a successful recommendation, collaborative filtering is not enough. Host quality also needs to be factored into the final RM output. Features such as the feedback received by guests, the response rate, request rate, and the fulfillment rate are all taken into account and added as an additional filter.

Data science as a service

We have a model, but how do we get it into production so that live users can interact and benefit from our work? The RM code sits in a microservice created by platform engineering. Iterating on new models now only requires effort from data science, with minimal effort from engineers. A quick pull request will immediately make new models available for testing, and we can relatively easily A/B test iterations of the RM to see how it does live.

Challenges for the RM

Does the RM have incremental impact on our conversion funnel? That is, does including recommendations lead guests to see listings they otherwise would not have seen and successfully book the vehicle? We certainly see that people actively engage with and book cars through the similar cars carousel. However, we have also seen that it does not have incremental impact (yet). Improving recommendations so that they provide incremental conversion for the entire funnel is my current area of focus for the RM.

Building an efficient marketplace

The RM not only makes discovery of the right car quicker for guests, it also makes it much faster to match with a host who will fulfill a trip. By improving recommendations, we improve the discovery and matching flow. I don’t want to spend 30 minutes or even 10 minutes finding the right car to rent on Turo. As a data scientist, out of the tens of thousands of vehicles available to rent, I want to rent one that will give me a 5-star experience in under a minute. The RM will help get us there.

Thoughts? Questions? Please comment or reach out!

And, thanks for reading. If you enjoyed this post, feel free to hit the clap button 👏 so that it’s easier for others to discover it. If you didn’t like it, it’s unfortunate you can’t un-clap 😛.

Interested in solving these types of problems? Join us!

--

--