Seating Chart Generator
Paste a list of names, choose rows and seats, and get a random seating chart you can reshuffle, swap, lock and print.
Paste your list and generate a chart
Every name gets a seat. If there are more people than chairs, the ones who did not fit are listed underneath rather than quietly dropped.
The chart is built in your browser. No names are uploaded or saved.
Try another tool
Picked to go with this onePaste a list of names, say how many rows and how many seats in each, and get a seating chart. Reshuffle it as many times as you like, swap two people by clicking their seats, and lock anyone who needs to stay where they are before you shuffle again. Everyone on your list is accounted for: if there are more people than chairs, the ones who did not fit are listed underneath rather than quietly dropped, and two people with the same name each get their own seat. Print it or save it as a PDF when it looks right.
How to use this tool
- 01Paste your listOne name per line. Blank lines are ignored and counted, so you can see that nothing went missing from a copy-paste.
- 02Set the roomChoose how many rows and how many seats per row, and pick a layout: rows facing the front, a plain grid, pairs, or group tables.
- 03Generate and adjustGenerate the chart, then click a seat and click another to swap the two. Use the lock on a seat to pin that person in place.
- 04Reshuffle or printReshuffle everyone, or reshuffle while keeping the locked seats fixed. Add a class name and date, then print or save as a PDF.
When is this useful?
- A new seating plan for the termShuffle the class into fresh seats, then pin the few students who need to be at the front or beside a particular person.
- Separating a talkative pairGenerate a chart, spot the two who should not sit together, and swap one of them with someone across the room in two clicks.
- A workshop or training sessionGroup tables of four for an activity, print the chart, and put it on the door so people find their place without being told.
- Exam or test seatingA random arrangement in plain rows facing the front, printed and dated, so the layout is on record.
Examples
- 24 students, 6 rows of 4Every seat filled, nobody left over, and a front-of-room marker on the printed sheet.
- 18 people in a room set for 20Eighteen names are seated and the two spare chairs show as empty rather than being hidden.
- 30 names, 28 seatsTwenty-eight are seated and the remaining two are listed as not seated, with a prompt to add a row.
Tips for a better result
- Lock first, then reshuffleSet the seats that must not move, then use "reshuffle, keep locked seats". Everyone else is dealt around the people you pinned.
- Two students with the same first name is fineDuplicates are kept, not merged. Both Daniels get a chair. Add a surname initial if you need to tell the printed chart apart.
- Pairs and group tables are the same chartThe layouts change how the seats are grouped on the page, not who sits where. Switching layout and regenerating gives you a genuinely different arrangement; switching layout alone just redraws it.
- Add the date before printingA dated chart is much easier to file, and tells you at a glance whether the copy on the wall is the current one.
What happens when the numbers do not match
Two situations come up constantly and both are handled explicitly. With more seats than people, the spare seats are drawn as empty, so the chart still matches the room. With more people than seats, as many as will fit are seated and the rest appear in a clearly marked "not seated" list with a note to add a row. What never happens is a name disappearing: every name you paste is either in a seat or in that list.
How the shuffle works
Seats are dealt with a Fisher-Yates shuffle, which gives every arrangement the same chance rather than nudging names toward where they started. Locked seats are honoured first and their occupants are taken out of the pool, so a pinned person cannot also be dealt somewhere else. With duplicate names, exactly one instance is removed for a lock, which is why locking one Daniel does not make the other vanish.
Frequently asked questions
What if I have more students than seats?
The chart seats as many as fit and lists everyone who did not, under a "not seated" heading with the count. Names are never silently dropped. Add a row or increase the seats per row and generate again to fit everyone.
Can I keep a student in a particular seat?
Yes. Click the lock on that seat, then use "reshuffle, keep locked seats". The locked people stay exactly where they are and everyone else is dealt around them. Lock as many seats as you need.
Can I swap two students without reshuffling everything?
Click one seat to select it, then click the seat you want to swap with. The two exchange places and nothing else moves. You can also swap someone into an empty seat.
Does it handle two students with the same name?
Yes. Duplicate names are kept rather than merged, and each gets its own seat. The tool tells you which names appear more than once so you can add an initial if the printed chart would be ambiguous.
What layouts are available?
Rows facing the front, a plain grid, pairs, and group tables. They change how seats are grouped and labelled on the page — rows become tables for group work — while the assignment itself is the same.
Can I save it as a PDF?
Use print and choose "Save as PDF" in the print dialog. The printed page shows just the chart, the class name and the date, without the surrounding page.
Are the names uploaded anywhere?
No. The chart is built entirely in your browser. Student names never leave your device and nothing is stored after you close the page.

