Every registration gets the next number in line. VIPs get V-1, V-2, V-3. General gets G-1, G-2, G-3. Assignment runs inside a DB transaction with row-level locks so two people submitting at the same instant never share a seat.
Under load, the seat table becomes the bottleneck by design. That is exactly what prevents collisions.
A wedding reception in Delhi, 2024. The bride's family had reserved 40 seats in the front two rows for immediate relatives. We were using a rough seat counter that read the row count, incremented by 1, and wrote back. Worked fine for testing.
Actual event day: the bride's mother forwarded the RSVP link to the family WhatsApp group at 11.07am on a Sunday. Six aunties tapped the link within the same second. Three of them got seat number 12. When they showed up at the venue, one of them had to stand for the ceremony. We got yelled at in three languages.
Post-mortem was short. Increment-and-write is a textbook race condition. The fix is a database transaction with a row-level lock so concurrent registrations serialise. We wrapped seat assignment in `DB::transaction` with `lockForUpdate` on the same evening. Never happened again.
Small extra thing we added later: an audit log per seat, showing every attempted assignment and which one won. Makes debugging really easy when a client swears their VIP list is off by one.
Zero shared seats across 12,000+ registrations we've run on this system.
For a 500-seat ticketed event, one day, India 2026.
| Tool | Model / Cost | Notes | Verdict |
|---|---|---|---|
| BookMyShow venue tool | 10-12% ticket fee | Seat map picker. B2C-focused, hard to white-label. | Good for public shows |
| Cvent Session Seat Assignment | Enterprise add-on | Powerful. Sold in the base Cvent package (₹5L+ per year). | Overkill for most Indian MICE |
| Google Sheets + manual | Free + your Saturday | Works for 50 seats, breaks at 200. Duplicates guaranteed. | Zero until it isn't |
| SignupDesk seat allocator | Included | DB-level locking. Custom prefixes per event. Auto Sold Out. | Duplicate-proof by design |
Vendor prices vary by region and negotiated discount. Ours is included in the platform fee.