Swiss Tournament System Guide

Swiss Tournament System Guide — Sydney Backgammon Club
1

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

FeatureDescription
Swiss PairingPlayers paired by ranking after each round, with rematch avoidance across all previous rounds
Up to 32 PlayersSupports between 2 and 32 players per tournament
Bye HandlingOdd player counts handled automatically — lowest-ranked player without a bye is assigned one each round
Championship RoundOptional Round 4 variant locks the top two players into a championship match
Live WebsiteStandings can be published to the SBC website in real time
PDF ExportFinal results saved as a PDF to Google Drive
Status BarBlue/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
ℹ️
Hidden ColumnsSeveral columns are hidden by default (A, C, E, H, J, M, O, R, T). These contain Fibonacci draw numbers and pair sums used by the pairing algorithm. Do not manually edit these columns.
2

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.

⚠️
This only happens once per account per sheetOnce authorised, you will not see this popup again for that sheet on that account. A new tournament sheet will require authorisation once.

What the Popup Looks Like

How to Authorise

1
Tick the Select all checkbox at the top to tick all three boxes
2
Scroll down and click Continue
3
Google may show a second confirmation screen — click Allow
4
You will be returned to the sheet and the function will run normally
🔒
Why does it need these permissions?The scripts need Drive access to create PDFs, read the Members spreadsheet, and create new tournament sheets from the template. These permissions are standard for Google Apps Script. The scripts only access SBC tournament files.

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.

1
Click Advanced (bottom left of the warning screen)
2
Click “Go to Swiss Tournament Scripts (unsafe)”
3
Continue with the normal authorisation steps above
ℹ️
Is it safe?Yes — this warning simply means the scripts have not been through Google’s formal app review process, not that they are harmful. The scripts were written specifically for SBC tournament management.
3

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.

TaskSteps
Add a memberOpen Members sheet → type name at the bottom of Column A → Save (Ctrl+S)
Remove a memberRight-click their row number → Delete row (do NOT just clear the cell — leaves a blank row)
Refresh dropdownsAfter any Members change, open the tournament sheet and run 🔄 Refresh Player Dropdowns

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)
4

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).

1
Open the SBC Swiss Tournament Template from Google Drive
2
Click 🏆 Swiss Tournament menu → 🆕 Create New Tournament
3
If prompted, complete the Google permissions authorisation (see Section 2)
4
Enter tournament details in the format: month, rounds, points — e.g. june, four, 7
5
Click OK and wait approximately 10 seconds
6
Open Google Drive — find the new sheet (e.g. June 26′ Tournament) in the same folder as the template
What gets created automaticallyThe new sheet will have the correct header title, player dropdowns loaded from the Members sheet, the status bar showing the first step, and all formatting ready to go.
5

Tournament Day Workflow

The status bar (blue/gold bar near the top of the sheet) always shows the next required step. If unsure, click ▶ What’s Next? at the top of the Swiss Tournament menu.

Step 1 — Enter Players and Draw Numbers

1
Run 👀 Unhide Columns to reveal Column B (draw numbers)
2
In Column D, use the dropdown in each row to select each player’s name
3
In Column B, enter each player’s draw number (assigned by drawing from a bag on the day)
4
If there is an odd number of players, enter Bye as the last player in Column D (no draw number needed)
5
Run 🙈 Hide Columns to restore the standard view
⚠️
Late arrivals and withdrawals — Late arrival before Round 1: add to Column D with a draw number. Late arrival after Round 1: cannot join. Player withdraws mid-tournament: leave their rows blank — do not delete the row.

Steps 2–6 — Round 1

2
Click 1️⃣ Round 1 — sorts players by draw number and pairs 1st vs 2nd, 3rd vs 4th, etc. A border line separates each pair.
3
Enter each player’s score in Column F. Do not enter scores in greyed-out cells (bye rows are handled automatically).
4
Click 📊 Calculate R1 +/- — calculates point differentials in Column G
5
Click 🏅 Calculate R1 Wins — records wins and differentials in Columns W/X/Y
6
Click 📊 Sort Players for R2 — sorts by wins then differential
Rounds 2, 3 and 4 follow the same patternRun Round → Enter Scores → Calculate +/- → Calculate Wins → Sort for Next Round.

