Seating chart generator
Random rows and columns from your name list — free, no sign-up
Build a seating chart when you need names in a grid of rows and columns, not named teams and not a wedding table of N. Paste Names, set rows and cols, add keep-apart pairs if needed, then Generate and Print. Shuffles use crypto.getRandomValues. The roster sits in localStorage. This is not wedding seating with plus-ones as a first-class rule.
Why a grid is not a team generator
A seating chart places people in rows and cols so the room matches the furniture. Teams put people in labeled groups that may sit anywhere. Wedding seating is tables of N with plus-ones. This page exists so a teacher can paste Names, set the grid, keep two students apart, and print. We do not optimize sightlines or fire codes. Ads stay off. If you need groups that travel to lab stations, use the team generator. If you need a ceremony table plan, use wedding seating. If you need one name on the projector, use the picker.
How to use the seating chart
Shuffle names into rows and columns. Optional keep-apart.
Results use your browser's cryptographically secure random number generator. Lists and form data stay in localStorage on your device.
How the grid is filled
Names are shuffled with crypto.getRandomValues and poured into the rows × cols cells. Keep-apart tries to separate listed pairs after placement. That is a fair shuffle plus a constraint pass, not true random, not a seating AI, and not a server optimizer. Empty seats may remain if the grid is larger than the list. We do not store charts on a TheOwlBay account. localStorage holds names, rows, cols, and keep-apart lines on this device. Impossible constraints warn instead of lying. Ads stay off. Weighted raffles do not belong here.
Who this seating tool is for
Classroom teachers, exam invigilators, and workshop hosts with a fixed desk grid will use rows and cols more than a team-color list. Keep-apart helps when two people should not share a desk. It is not a wedding plus-one planner, not a bus manifest, and not a raffle. Print the chart for the door. TheOwlBay does not require an account. If you need groups without assigning chairs, use teams. If you need a speaking order, shuffle. Ads stay off. Print a spare copy for substitutes. Keep the grid honest: it places people, it does not grade them or assign extra homework.
FAQ
What do rows and cols mean?
Rows is how many desk rows. Cols is seats per row. Generate fills that grid from Names, then Print.
Will keep-apart always work?
No. It is best-effort. If a pair still sits together, change rows or cols or drop a pair and Generate again.
What if I have more names than seats?
Increase rows or cols, or remove names. The page will not stack two people in one cell.
Seating versus wedding seating?
This is a rectangular classroom grid. Wedding seating is tables of N with plus-ones on another URL.
Where is the roster stored?
In localStorage. The shuffle uses crypto.getRandomValues. No TheOwlBay account.