# Design Airbnb: system design interview question

> Geographic search with date filters, shared home calendars, and reservations that must not overlap.

Source: https://sysround.com/questions/design-airbnb
Updated: 2026-11-05


Difficulty: hard. Levels: Senior, Staff+.

## How the interviewer opens it

"Design a vacation rental marketplace. Hosts publish homes, and travelers search for a place and reserve a stay."

## What to clarify first

- Scale
- Read and write mix
- Search behavior
- Calendar rules
- Host changes
- Reservation flow
- Latency
- Consistency and availability
- Durability
- Scope limits

## Scope of a strong answer

Core requirements:

- Publish homes with nightly prices and calendar controls
- Search homes by location, dates, and guest count
- Reserve a stay without overlap
- Cancel a reservation and release its dates

Usually out of scope:

- Reviews and messages
- Third-party calendar imports
- Tax rules and complex refund policies
- Hotels with multiple rooms
- Personal search rank

## What interviewers probe

### Dates and calendar changes

Guests reserve date ranges, not single seats. Holds, host blocks, and cancellations change the same calendar while requests run concurrently.

### Geographic search and date results

A nearby home may lack one required night. Search must combine map bounds, date availability, and prices without checking every home.

### Reservation outcomes

Payment responses can arrive after a hold expires or a traveler cancels. The service must resolve money and calendar state without restoring lost dates.

## Common mistakes

- Treats each date check as independent and permits partial reservations.
- Trusts search availability as the final reservation authority.
- Ignores host blocks when it protects against reservation overlap.
- Allows a delayed expiry task or payment callback to alter another reservation.
- Returns a fixed set of nearby homes before date filters and misses valid results.
- Adds database shards before it estimates the modest rate of reservation writes.

## The bar by level

- **Senior:** Covers host edits, hold expiry, price changes, and idempotency. Resolves late payments and cancellation races. Explains search projections, date filters, and useful result pages.
- **Staff+:** Quantifies search work and data growth. Defines calendar ownership during failover. Explains projection repair, durable payment recovery, and safe partition boundaries without premature complexity.

Practice this question with an AI interviewer: https://sysround.com/practice/new?problem=vacation-rental-marketplace


---
SysRound (https://sysround.com) is an AI practice tool for system design interviews. It has a voice or typed AI interviewer and a shared whiteboard. At the end, you get feedback on each skill and a model answer. The AI feedback can be wrong.