Full Round Sequence — Rounds 2, 3 and 4

StepMenu ItemWhat It Does
12️⃣ Round 2Generates R2 pairings. Checks for rematches and auto-swaps if needed.
2Enter scores in Column K
3📊 Calculate R2 +/-Calculates differentials in Column L
4🏅 Calculate R2 WinsUpdates cumulative wins/differentials in W/X/Y
5📊 Sort Players for R3Sorts by wins then diff, updates ranking header
63️⃣ Round 3Generates R3 pairings, checks rounds 1–2 for rematches
7Enter scores in Column P
8📊 Calculate R3 +/-Calculates differentials in Column Q
9🏅 Calculate R3 WinsUpdates cumulative wins/differentials in W/X/Y
10📊 Sort Players for R4Sorts by wins then diff, updates ranking header
11🤖 Championship R4 (Auto) or 👑 Championship R4 (Manual)See Section 6 — Championship Round 4
12Enter scores in Column U
13📊 Calculate R4 +/-Calculates differentials in Column V
14🏅 Calculate R4 WinsUpdates cumulative wins/differentials in W/X/Y
15🏆 Sort WinnersFinal 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).

6

Championship Round 4

OptionMenu ItemWhen to Use
Championship Auto🤖 Championship R4 (Auto)Locks top 2 into a championship match. Automatically finds best rematch-free pairings for all others.
Championship Manual👑 Championship R4 (Manual)Locks top 2 into a championship match. Highlights rematches among others — use Manual Sort to fix.
Recommended: Championship R4 (Auto)For most tournaments this is the best choice. If you need to re-run Round 4, click 🗑️ Clear Round 4 first.
7

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.

⚠️
Use Manual Sort BEFORE running the RoundManual Sort changes Column W order which is read by the Round function. If you have already run the Round, use Clear Round 4 (for Round 4) or re-run the sort functions first.
1
Click ✏️ Manual Sort → select the appropriate round (R2, R3 or R4)
2
A dialog box appears with all players listed in current ranking order
3
Drag and drop player names to set your preferred order. Players are paired top-to-bottom: rows 1+2, 3+4, etc. Pair labels (1a/1b, 2a/2b) update as you drag.
4
Click OK to apply the new order, then run the appropriate Round function
8

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
9

Publishing Results

Sort Winners

Click 🏆 Sort Winners after Calculate R4 Wins. Produces final rankings sorted by wins then differential. Bye is automatically excluded.

Send to Website

1
Click 🌐 Send to Website
2
Standings sent to sydneybackgammonclub.org.au/live/ immediately
3
Can be sent after any round for live updates between rounds

Save as PDF

1
Click 📄 Save as PDF
2
PDF saved to the same Google Drive folder, named automatically e.g. June 26′ Tournament Results.pdf

Clear Website

To remove standings from the website between tournaments, click 🗑️ Clear Website.

10

Troubleshooting

ProblemSolution
Don’t know what to do nextClick ▶ What’s Next? or read the status bar at the top of the sheet
Player missing from dropdownCheck Members sheet for the name and any blank rows. Run 🔄 Refresh Player Dropdowns
Two players paired who already playedUse ✏️ Manual Sort to drag them into a valid order before re-running the Round
Ran the wrong functionFor Round 4: use 🗑️ Clear Round 4. For earlier rounds: File → Version history → See version history to restore
Sheet looks wrong after two devicesAvoid having the sheet open on more than one device simultaneously. Use version history to restore if needed.
Google permissions popup appeared againNormal for a new sheet or account. Follow the authorisation steps in Section 2.
Columns look wrongRun 🙈 Hide Columns to restore standard view, or 👀 Unhide Columns to show all columns
ProblemSolution
Score entered incorrectlySimply 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 DClick 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 workingCheck internet connection. Ensure Sort Winners or a sort function has been run so Column W has data. Try again.
PDF save failsEnsure you have sufficient Google Drive storage. Check the script has Drive permissions (re-authorise if needed).
ℹ️
ContactFor issues not covered here, contact the Tournament Director at td@sydneybackgammonclub.org.au