Features Formats Tournaments Leagues Corporate days Event scoring Player recaps Blog How it works Academy Book a demo

CourtsOS › Club leagues

A season, not a day

A club league that runs without you

A challenge ladder for your members. They find who they can play, agree a time between themselves, play it, and record the result - all on their own phones. Nobody rings the desk, nobody updates a spreadsheet, and the board is right at midnight on a Tuesday.

The unit
A pair, not a player
Arranging
Members do it
The board
Public, in your colours
Your job
Take the court bookings

The problem it solves

Most club ladders die in the admin

Not for want of players. For want of somebody willing to keep a spreadsheet honest, chase two pairs who have not played, and answer “who am I allowed to challenge?” forty times a season.

📱

Nobody asks the desk

A member opens the board on their phone and sees exactly which pairs they may challenge, who is free when, and whether anybody has challenged them. That is the question the desk was answering, and it is now answered by a web page.

⏳

Nobody chases

A challenge carries a deadline. CourtsOS reminds the defender before it runs out, and if the match is never played the challenger claims the rung. The ladder keeps moving whether or not anyone is watching it.

📊

Nobody re-types

The result is entered by the pairs who played it, confirmed by the other side, and the ladder moves itself. No results inbox, no Sunday-night data entry, no argument about which version of the table is current.

🏟

Your colours, your board

The league board carries your club's logo and palette, on the same theme as your tournament screens. It reads like part of your club, because it is - it lives in the same CourtsOS tenant as everything else you run.

📅

Court hire, on quiet nights

A ladder puts competitive pairs on court in the weeks between events, and they book the court themselves. That is the return: not a scoring product, a reason for four people to book Tuesday at eight.

🏆

Something to finish

Seasons end. Divisions promote and relegate. The season is archived and everybody gets told where they finished, so a ladder has a shape rather than running for ever until it quietly stops.

The ladder

Challenge up, and the winner takes the rung

Every pair sits on a rung. You may challenge a short way above you - two rungs by default, and further if you are near the bottom, so nobody at the foot of the ladder is stuck playing the same two pairs all season.

Win as the challenger and you take their place; they and everybody between you move down one. Win as the defender and nothing moves, which is why a defence has a deadline attached to it.

  • A team is a pair, with one code either player can quote - so a league match never waits on one particular phone
  • The opening order is the order you paste it in. Your judgement of your own members, not a random draw
  • A rematch cooldown stops the same two pairs playing each other over and over
  • An optional protection window gives a pair who have just lost a rung a few days before they can be challenged again. Off unless you ask for it
  • Every move is marked. A pair a result moved wears an arrow for a fortnight - up in green, down in red - so a member opening the board on Monday can see what happened at the weekend
The CourtsOS league ladder on an iPhone: each pair's position, when they last played, their wins and losses, green and red arrows on the pairs a result moved, and three pairs marked as in a challenge
The ladder is a public link. Reading it needs no code.
Arranging it

Two pairs, four diaries, and nobody's phone number

Each pair sets the times of the week they can generally play - a grid of mornings, afternoons and evenings. CourtsOS never publishes a pair's diary. What the two pairs in a challenge see is the week as one grid: solid where both can play, one mark for your times and another for theirs, so you can see which of their evenings you could stretch to when nothing lines up.

From there they propose an actual date, message each other, and agree it, all on a match page of their own. Messages go out by email carrying the words that were typed - and the reply comes back by following the link, so neither side's address is ever revealed to the other.

  • A slot is a date, not a weekday - “Tuesday evening” inside a fortnight is two Tuesdays, and that is how fixtures get missed
  • Filling in availability is optional, never a barrier to joining
  • Court booking stays yours - CourtsOS arranges the match, your system takes the money
  • A member who would rather not be emailed can switch it off for themselves
A pair signed in on an iPhone: their position, their live challenge with its deadline, the sentence 'You both play Tue evening', the week as a grid marking both, yours and theirs, and the agreed time
Signed in: your rung, your challenge, and where two weeks meet.
Playing it

Recorded by the people who played it

Score it on a court tablet like any other CourtsOS match, or record it afterwards on the match page. Either way both pairs enter their team code, so a result cannot be filed by one side alone.

One pair enters the score, the other confirms, and the ladder moves. If the second pair never answers, it settles itself after 72 hours. If they disagree, it goes to you - and nothing on the ladder has moved in the meantime.

  • A club court is booked by the hour, so one set each and the clock beating you is an ordinary finish - draws, abandonments and retirements are all recordable
  • A no-show is claimed as a bye from midnight at the end of the agreed day
  • You can settle a disputed match, record one by hand, or void a result outright
  • The score is sets, entered as sets - not a line of free text somebody has to interpret
The CourtsOS match page on an iPhone: two pairs messaging each other, a suggested Tuesday evening, the same evening agreed, and a note saying neither side ever sees the other's email address
One page per match: propose, agree, play, record.

Shape

Seasons and divisions, if you want them

A small club can run one open ladder and never think about any of this. A big one needs divisions, and a ladder that ends.

Seasons

Give the season a name and two dates. Play opens and closes on them, the season rolls over by itself overnight, and the one that has just finished is archived with everybody's record in it.

