SYSTEM DESIGNDesign Airbnb (Hotel Booking)AirbnbBooking.comVrbo
TRAFFIC LEVEL
—/3
CONSTRAINTS
Active listings6M
Searches/day10M
Bookings/day1M
Avg stay duration4 nights
Double-booking toleranceZero
Compute & Network
Load BalancerDistribute traffic
API GatewayEntry point / auth
API ServerBusiness logic
Worker NodeAsync processing
CDN EdgeGlobal cache
WebSocket GatewayPersistent connections
Data Stores
PostgreSQLRelational DB
MySQLRelational DB
CassandraWide-Column DB
DynamoDBNoSQL / Managed
S3 BucketObject storage
Queues & Cache
Redis CacheIn-memory store
KafkaEvent stream
ZookeeperCoordination
Specialized
Bloom FilterProbabilistic set
Rate LimiterThrottling
Geohash ServiceGeospatial index
Trie ServerPrefix search
APNS / FCMPush notifications
AggregatorBatch / roll-up
Drag to canvas · Hover node for × to delete · Draw from handle to connect
Design your architecture
Drag components from the left panel · Connect them by drawing from a node handle · Hit Start Simulation to validate
🚨 INCIDENT
AirbnbBooking.comVrbo

Design the core booking flow for a vacation rental platform. Users search available listings by location and dates, view listings, and complete a booking. Prevent double-booking (two guests booking the same listing for overlapping dates). Handle 10M searches/day, 1M bookings/day, and 6M active listings.

📥 Assigned to:You — Mid Engineer
SCALE LEVELS
1
10,000 RPS
Target: <300ms
2
100,000 RPS
Target: <200ms
3
1,000,000 RPS
Target: <100ms
GLOBAL SUCCESS RATE
100.0%
P99 LATENCY
45ms
Target: < 200ms
TOTAL RPS INGESTED0 / 11,000
EngPrep — Real Engineering. Real Interviews.