Choosing How Long an Airline Booking App Holds a Seat Before Payment
Company: Meta
Role: Product Manager
Category: Product / Decision Making
Difficulty: medium
Interview Round: Other
You are the product manager for the checkout flow of an app that sells airline tickets. Once a customer picks a seat, the checkout page usually gives them a few minutes to enter their details and pay. If they have not paid by then, the seat is released and other customers can book it. How would you decide how long a seat should stay locked for a customer before they pay?
```hint Count both kinds of mistake
A hold that is too short and a hold that is too long each cost someone something. Work out who bears each cost, and what records of past checkout sessions could tell you about where the balance lies.
```
### Clarifying Questions
- Does the lock reserve only the specific seat, or also the fare at the quoted price and the seat count in that fare class?
- Is this the airline's own app, or a travel agency app reselling many airlines' seats under hold limits those airlines set?
- Must every booking get the same timer, or may it differ by route, how full the flight is, the number of passengers or the payment method?
- Can a customer extend the timer, and what should happen if it expires while their payment is still being processed?
### What a Strong Answer Covers
- The goal of the timer and the cost on each side: customers timed out before they can pay, and seats held by customers who never pay that others could have bought.
- How data from past checkout sessions turns into a starting value.
- Whether the timer should be fixed or vary with demand, party size and payment method, with the trade-offs.
- An experiment to tune the value, with a primary metric, guardrails, and a design that accounts for holds affecting other customers on the same flight.
- Edge cases such as payments in progress at expiry, how the countdown is shown, accessibility, and bots that hold seats repeatedly.
### Follow-up Questions
- On a nearly sold-out flight, would you shorten the hold? How would you answer a customer whose seat was released while they were still typing?
- Bots keep holding seats without ever paying. How would you detect and limit this without hurting real customers?
- If the airline also let customers pay a fee to hold a fare for a day or more, how would that change your design of the free checkout hold?
Overview: A product decision question about how long an airline booking app should hold a chosen seat during checkout before releasing it to other buyers. It tests weighing timed-out customers against blocked inventory, using checkout session data, designing timer rules and running an experiment with guardrails.