CurlingSchedules.com
CurlingSchedules.com is a free, standalone draw schedule builder. Use it to create a round robin, repeat the full round robin for a longer season, or add a few extra games when you do not have enough weeks for another complete round.
Use a larger screen when you can. CurlingSchedules.com works on a phone, but a computer or at least a tablet gives you the space to see larger schedules and drag games between draws. Editing a full schedule on a phone can feel a lot like editing a spreadsheet on one.
Your saved schedules and defaults are stored only in this browser. They are not saved to your Curling IO account or club database. Clearing the site's browser data will delete them.
Download a share code if you need a restorable backup or want to move a schedule to another browser. A CSV is useful as a reference, but it cannot be imported back into the schedule builder.
Create a Schedule
The builder opens with 8 teams, 4 sheets, and 1 iteration. The dropdowns above the schedule control those values:
- Teams: Choose 2 to 48 teams.
- Sheets: Choose 1 to 16 sheets.
- Iterations: Choose how many complete round robins to schedule. In one iteration, every team plays every other team once. A second iteration schedules those matchups again.
When an odd number of teams is selected, the schedule includes a BYE column. Each team's bye appears beside the row where that team sits out.
Changing teams, sheets, iterations, or the row-packing setting rebuilds the generated schedule. If you have moved games manually, the builder asks before replacing those changes.
Edit the Schedule
Each row is a draw and each lettered column is a sheet. Games can be moved without opening an editor:
- Drag a game to an open cell to move it.
- Drag a game onto another game to swap their positions.
- Drag a game into the Game queue to leave it unassigned.
- Drag a queued game back into an open cell or onto another game.
The target cell changes appearance while you drag. A conflict warning appears if a move would schedule the same team twice in one draw.
Click the control beside a sheet letter to take that sheet out of use or include it again. An excluded sheet remains visible, but its cells cannot accept games and are ignored when the schedule is regenerated or optimized.
Add Extra Games
Use Ad hoc games when you have room for extra matches, but not another full round robin.
- Choose the two teams.
- Select Add game.
- Drag the new game from the queue into the schedule.
Ad hoc games can repeat an existing matchup. A badge such as 2nd or 3rd shows which meeting it is between those teams. Select the × on an ad hoc game to remove it.
Ad hoc games are included when the builder checks conflicts and sheet fairness. Because they make the schedule intentionally unbalanced, regenerating a schedule that contains them may produce a different layout than the standard round-robin starting layout.
Check Sheet Fairness
The stats above the grid update whenever you move, add, remove, regenerate, optimize, or shuffle games:
- Max repeats on one sheet: The largest number of visits after the first that any one team makes to the same sheet. If a team plays on sheet A four times, that contributes 3 repeats.
- Total repeats: Every sheet visit after a team's first visit to that sheet, added together for all teams.
- Back-to-back repeats: The number of times a team plays in consecutive draws on the same sheet.
- Queued: The number of games that are not assigned to a draw and sheet.
Select any non-zero repeat stat to inspect it. Repeat games are outlined. The team involved in each repeat is coloured and underlined in both its original position and the repeated game, which lets you trace the repeat without outlining the original game as another occurrence. Select the active stat again, or press Escape, to clear the inspection.
A zero-valued stat is not selectable because it has no matching games to show.
Builder Actions
The buttons below the team, sheet, and iteration dropdowns change the current working schedule:
- Regenerate: Rebuild the round-robin games from the current teams, sheets, iterations, settings, and ad hoc games.
- Optimize: Rearrange games to reduce repeated sheet assignments.
- Shuffle teams: Change which teams occupy the generated matchup positions without changing the shape of the schedule. Ad hoc games are left as chosen.
- Export CSV: Download the currently assigned games with their draw, sheet, and team names. Queued games are not included.
The builder starts with precomputed layouts for common team and sheet combinations. When one matches your settings, it is used before calculating a new layout. With multiple iterations, that starting layout is repeated for each complete round robin. Once ad hoc games are present, the builder calculates a layout that includes them instead.
Change the Name, Team Names, and Row Packing
Click the schedule name above the grid to edit it. The name returns to regular text when the field loses focus. You can also edit it under Settings.
Open Settings to:
- Edit the schedule title.
- Edit team names. Empty team-name fields fall back to their team numbers.
- Turn on Fill blanks with the next round. When enabled, a later-round game may move into an earlier open cell if neither team is already playing in that row. When disabled, every round begins in a fresh row.
Select Apply changes to keep the settings. Select Cancel, press Escape, or click outside the dialog to close it without applying the draft.
Save and Reopen Schedules
Select Save to store the current working schedule in this browser. If another saved schedule has the same name, the builder asks before overwriting it.
Open Schedules… to find saved schedules and use these actions:
- Load: Open a saved schedule.
- Reload: Restore the saved version of the active schedule and discard unsaved changes.
- Export CSV: Download the assigned games from that saved schedule.
- Copy: Create a separate copy you can change.
- Share: Create a portable code containing the complete layout, names, settings, iterations, and ad hoc games.
- Delete: Remove the saved schedule from this browser after confirmation.
- New: Start a clean schedule using your current defaults.
Share or Import a Schedule
To send an editable schedule to another organizer:
- Save the schedule.
- Open Schedules….
- Select Share beside the saved schedule.
- Copy the code or download it as a text file.
To open a shared schedule, select Schedules…, then Import code. Paste the code, validate it, and select Import. If the same saved schedule already exists, the builder asks whether to overwrite it.
Share codes and browser data created by the previous CurlingSchedules.com version are supported. The builder upgrades older browser data when needed without deleting saved schedules.
CurlingSchedules.com remains free to use on its own. Schedule building is also integrated directly into Curling IO.