Should the spot be held:
A. from the moment the user starts the booking process, or
B. only when the user adds the ticket to the shopping cart?

The booking process:

  1. User selects number of tickets to book
  2. (optional) User selects membership to add
  3. User fills up a form for each ticket booked
  4. Tickets are added to the shopping cart
  5. User can continue to shop for tickets for other events

At the moment, the argument for B is that no spots should be held for the user until they confirm that they are definitely going to buy the tickets. The argument for A is that it would be incredibly frustrating for the user to go through the process of selecting tickets and adding memberships and filling up forms only to find out at the last moment that there aren't enough tickets.

Is there any research in favour of either? Or is there somewhere else in the process that would be a better place to start the timer?

  • Ticketmaster (for all we hate about it) seems to have a good model where they hold the tickets from the beginning for a limited period of time.
    – DA01
    Jan 8, 2015 at 1:32
  • Definitively A (with a timeout). B is super frustrating! Jan 8, 2015 at 4:37
  • I agree with @RomanReiner - but don't forget to display a timer showing how long the tickets will be kept. I think I have seen this on eventim.de. Jan 8, 2015 at 10:09

3 Answers 3


Of course it has to be A.

From the user's perspective, it should feel like there is no one else on the system. Unless you tell them, they don't know whether there's one ticket left or 1000 tickets left. And they certainly don't know how many others they are competing against.

If you don't reserve the ticket from the beginning, then effectively every user in the booking process is in a race condition to get their selection into the basket or enter payment as fast as they can. This also leads to more mistakes as users feel pressured or rushed to enter details. Obviously that's not a great experience for anyone. If people know how long they have, the pressure is off.

In order to make a user feel like they're out for a stroll rather than in a mass race, you have to at least let them know there is a finish line and it'll still be there when they arrive - so reserve them their place from the start line.

Taking the analogy further... like a running event, you have to let entrants know that if they are way too slow, there will be a recovery vehicle to collect them before it gets dark. So you look after them rather than just taking the finishing line down and letting them finish to - nothing.

To make that happen, a good option is that if users are getting close to their 20 minute timeout, you prompt them to let them know, and ask them if they would like to extend their time by 10 minutes.

This gives slower (or distracted) people a helping hand, ensures that people who are really interested still get a chance, but will still filter out people who weren't really interested or who have moved on. In this scenario there should be a maximum total time like 40 minutes so that the system is not abused.

  • The other drawback of this mass race is when under demand you are not limiting the number of people trying to sign up which may block anyone from being able to buy.
    – JamesRyan
    Jan 8, 2015 at 16:22

I have actually implemented a self-service ticket booking website recently, and have studied what a lot of similar websites are doing. The best approach I found is definitely A, but not without a timer that is visible throughout the checkout process, so the user is both assured that his tickets are reserved, but also informed that this reservation is only valid for a limited time, after which you release the tickets for other users.

So, right after the user selects the number of tickets to book, show the user a timer with a message, something along the lines of "Please complete your order within 20:00 minutes to guarantee your reservation".

  • Do all websites start the timer right after selecting the number of tickets? Did you come across any websites that started at a different point in your research? I'm not really sure how to go about finding more sites or research papers on this, sadly...
    – rach oune
    Jan 8, 2015 at 19:00
  • Unfortunately I don't have any serious research either, just my observations. Some websites don't display any indicator at all, so I have no idea what they're doing in the back-end. Jan 9, 2015 at 5:36

This is a good reference that could be useful to your case. Users' expectation is managed quite well in this example.

This is how this particular cinema's online ticket purchase flow works. Once user selects the desired seats and proceeds to the next page which is a payment page, it will lock those seats for the next 10 minutes.

enter image description here

If the user didn't complete the purchase in the given 10 minutes, these seats are automatically released back to the inventory and will become available for purchase by others once again.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.