Case Studies

Seats.io

Simultaneous realtime seat updates for live events ticket buyers

Case Study

About Seats.io

What is a Seats.io? - Find out more about this seating solution.

Seats.io is a seating chart maker that allows ticket sellers to simply draw and edit interactive floor plans, that can be integrated into booking and ticketing software. Favoured as the best reserved seating solution by numerous events managers and ticketing SaaS companies, it provides endless possibilities for drawing interactive floor maps.

Built as an event management software (EMS), it helps save expensive development hours and wows the end users with seamless ticket purchasing experience across all devices.

Seats.io Use Case

Realtime seat updates deliver superior ticket buyers experience

Seats.io makes it easy to keep track of which seats are booked or available by allowing ticket organizers to create events for each floor plan. Using realtime updates, the floor plan views stay in sync by making seats unavailable for selection almost simultaneously as soon as they get booked.

This allows the ticket organizers to avoid double bookings by sending seat availability changes to seats.io using an API call, which is then pushed out using realtime updates to all the ticket buyers that have the floor plan open on every device.

The platform allows for a flexible and easy controllable floor plans that can be easily controlled using a REST API. The ticket organizers are able to decide when to switch seats on and off, while ensuring for realtime availability changes for everyone looking at the floor plan.

Key Technologies used

  • Pub/Sub messaging

  • Connection state recovery

  • Guaranteed delivery & ordering

  • Consistent client library SDKs on every platform

Seats.io challenges

Initially, the engineering team at Seats.io started out by building an in-house solution and quickly faced the pain of maintaining a data streaming infrastructure. Every floor plan chart was polling their servers every second to request seats that were just booked. This led to an enormous load on their systems and also came with delays in updating the available seats for each floor plan.

Following a second attempt of opening a WebSocket connection between the browser and their servers, the team quickly realized that it’s very hard to make WebSockets work through a load balancer.

The Ably Solution

Scalable realtime updates combined with reliability and speed

After experiencing issues to maintain an in-house realtime solution, the engineering team decided to look for an external realtime infrastructure that can help deliver scalable live seat updates for both ticket buyers and organizers, while ensuring speed and reliable data delivery.

One of the main criteria was the ability to manage spikes in traffic by choosing a realtime infrastructure that can handle large loads of live updates for large events.

Using Ably’s client libraries available cross-platforms and the pay as you go model, the team is now able to have flexibility in terms of realtime usage while implementing a Pub/Sub messaging solution that can easily scale as the company grows.

As many visitors buy tickets through mobile devices the connections can get lost due to changing network conditions. One of the unique features of Ably is the connection state recovery that provides message continuity for the ticket buyers when their devices become disconnected up to 2 minutes.

Milestones at-a-glance


97,605
Events
10,734,222
Booked seats
58,908
Floor plans
At Seats.io we don't have to worry about spikes in traffic anymore. Ably handles large loads without any troubles. But what keeps amazing us is the reliability and speed of the platform with almost no downtime, and the clear communication in case of issues.

Matti Roloux

CTO / Seats.io

Seats.io relies on Ably for

  • Using channels devices can broadcast out realtime updates to any number of subscribers.

    See how
    See how
  • Simplify development with our API consistent libraries on every popular platform.

    See how
    See how
  • Alert users with a native OS notification even when they are not using your app.

    See how
    See how
  • When devices lose their connection, they don't need to lose message continuity and data integrity.

    See how
    See how
  • Channel access control is managed by tokens you issue, so your chats are private and secure.

    See how
    See how
  • Be notified when users and devices go online or offline.

    See how
    See how
  • Uniquely we guarantee all recipients receive messages 100% of the time. Build chat you can rely on.

    See how
    See how
  • We ensure data transferred between devices is always routed using the most efficient path, which means it's fast.

    See how
    See how