How the Royal Opera House Deals with Massive Traffic Spikes Every Performance Season

“Ensuring that our website, and in particular our ticketing application, will perform under load is core to our customer offering.”



The Royal Opera House needs to ensure smooth and efficient sales processes through massive traffic spikes, heavy loads in front and backend, and unique and complex user scenarios. The ROH presents new productions each season. During these four booking periods, ROH wants to put the next tranche of performances on sale approximately every three weeks. Tickets are available in a staggered fashion – patrons and senior members gain early access to the best seats and later on tickets go out on sale to the general public and to people who traveled to London to see performances.

Sales days begin at 9 AM, with a rapid traffic spike of around 3,000 concurrent users. During the process, customers enter the website and hit “refresh” multiple times, attempting to be the first to secure seats. Patrons who are familiar with the booking system quickly book multiple seats to various performances to reserve seats close to friends, and then cancel some of them at their leisure at checkout. In addition, people can also buy tickets via mobile phone and at the counter, and ROH needs to ensure they don’t sell the same ticket twice. This creates a load on the frontend and backend.

The sales process needs to be as smooth and as efficient as possible, for two reasons. First, to ensure patrons and the audience receive the best customer experience possible. Friends and members who are knowledgeable and passionate supporters of the opera house expect excellent customer service. They pay for their membership, and they inform ROH if the service falls below their standards. Delaying online sales must be avoided, as important customers might have taken time off, made specific plans or even delayed vacations, for the occasion. Good and reliable customer service ensures customer loyalty.

Second, distortions in online sales can cause huge financial loss. The website is responsible for £35-40m/year direct ticket sales, and also supports secondary sales. One million pounds of this goes through during the first few hou rs alone. Therefore, the scalability and performance of the site, especially on key dates, is vital for revenue and to ensure a superior customer experience. ROH needs to deal with concurrency issues on their website and mobile app and high loads on their frontend and backend database.

This is especially challenging considering the ticketing system was originally never architectured to scale, as it was conceived for box offices only.


BlazeMeter performance testing platform and New Relic APM accelerate DevOps adoption ROH chose BlazeMeter and APM tool New Relic for their performance testing and results analysis. To ensure the ROH infrastructure and system are working properly, their tests slowly scale up the number of users. They start with running tests for 200 virtual users, with a ramp-up of 5-10 minutes, and then holding the load. If the results are satisfactory, they scale up to 500, then 1,000, 3,0 00 and finally 5,000. After each step they stop and examine the results. If they are satisfied with system health they proceed. If not, they fix what needs fixing.

The highest real traffic spikes are for 3,000 users, but scaling up to 5,000 in tests ensures performance is always top-notch and that there is no risk of crashing due to heavy loads. This is important for a very high-demanding audience, and it also provides a safety net for unexpected traffic patterns.

The user scenarios simulate user patterns on their website: finding a performance, selecting seats in the seat area, putting seats in the basket and going to checkout. Tests are run 1-2 times a year as part of their ongoing load testing methodology, and each time their ticketing system infrastructure is upgraded. After each new version, ROH runs the tests to ensure the upgrades didn’t affect their ticket choosing and selling abilities.


ROH now uncovers bottlenecks in advance, has more confidence and reduced stress before peak sales days, is assured customer service targets are met and ensures smooth ticket purchasing.

Performance testing and testing analysis has ensured actionable insight into performance issues within their application stack, and helped to improve awareness of performance issues with their development teams. It also enables continuous monitoring of system abilities. This reduces stress before each sales day and after each upgrade. “Before that it was a leap in the dark,” says Joe McFadden, CTO of the Royal Opera House.

“BlazeMeter is a key tool within our development stack. Ensuring that our website, and in particular our ticketing application, will perform under load is core to our customer offering. Having BlazeMeter in place affords us the co nfidence we need around system upgrades and releases of new functionality,” concludes Latham.



Related Resources: