AI Smart Pricing for Short-Term Rentals
Nightly Price Suggestions for Rental Hosts
Design the system that suggests a price for every open night on every rental listing, learns from which nights booked, and applies the suggestions inside limits the host sets.
Overview
A rental host has to set a price for every night on the calendar, often a year ahead. Too high and the night stays empty; too low and it books at once and the host earns less than they could have. A smart-pricing service suggests a price for each open night and, if the host opts in, applies it automatically inside a minimum and maximum the host chooses.
Airbnb described its own version in a KDD 2018 paper (Ye and colleagues). Hosts stay in control: Price Tips shows a calendar with the predicted chance of a booking for each night, and Smart Pricing lets a host set a price range so that new suggestions inside it are applied automatically. The paper splits the work into three parts: a model that predicts whether a night will book, a strategy model that turns that into a price, and a final layer of adjustments for hosting goals and special events. This design follows the same split.
Questions to ask first
- Who acts on the price? — The host, either by accepting a suggestion or by turning on automatic pricing with a min and max
- How far ahead? — Every open night in the next 365 days
- How fresh must prices be? — A full recompute nightly; nights in the next 30 days again every 4 hours
- What signals exist? — Listing details, the calendar, bookings, search and view counts, and a feed of local events
- What is the goal? — More host revenue over the year, not the fullest calendar
- Who owns the calendar? — The listing service; this system only proposes prices and asks it to write them
What you will be able to do
- Split pricing into a booking-probability model, a price strategy and a guardrail layer, and say what each one owns.
- Explain why maximizing price times booking probability is fragile, and what Airbnb reported when it tried it.
- Train a price model from booked and unbooked nights with an asymmetric loss, and measure it with price decrease recall and booking regret.
- Price a new listing by borrowing from its market, and fix gap nights that no minimum stay can fill.
- Push prices to the calendar so that a host's own edits always win.
Key concepts
- Booking probability
- Demand curve
- Expected revenue
- Asymmetric loss
- Price decrease recall
- Booking regret
- Shrinkage to market priors
- Lead time
- Gap nights
- Host guardrails
Functional requirements
- Suggest a nightly price for every open night in the next 365 days of each listing
- Show the host the predicted chance of a booking at the current price and at the suggested price
- When automatic pricing is on, apply suggestions only within the host's min and max, and never over a night the host priced by hand
- Refresh near-term nights when bookings, search activity or a new local event change demand
- Flag gap nights that the current minimum stay makes unbookable, and suggest a fix
- Record every suggestion with its model version, so outcomes can be joined back for training
Non-functional requirements
- Nightly run finishes within a 4-hour window (our target)
- Nights in the next 30 days refreshed at least every 4 hours (our target)
- Host dashboard reads under 300 ms at p99 (our target); suggestions are precomputed
- A failed run leaves yesterday's prices in place; nothing is written half-done
- Every automatic price change is auditable: who or what set it, when, and from which model
Interview questions
- Why not simply pick the price that maximizes price × booking probability?
- How do you train a pricing model when you never see the optimal price?
- How do you price a listing that has no history?
- How do local events get into the price?
- How do you make sure you never overwrite a price the host set?
- What happens if the nightly run fails halfway?
- How would you test a new pricing strategy?
Sign up free to read the full topic
More System Design topics
Start free on Cariara · Coding problems · System design studio