Everything difficult about a reception seating chart traces back to one property: the guest list is not final when you start, and it will not be final until roughly the week of. Any method that assumes a fixed list fails, which is why spreadsheets fall apart.
Table count is a decision, not an output. It depends on whether the venue supplies 8-seat or 10-seat rounds, and on leaving the last table short rather than full. Worked through for a hundred guests, rounds and rectangles both, at how many tables for 100 guests.
Head table, then the family groupings that genuinely cannot move, then the flexible remainder. Churn then lands only in the flexible group, where it costs nothing. Full sequence here.