Contents
Version: May 2026 | Platform: Google Sheets / Apps Script
System Overview
The SBC Swiss Tournament System is a Google Sheets-based application that automates the pairing, scoring and ranking of Swiss-format backgammon tournaments. It is operated entirely through a custom menu and requires no programming knowledge.
How It Works
A master Template spreadsheet contains all formatting and scripts. Each month, a new tournament sheet is created from this template. The director enters player names, runs each round through the menu, enters scores, and the system handles all pairing, ranking and tiebreaker calculations automatically.
Swiss Format Explained
In a Swiss tournament, players are never eliminated — everyone plays every round. After each round, players are re-ranked by wins and paired with opponents of similar standing. The final winner has the most wins; point differential is the tiebreaker.
Key Features
| Feature | Description |
|---|---|
| Swiss Pairing | Players paired by ranking after each round, with rematch avoidance across all previous rounds |
| Up to 32 Players | Supports between 2 and 32 players per tournament |
| Bye Handling | Odd player counts handled automatically — lowest-ranked player without a bye is assigned one each round |
| Championship Round | Optional Round 4 variant locks the top two players into a championship match |
| Live Website | Standings can be published to the SBC website in real time |
| PDF Export | Final results saved as a PDF to Google Drive |
| Status Bar | Blue/gold bar on the sheet always shows the next required step |
The Sheet Layout
- Round 1 — Draw/Rank, Players D, Scores F, +/- G
- Round 2 — R2 Ranking I, Scores K, +/- L
- Round 3 — R3 Ranking N, Scores P, +/- Q
- Round 4 — R4 Ranking S, Scores U, +/- V
- Winners — Final Ranking W, Wins X, T/Diff Y
First-Time Permissions Setup
The first time any user runs a script function from a tournament sheet on their Google account, Google displays a permissions authorisation screen. This is a standard security feature and is completely normal.
What the Popup Looks Like
You will see a screen titled “Swiss Tournament Scripts wants access to your Google Account” with three checkboxes:
- See, edit, create and delete all of your Google Drive files
- See, edit, create and delete all your Google Sheets spreadsheets
- Connect to an external service
How to Authorise
What if Google Shows an “Unverified App” Warning?
On some accounts, Google may show an additional screen saying “Google hasn’t verified this app” before the permissions screen. This is normal for club-developed scripts that have not been submitted to Google for formal review.
Managing the Members Sheet
The Members sheet is a separate Google Spreadsheet containing all current financial members — the source for player dropdowns in every tournament sheet. Player names are in Column A from row 2. No blank rows between names — a blank row stops the list being read, causing members to be missing from dropdowns.
| Task | Steps |
|---|---|
| Add a member | Open Members sheet → type name at the bottom of Column A → Save (Ctrl+S) |
| Remove a member | Right-click their row number → Delete row (do NOT just clear the cell — leaves a blank row) |
| Refresh dropdowns | After any Members change, open the tournament sheet and run |
Day Before Tournament Checklist
| ✓ | Members sheet up to date — new members added, lapsed members removed |
| ✓ | New tournament sheet created from template (Section 4) and header is correct |
| ✓ | Player dropdowns working — click Column D and confirm dropdown appears |
| ✓ | Google permissions authorised on the device being used (Section 2) |
| ✓ | Draw tokens prepared (numbered pieces for the bag draw) |
Creating a New Tournament
All tournaments are created from the master Template. Never run a tournament directly in the template — always create a new sheet first. You will need: the month (e.g. june), number of rounds in words (e.g. four), and points per game (e.g. 7).
month, rounds, points — e.g. june, four, 7Tournament Day Workflow
The status bar (blue/gold bar near the top of the sheet) always shows the next required step. If unsure, click at the top of the Swiss Tournament menu.
Step 1 — Enter Players and Draw Numbers
Steps 2–6 — Round 1
Full Round Sequence — Rounds 2, 3 and 4
| Step | Menu Item | What It Does |
|---|---|---|
| 1 | Generates R2 pairings. Checks for rematches and auto-swaps if needed. | |
| 2 | — | Enter scores in Column K |
| 3 | Calculates differentials in Column L | |
| 4 | Updates cumulative wins/differentials in W/X/Y | |
| 5 | Sorts by wins then diff, updates ranking header | |
| 6 | Generates R3 pairings, checks rounds 1–2 for rematches | |
| 7 | — | Enter scores in Column P |
| 8 | Calculates differentials in Column Q | |
| 9 | Updates cumulative wins/differentials in W/X/Y | |
| 10 | Sorts by wins then diff, updates ranking header | |
| 11 | or | See Section 6 — Championship Round 4 |
| 12 | — | Enter scores in Column U |
| 13 | Calculates differentials in Column V | |
| 14 | Updates cumulative wins/differentials in W/X/Y | |
| 15 | Final sort — removes Bye, updates header to Winners |
Rematch Detection
When Round 2, 3 or 4 is run, the system automatically checks for rematches and attempts to auto-swap. Swapped players are highlighted: Yellow (R2), Blue (R3), Red (R4).
Championship Round 4
| Option | Menu Item | When to Use |
|---|---|---|
| Championship Auto | Locks top 2 into a championship match. Automatically finds best rematch-free pairings for all others. | |
| Championship Manual | Locks top 2 into a championship match. Highlights rematches among others — use Manual Sort to fix. |
Manual Sort — Overriding Pairings
If the automatically generated pairings are not suitable, Manual Sort allows the director to override the ranking order before running a Round.
Understanding the Bye
When there is an odd number of players, enter “Bye” as the last player in Column D. The system handles everything automatically.
- The lowest-ranked player who has not yet had a bye is assigned one each round
- The bye recipient automatically receives the target score (e.g. 7) — no manual entry needed
- The bye recipient automatically receives 1 win and 0 point differential
- The bye recipient’s +/- cell and the Bye row’s score and +/- cells are greyed out and protected
- No player receives the bye more than once across the tournament
- Bye does not appear in the final Winners rankings
Publishing Results
Sort Winners
Click after Calculate R4 Wins. Produces final rankings sorted by wins then differential. Bye is automatically excluded.
Send to Website
Save as PDF
Clear Website
To remove standings from the website between tournaments, click .
Troubleshooting
| Problem | Solution |
|---|---|
| Don’t know what to do next | Click or read the status bar at the top of the sheet |
| Player missing from dropdown | Check Members sheet for the name and any blank rows. Run |
| Two players paired who already played | Use to drag them into a valid order before re-running the Round |
| Ran the wrong function | For Round 4: use . For earlier rounds: File → Version history → See version history to restore |
| Sheet looks wrong after two devices | Avoid having the sheet open on more than one device simultaneously. Use version history to restore if needed. |
| Google permissions popup appeared again | Normal for a new sheet or account. Follow the authorisation steps in Section 2. |
| Columns look wrong | Run to restore standard view, or to show all columns |
| Problem | Solution |
|---|---|
| Score entered incorrectly | Simply retype the correct score in the cell, then re-run the Calculate +/- and Calculate Wins functions for that round |
| Player name has a typo in Column D | Click the cell and select the correct name from the dropdown. Re-run the Round function to regenerate pairings if Round has already been run. |
| Send to Website not working | Check internet connection. Ensure Sort Winners or a sort function has been run so Column W has data. Try again. |
| PDF save fails | Ensure you have sufficient Google Drive storage. Check the script has Drive permissions (re-authorise if needed). |
