hardCase StudyDesignSeniorStaffLead
Prices must react to demand within seconds, and two users looking at the same item must not see different prices. Which do you give up?
Real-time pricing system design should publish numbered price versions instead of calculating a different answer per request. Compute prices by region and time window, serve the current version consistently, and freeze quotes briefly so users are not surprised during checkout.
6 min readUpdated 2026-08-15
Answer
Short answer
Compute prices in batches, publish each batch as a version, serve one current version per market, and honour short-lived quotes even while the next version rolls out.
Was this answer helpful?
Likely follow-ups
- A user holds a quote for ninety seconds while the price doubles. Do you honour it, and what stops that being exploited by a script?
- Two users are in different countries and the item is priced per region. How do you decide which region a viewer belongs to, and what happens when that answer changes mid-session?
- The pricing model needs a feature that takes two minutes to compute. Where does it go so it does not slow the serving path?
- How would you roll out a new pricing model to one per cent of regions without two nearby users seeing different prices for the same item?
Related questions
- Marketing want to raise the price of a plan a million subscribers are already on, and change what it includes. What has to happen in the catalogue?hardAlso on versioning5 min
- How would you build a rating engine, and how do you reproduce a quote you gave someone eighteen months ago?hardAlso on versioning5 min
- Design a chat service that streams model output to users and lets them press stop. What has to happen when they do?hardAlso on streaming6 min
- Rate-limit an LLM gateway where one request can cost a hundred times another.hardAlso on streaming5 min