Leagues that run themselves, and a straight answer on where the empty court-hours are. Built for one three-court club over a season, and ready to install at yours.
Figures from the live club, September 2026. A demo build with invented clubs and players is available for pitching.
Public standings, fixtures and rules on the club's own domain. Box leagues with promotion and relegation, or a season league into knockouts. No app to install.
Live · 100 box teams on it in cycle oneEither team enters the score. The other team gets one email and confirms with a tap. Matching scores confirm themselves; a disagreement is flagged to a named person, never argued with by software.
Median confirmation under half an hourReads the club's Playtomic bookings and works out which fixture each one is, from the players named on it. Games played with no score entered get chased automatically after three days.
200 bookings matched this seasonNot raw occupancy: bookable windows of an hour or more on one court, split into peak and off-peak, against how many league games still have to be fitted in before the deadline.
Answers "can the courts take this league?" with a numberCourts held for a league game with the opposition still unnamed, banded by how close to play. Every cancellation timed, with how far ahead it was booked and whether the slot ever sold again.
Three months of cancellations analysed at W7Who used the site, which teams have never logged in, what is booked, what capacity is left, which results are missing, and what was dropped late. Read on a phone before the club opens.
Runs unattended on a mini PC at the clubThe last two lines are the pitch. A late release that never refills is lost revenue nobody was counting, and until it is measured a club cannot argue with it.
| Stage | What happens | Club's time |
|---|---|---|
| Week 1 | Booking feed connected, courts and opening hours mapped, occupancy and free-window reporting live. Nothing member-facing yet. | 1 hour |
| Week 2 | League set up with the club's own format and rules, teams imported, site live on the club's domain. | 2 hours |
| Week 3 | Results, confirmations and chasers switched on. Daily ops email starts. | 30 minutes |
| Ongoing | Runs unattended. One person reads a morning email and answers the odd dispute. | 10 min/day |
Requirement from the club: API access to its own booking system and a mailbox to send from. It sits alongside Playtomic rather than replacing it, so nothing changes for how members book.
Record it in one take with the demo build, which uses invented clubs and players. Times are cumulative.
Open on the league page on a phone. Scroll the box tables."This is what a member sees. No app, no login, their box and their fixtures."
Tap Enter result, type two set scores, submit."Either team enters it. That's the whole job."
Cut to the opponent's inbox, tap Confirm in the email, show the table updating."Their opponents confirm with one tap and the table moves. Nobody in the office touched it."
Switch to the usage view. Show games needed against games booked, then the free-hours list."Fifty games to fit in, twenty-two booked, and here is exactly where the hours are."
Show the held-courts list and the late-drop history."Courts held with no opponent named, and every late cancellation with whether the slot ever sold again."
End on the morning email on a phone."That's the club's morning read. Everything else runs itself."