Divisions

Split the ladder into divisions and set how many go up and how many come down. Promotion and relegation are worked out at the rollover and applied for you.

Registration

Signup opens ahead of the season and closes a fortnight into it - so a pair who hear about it in week one still get a season, and you are not fielding entries in March for a league that started in January.

The letter

At the rollover every pair can be written to with where they finished, whether they went up or down, and when the next season starts. Off until you ask for it, because it writes to your whole membership unattended.

The break

Between seasons the board says so and gives the date play resumes, rather than showing a ladder nobody may use or going blank and looking broken.

The archive

Finished seasons are kept. A pair can see they were fourth in Division 2 last spring, which is most of the reason anybody enters a second season.

None of it is compulsory. A league with no dates simply runs, as ladders always have. Tell us your club and we will suggest a shape →

Filling it

A poster on the clubhouse wall

Print the QR code, put it where people wait for a court, and pairs sign themselves up: two names, an optional email each, the times they can play, and they are on the bottom of the ladder with their code on screen.

A join code you set stops the whole internet joining your league - the QR gets somebody to the page, the code gets them onto the ladder. Or skip all of it and paste your members in yourself, in the order you think they should start.

  • Both ways in - self-signup from a QR, or a roster pasted by you
  • A welcome email with their code and how it works, if you want one sent
  • An email address is optional - a pair signed up courtside may not have one to hand
  • The team code is remembered on a member's own phone, and forgotten again after a month
A pair signing themselves up on an iPhone: both names, both emails, and the optional grid of when they can play
Two names, two emails and the week - and they are on the ladder.
Word of mouth

Members invite the next pair

A member signed in on the board has an Invite a friend to the league button at the top. It opens a QR code and a link to your signup page - show it across a table, or drop it into a group chat - and the link carries who sent it, so you can see which of your members are filling your ladder.

It carries nothing else. Not the join code, which the friend still has to be told, and never anybody's team code: a code is authority, and a link gets forwarded.

  • The QR is drawn on the phone from the link itself, so it works on clubhouse wifi or none
  • The new pair shows “invited by” in your manager - useful when you are deciding who to thank
  • The join code stays out of the link on purpose - a link is passed on, a code is asked for
The league board on an iPhone with the Invite a friend fold open: a QR code, the signup link with a Copy button, a note that the friend will also need the club's join code, and the members' WhatsApp button beneath
Invite a friend: a QR and a link, and the club sees who sent it.
No partner yet

A player on their own puts their name down

Half the people who would enter a league have nobody to enter with. Switch on Find a partner and a player can register alone from the same QR - their name, when they can play, a line about their level. They get a code of their own and see everybody else who is looking, each with where the two weeks overlap and never the other person's full diary.

One asks, the other accepts, and the two become a pair. You can also pair people yourself from the manager, because the club knows things a list cannot.

  • Off until you ask for it - a list of members looking for a partner is a decision about your members, not ours
  • Neither joins the ladder until both agree - and if you charge entry, until it is paid. They can each pay half, or one can pay the lot
  • A decline is quiet, and there is one ask per pair - nobody gets knocked on twice
  • Anyone who had asked one of a new pair is told, without being told who the partner is
The Find a partner list on an iPhone: players looking for a partner, each with a line about themselves, the sentence and grid showing where their week overlaps with yours, and an Ask to pair button
Find a partner: who is looking, and where your weeks meet.
The group chat

Your WhatsApp group, one tap from the ladder

Most club leagues already live half their life in a WhatsApp group - the banter, the photos, the “anyone about tonight?”. Paste the group's invite link into your manager and a Join/Open the members' WhatsApp group button sits on the board, directly under the invite, for every member who has signed in with their team code.

Signed out, it is not there. Not hidden - not in the page at all. The ladder is a link you hand out freely, and a group invite is a door into a room full of your members, so the two are never on the same footing.

  • One button, both jobs - it joins a new member and opens the group for one who is already in it, and WhatsApp decides which
  • Set or cleared from either manager page in a moment - no redeploy, no ticket
  • The ladder still does the arranging. Challenges, times and results stay on the record; the group is for everything else
  • It is your club's own group, with your admins - CourtsOS is not in it
The league board on an iPhone, signed in: the club's header, the Invite a friend button, the green Join/Open the members' WhatsApp group button with a members-only note, and the pair's own card with their challenge beneath
Signed in: invite a friend, the members' group, then your own card.

Your members' data

A public board that is careful what it publishes

The ladder has to be readable by anyone you send the link to. That is a decision with consequences, and they were designed for rather than discovered.

Names are shortened

The board shows a first name and an initial by default. You can switch it to full names - and CourtsOS asks you to confirm, because it is a decision about people who are not in the room.

Codes are never public

A team's code is the thing that authorises a challenge and a result. It appears on the board nowhere, in the signup link nowhere, and in an email only to that team.

Diaries are never public

Availability never reaches the board. The only place it is used is the overlap shown to a pair the member is actually arranged to play.

Addresses stay private

Two pairs arranging a match never see each other's email addresses. The message is composed on the page and the email only carries it.

