ODL Manager

All help

Setting up your first league

The steps from an empty account to a shareable table.

Everything is reversible until a season is started, and nothing is published until you share it.

Summary

  1. Leagues → Create a league.
  2. Divisions → New division, once per rung.
  3. Seasons → New season. Name, dates, format and scoring.
  4. Add to season, once per division, each with a host.
  5. Enter players, or accept their requests.
  6. Start season.
  7. Draw schedule, once per division.
  8. Record results as they are played.
  9. Share the division as text or as a page.

1. Create the league

Leagues → Create a league. A name is required; a description is optional.

The account that creates a league is its owner. Only the owner can rename, delete or transfer it.

Settings shows the league's URL:

The code identifies the league and never changes. The name after it is decoration and follows the league name, so renaming never breaks a link somebody has already shared.

The ten-character code identifies the league. Renaming the league does not break existing links.

2. Add divisions

Divisions → New division. Give the division a name and, optionally, an average gate — a lowest and a highest average. No minimum and No maximum are both valid.

A division belongs to the league, not to a season, and is reused each season. Division 1 in Summer 2026 is the same division as Division 1 in Spring 2026.

A division has no permanent roster. Players are attached to a division for one season, so last season's line-up does not carry forward.

Divisions are therefore set up once. Each new season selects which of them are running.

The number of divisions allowed depends on the plan. A free league has five.

3. Draft a season

Seasons → New season. A name and the dates it runs between.

Then the format:

Composed, not chosen from a list — "501 DIDO best of 5" is these fields together.

Five fields make up the format: the game (501 or cricket), the starting score, whether check in is on a double, whether check out is on a double, and best of how many legs.

Scoring sets what a win, a draw and a loss are worth. These are copied from the league and can be changed here.

All three at zero ranks the division on legs alone.

The season is created as a draft:

The season is drafted, not started. Add its divisions and their hosts next, then start it when you are ready.

A drafted season is fully editable.

4. Add divisions to the season

On the season page, Add to season. Select a division and a host.

The host is the league's representative for that division for that season. They record its results and draw its schedule.

A host does not have to play in the division they host and may play in a different one.

5. Enter players

There are two routes, and both can be used.

Entering directly. Open the division and use Enter a player. Only members of the league can be entered. A player who is not listed has not joined yet; send them the join link from Manage members.

Accepting requests. A member who is in no division this season sees Ask to play here on any division with an open roster. Requests appear under Waiting to be let in on the division page.

6. Start the season

Start season, on the season page. Starting is refused until the season is ready:

A season needs at least one division, and each needs a host, before it can start.

Starting freezes the format and the scoring:

Fixed now the season has started — the table has been read under it.

Format and scoring cannot be changed after a season starts, because recorded results were produced under them. Set them while the season is a draft. A later season can use different settings.

7. Draw the schedule

Open a division and select Draw schedule.

Everyone plays everyone twice, home and away. Draw the schedule when the roster is settled.

This generates a double round-robin. Six players produces ten rounds. Five players produces the same ten rounds with one player unopposed each round, shown as a bye.

Drawing closes the roster. No player can be entered once fixtures exist. Clear schedule removes the fixtures, but only while no results have been recorded.

A division needs at least two players:

A division needs at least two players, and a season under way, before its fixtures can be drawn.

8. Record results

Under Schedule on the division page, each fixture the host can record has a pencil button. Selecting it opens Record this result.

Required: the legs each player won, and the date played. Match detail (optional) holds each player's three-dart average, 180s and highest checkout, recorded per player.

A result can be edited. Remove result returns the fixture to unplayed.

Standings update automatically.

If a player drops out, remove them from the league or let them leave:

They keep their record — a standings table still lists them, marked withdrawn. Reinstating one puts them back on their rosters and hands any forfeited matches back as still to play.

Their remaining fixtures are forfeited to their opponents, and their row stays in the table.

9. Share the division

Both options are on the division page, under Copy this division.

As text, for pasting into Facebook or a group chat:

Leagues live in Discord and Facebook, so here it is as text you can paste there.

As a page:

Or send people the page itself. Anyone can open it, signed in or not.

The page requires no account. It shows the division's table and the round being played, updates as results are recorded, and is the only page that uses the league's own colour and typeface. See Your league's own look.

Fixtures, results and tables can also be posted to a Discord channel. See Connecting a league to Discord.

The following season

New season, select the format, add the existing divisions, name the hosts, enter the players, start it and draw it.

Divisions, members and recorded results are unaffected.

The rest of the help

Joining a division For players. Requesting a division, and what is asked for.
Deciding who plays For hosts. The request queue, the two kinds of average, and the gate warning.
Connecting a league to Discord Posting fixtures, results and tables to a Discord server.
Your league's own look Colour, heading typeface and logo for the shared page.
When a league is on hold What a hold prevents, what continues to work, and how to have it lifted.