Seating Chart Optimizer illustration

Seating Chart Optimizer

Distributes your guest list over a set of tables while honouring "must sit together" and "must sit apart" rules. A randomized local search tries thousands of swaps and reports exactly which rules it could and could not satisfy.

Pairs that must share a table, e.g. "Anna, Ben". Chain pairs to keep a whole group together.
Pairs that must not share a table.

Notes

  • Finding a perfect seating plan is NP-hard, so the tool uses randomized greedy placement plus local swap search rather than exhaustive enumeration. With few conflicting rules it almost always finds a violation-free plan; when rules genuinely conflict it reports the best plan found and lists every violated rule.
  • The search is deterministic: the same input always produces the same chart, so you can share the link or rerun it safely.