Nothing is indexed

Every league page tells search engines to stay away. The board is a link you give out, not a page that turns up when somebody searches a member's name.

No tracking

No advertising cookies and no analytics, on the league pages or anywhere else on CourtsOS. There is nothing to opt out of because there is nothing collecting.

Two ways to do it

Run it yourself, or let us run it

The league is the same either way. What changes is who holds the keys and who does the fortnightly ten minutes of tidying.

Managed

We run the league

For a club that wants a league and does not want a league administrator. Most clubs start here.

  • We build the ladder from your list and set the season dates
  • Divisions, ranges and deadlines set to suit your membership
  • Your signup QR, join code and WhatsApp group link, ready on day one
  • Disputes settled and stragglers chased by us
  • The rollover watched, the letters checked before they go
  • Your branding on the board and a link for your newsletter
Ask about a league
Club managed

You hold the keys

For a club with somebody who enjoys this - a captain, a coach, a committee member who already runs the ladder on paper.

  • Your own manager page, behind your own passcode
  • Add and remove pairs, edit names, regenerate codes
  • Set the ranges, the deadlines and the season dates yourself
  • Settle disputes, void results, record a match by hand
  • Open and close registration when it suits you, and link your members' WhatsApp group
  • Our support behind you, and we can take it back in house at any point
Ask about a league

Free, or paid entry

Run the ladder as a member benefit, or take an entry per pair by card - with a grace period, renewal that never drifts the anniversary, and auto-renew off unless a member ticks it themselves. Tell us which you want; both are built.

Alongside your events

The league does not interrupt anything. Your Saturday Americano, your club championship and your ladder all run in the same CourtsOS club, on the same screens, at the same time.

A finals day at the end

Take the top eight off the ladder and run a proper knockout with groups, a plate and a TV board. That is a one-off tournament, and it is the natural way to end a season.

Before you ask

The questions we always get

How many pairs do we need to start?

Eight is a league. Twelve is a good one. Below eight the challenge ranges leave people short of opponents, and you would be better off with a monthly Americano until the numbers come. Above about twenty, split it into divisions.

Does it book the courts?

No, and deliberately. Your booking system takes the booking and the money exactly as it does now - CourtsOS gets two pairs to agree a time, which is the part that was falling over. It means we can be dropped into a club whatever it books with.

What stops somebody entering a score that never happened?

Both pairs have to put their team code in before a result is filed, and the pair who did not enter it get a chance to confirm or dispute. A disputed match stops where it is and comes to whoever runs the league, with nothing on the ladder having moved.

What if two pairs just never play?

The defender has a deadline - a fortnight by default - and gets reminded before it runs out. If it passes, the challenger claims the rung. If a date was agreed and one pair did not turn up, the other claims it from midnight that night. Either way the ladder moves without you refereeing it.

Can a member play in the league and in our tournaments?

Yes. They are separate things in the same club - the ladder keeps running while you play a Saturday event, and neither knows about the other. A player is just a player.

Do members need an app?

No. Everything is a web page: the board, the match page, the signup. It opens on any phone, there is nothing to install and nothing to sign up to beyond the league itself.

Can members bring in a friend?

Yes. A member signed in on the board has an Invite a friend button: a QR code and a link to your signup page, and the new pair shows as invited by them in your manager. Their friend still needs your join code, which is deliberately never in the link.

What about a player with nobody to enter with?

Switch on Find a partner. A player registers alone from the signup QR, gets a code of their own, and sees everyone else looking, with where their weeks overlap. One asks, the other accepts, and they join as a pair - or you pair two people yourself from the manager. Nobody is on the ladder, and nothing is charged, until both have agreed.

We already have a WhatsApp group. Does it fit?

It is meant to. Paste the group's invite link into the manager and members get a Join/Open button on the board once they have signed in with their team code. It never appears on the public ladder - a group invite is a door to your members, so only members are shown it. The group is yours, with your admins; CourtsOS is not in it.

What if we already have a ladder on a spreadsheet?

Paste it in. The order you paste is the opening order, so a column already in finishing order needs no reordering - your existing ladder becomes the starting ladder, and nobody loses their place.

Can we charge for it?

Yes. Entry can be taken per pair, either as a rolling term or per season, paid by card. It is optional - plenty of clubs run the ladder as a member benefit and take the court hire instead.

Is it only padel?

No. Matches are scored in games, sets and tiebreaks, so tennis and pickleball ladders run on it too. Padel is where most of our clubs are, which is why the site talks about it.

How long does it take to set up?

An afternoon. The work is deciding the shape - one ladder or divisions, how far a pair may challenge, how long a defence has, whether there are seasons - and we will do that on a call with you and have the QR code in your hands the same week.

Start a league

Tell us about your club

How many pairs you think would enter and how your members already arrange games. We will come back with a suggested shape for it and what setting it up would involve.

We reply within one business day. Or email hello@courtsos.com - or call 07792 224 641.

Want to finish the season with a proper tournament?

Take the top of the ladder into a finals day - groups, a knockout, a plate and a board in the clubhouse. Same system, one afternoon.

Event scoring →