Grégoire Maillard

What happens to seat control when passengers can always pick the cheapest fare on the screen.

Buy-down and the spiral-down effect

When fare classes are fenced by rules, each class has its own passengers. Take the rules away and many passengers simply buy the cheapest fare still open. A seat-control system that forecasts each class from its own past bookings then sees high-fare demand vanish, protects fewer seats, sells more cheap fares, and sees even less high-fare demand the next season. This page runs one flight through twelve seasons with standard EMSR-b and with the fix airlines use: Q-forecasting with fare adjustment. It's the hands-on companion to Revenue Management 101, chapter 05; the seat-protection maths is on the booking limits page.

All fares, demand figures and customer behaviour on this page are illustrative assumptions, not any airline's data.

Revenue per season

What the system believes, season by season

Class forecasts

Protection levels

Seats kept for each group of higher classes at the start of the booking window

Adjusted fares against the original fares

Fare adjustment feeds EMSR-b a lower fare for every class that price-oriented customers could buy down to. Each adjusted fare is the class's fare minus the revenue lost from customers who would have paid more if that class were closed: its marginal revenue. A class whose adjusted fare is zero or below is never worth opening, so it stays closed.

Why this matters for today's branded fares

The classic fare ladder was held together by fences: a Saturday-night stay, a 14-day advance purchase, no refunds. A traveller who had to come home on a Thursday couldn't use the cheap fare even when it was open, so each class really had its own customers, and forecasting each class from its own bookings worked (RM 101, chapter 01). That is the left end of the slider.

Low-cost carriers sold simple one-way fares without those rules, and network airlines followed. Most now sell economy as a few branded fares, something like Basic, Standard and Flex, shown side by side on one screen. The brands differ in what you get: a checked bag, a seat choice, changes, refunds. Inside each brand, though, there are several booking classes that are exactly the same product at different prices. Nothing stops anyone from taking the cheapest of those that is open, so within a brand demand is fully price-oriented: the right end of the slider.

Across brands, behaviour is mixed. The traveller who needs a refundable ticket buys Flex whatever Basic costs; plenty of others trade down as soon as the gap looks too big. That is the middle of the slider, and it's why the fix uses a hybrid forecast: bookings that could only come from a customer who wanted that product are forecast class by class, and bookings that went to the cheapest open fare are forecast as demand that could sell up.

Without this, a class-based system learns from its own cheap sales. Nothing looks wrong on any given day, because every season's controls are consistent with every season's data; yield just drifts down. With it, the system knows how many customers would pay more if the cheaper price point were closed, and opens that price point only when the extra passengers are worth more than what the others would have paid. That is why revenue management systems built for unfenced fares model sell-up in some form, whether as fare adjustment on a class ladder or as a willingness-to-pay model in a pricing engine (RM 101, chapter 05).

How it works

Customers

Each departure gets N customers, drawn from a normal distribution with mean demand × seats and a 20% coefficient of variation. Each customer arrives at a random time in the booking window, which is split into four booking periods covering 30%, 25%, 25% and 20% of it. Every customer is willing to pay at least the lowest fare fV, and in period k the share willing to pay at least f is

Pk(f) = exp(−βk (f / fV − 1)), with βk = ln 2 / (FRAT5k − 1),

so that half of them would pay FRAT5k times the lowest fare. FRAT5k = 1 + (FRAT5 − 1) · mk with m = 0.6, 0.85, 1.15, 1.6: early bookers are more price-sensitive than late ones. A customer's own class is the most expensive fare at or below their willingness to pay. A share α of customers (the slider) are price-oriented and buy the cheapest open class if they can afford it; the others are product-oriented and buy their own class if it's open. With α = 0 this is the classic independent-demand world EMSR-b was built for.

Standard EMSR-b

At the start of each booking period, EMSR-b (Belobaba, 1992) turns the forecast of remaining demand per class into nested protection levels on the seats left, exactly as on the booking limits page. The forecast for next season is the mean and standard deviation of last season's bookings in each class and period. When a class closed partway through a period, the missing time is filled in at the booking rate observed while it was open, so the spiral isn't caused by closed classes being under-counted. Season 1 uses the true demand by class, what a history of fenced fares would have shown, and both methods start from it.

Q-forecasting and fare adjustment

Hybrid forecast. A booking in a class above the cheapest one open can only come from a product-oriented customer, so it's forecast by class as before (Boyd and Kallesen, 2004). A booking in the cheapest open class j in period k is turned into Q-equivalent demand, the number of customers who would have bought the lowest fare: it counts as 1 / Pk(fj) (Belobaba and Hopperstad, 2004). Some of those bookings are product-oriented customers whose class happened to be the cheapest one open; the page splits them using the known mix, with price-oriented share αPj / (αPj + (1 − α)(Pj − Pj−1)). The same unconstraining applies.

Fare adjustment. If class j is the cheapest open class in period k, the forecast sells Qj = Qeq · Pk(fj) + Σi≤j di seats and earns Rj = fj · Qeq · Pk(fj) + Σi≤j fidi, where di is product-oriented demand. The adjusted fare is the marginal revenue of opening one class further down, (Rj − Rj−1) / (Qj − Qj−1), taken along the upper concave hull of the points (Qj, Rj), and the adjusted demand is Qj − Qj−1. Classes off the hull or with an adjusted fare of zero or below stay closed. Fiig, Isler, Hopperstad and Belobaba (2010) show that this marginal revenue transformation turns a market where customers choose between fares into an equivalent independent-demand problem, so EMSR-b can run on it unchanged. Here it does: the composite of the higher classes uses their adjusted fares averaged over the periods still to come, and it is set against the next class's adjusted fare in the current period.

The simulation

Each season has 200 departures. Both methods and every season see the same customers, generated from a fixed random seed, so any difference between the two lines comes from the controls and not from luck. Revenue is the average per departure.

Sources

Limitations

More on buy-down and class-free forecasting in Revenue Management 101, chapter 05. This is a personal project and isn't affiliated with any airline.