Pickleball session manager

Run open play without the whiteboard.

KitchenSync handles the queue, the courts and the fairness — managers run the room, players just play.

kitchen-sync.site/app
Saturday Open PlayCODE K8D2M4
Court 1PLAYING
Marco · Ana9 – 6Chen · Bea
Court 2PLAYING
Jules · Kai4 – 7Nadia · Omar
Court 3 — open
Court 4 — open
NEXT UP
PatLouieSamIvyRexDana

Everything a session needs

From the first check-in to the last game.

For managers

Your whole club day, one dashboard

See sessions, players and credits at a glance, then launch the next session in seconds.

  • Session stats and history, paginated and searchable
  • Action tiles and a live-session banner — jump straight back in
  • Plan a session up front: courts, queue mode and game target at creation
  • Per-session credits, no subscriptions
kitchen-sync.site/app
TOTAL SESSIONS
128
+3 this week
TOTAL PLAYERS
342
across all sessions
CREDITS
4
available
Create SessionSTART
Saturday Open Play
COURTS: 4
Friday Night Doubles2h 40m · 18 players36 games
Saturday Open Play3h 10m · 24 players52 games
Fair queueing

A queue nobody argues with

Priority is pure wait time — late check-ins wait their turn, fixed groups play together but don't jump the line, and groups are balanced by skill and gender automatically. When play gets thin, partners rotate instead of repeating.

  • Wait-time-first priority, transparent to everyone
  • Skill spread + gender balance baked into pairing
  • Pace watchdog — see who’s behind on games, with warnings and suggestions
  • One-tap court assignment, substitution and score entry
  • Drag-to-swap courts and player slots — mouse, touch and iPad
kitchen-sync.site/app
QUEUE — 4 WAITING
1MVMarco V.NG 314:21
2ARAna R.NG 211:05
3CWChen W.NG 48:47
4BSBea S.NG 15:12
Court 1PLAYING · 08:12
Marco + AnaChen + Bea
Court 2 — Available
NEXT GROUP
MVARCWBSauto-paired by wait + skill
TV display

Put the court board on any screen

Open the display link on a TV and it stays live all session — courts, scores and who's up next, updating in real time.

  • One-click display link per session
  • Realtime updates, zero refresh
  • Next-up marquee keeps the queue moving
  • Your club name and logo in the header
kitchen-sync.site/app#display-only
Saturday Open PlayCODE K8D2M4
Court 1PLAYING
Marco · Ana9 – 6Chen · Bea
Court 2PLAYING
Jules · Kai4 – 7Nadia · Omar
Court 3 — open
Court 4 — open
NEXT UP
PatLouieSamIvyRexDana
For players

Join with a code or a scan, then just play

Players join with a 6-character code, show their QR at the desk, or scan the check-in sheet posted at the venue to drop straight into the queue — and always know where they stand.

  • Join by session code, player QR, or venue check-in scan
  • Live queue position and estimated wait
  • Game history and rankings on their profile
Hey, JulesJD
YOUR POSITION
#3
est. wait ~12 min
JOIN WITH CODE
K8D2M4
JOIN SESSION
or show your QR at the desk
Accessibility

Built for every hand, eye and screen

The whole board is operable by touch, mouse or keyboard — sized, labelled and themed so the desk and the phone in a player's pocket both work for everyone.

  • Light and dark themes with tested contrast
  • Tap targets grown to ~44px on touch devices
  • Visible keyboard focus rings across the board
  • Screen-reader labels on drag handles, fixed groups and status banners
  • Swipe, long-press and one-tap paths for every core action
Evidence-based fairness

The queue treats everyone the same

We don’t just say the queue is fair — we simulated it. KitchenSync’s actual production pairing algorithm was run through a 4-hour, 48-player open-play session in both queueing modes — with fixed groups, resting players, no-shows, a manager who can break a fixed group, and late arrivals thrown in to make it realistic. Here’s what came out.

0
players stranded

Everyone got on a court — despite resting players, no-shows and late arrivals.

≈ 5
game-count spread

The busiest player averaged 9 games, the quietest 4 — out of ~6.4 each over 4 hours, with fixed groups measured against their achievable co-presence pace (and a manager who can free them).

≤ 6%
gender gap

Difference in average games played, male vs. female.

≤ 17%
repeat groupmates

Share of groupmates you already played with in your previous game — the rest are new faces, rotated by the variety bench and recency rotation.

How we tested it
  • 48 simulated players, skill spread across all 4 rating tiers (Beginner → Advanced)
  • 4 courts · 4 players per court (doubles) · 4-hour (240 min) session
  • Games timed 10–15 minutes each; players arriving over the first 15 minutes, plus 6 late check-ins (up to 75 minutes in)
  • Fixed groups — duos, a trio and a full four (13 players) play together but queue by wait order
  • Manager breaking — the manager permanently dissolves a fixed group the first time it becomes incomplete, freeing its waiting members to queue as individuals
  • Resting — players opt out between games and rejoin when ready; no-shows get picked then go unavailable
  • Manager overrides — with some chance the manager hand-picks or edits the previewed group
  • Both queueing modes tested: Mixed (±1.5 skill gap) and Skill-matched (±0.5 gap + fallback)
  • Every metric averaged across 5 independent seeded runs of the full session
  • Pairing weight 0.65 — 65% wait-time fairness, 35% skill fit (shipped default)
  • Anti-starvation rescue after 25 min waiting — among rescued candidates the tightest skill match wins (a tuned constant, verified by parameter sweep)
  • Game-count fairness keeps the games-played spread tight even under pressure
  • Variety bench — the pair that just lost (or a seeded-random pair in unscored games) sits out a round while the fresh pool can still field courts
  • Partner and opponent rotation counts every game actually played — scored or not
  • Cross-level mirroring prefers groups that split into mirrored teams (4+3 vs 4+3), with a per-round reshuffle of equal-rated players
  • Expected pace is per-player but measured against what's achievable — a full fixed four that can only field when all four are present carries a blended, honest target (mirroring the chance the manager frees it), not a mocked-up ceiling

Every number above is produced by KitchenSync’s actual production queueing code — not a mock-up. See the full methodology and data →

Note: these are simulated results from controlled testing, not measurements from live customer sessions.

Changelog

The queue, improved in the open

Every queueing change ships with before-and-after numbers from the same simulation setup — here’s what changed and what it moved.

v1.9.0An AI queue reviewer, an analytics-first dashboard, session credits & floating stand-ins
  • A second opinion on the queue. Ask an LLM to review the live session — queue fairness, planned-group balance and pacing — and get advisory suggestions, severity-chipped, with an optional five-minute auto-review that logs the findings it flags. It’s bring-your-own-key: your OpenAI-compatible credentials ride each request from your device alone, and the snapshot is anonymized (players become P1…Pn) so names never leave the browser. Nothing is ever applied for you.
  • A dashboard that leads with the numbers. The manager dashboard is analytics-first now: eight tiles — sessions and players this week, average games per session, average game duration, all-time sessions and players, your longest session and your credit balance — above a 14-day sessions-per-day chart and a recent-session duration chart with its average. Past sessions live in the Sessions view.
  • Credits, priced and flexible. A session is ₱49, or ₱200 for five and ₱350 for ten — down to ₱35 a session. Managers holding credits now choose side-by-side in the New Session dialog: spend a credit for unlimited courts and players, or start a free session (2 courts, 16 players). The free tier is enforced on add-player, court add and Reclub import with an upsell, and hitting the cap on a free session offers the conversion instead of a wall. No dead ends either — the paywall opens from inside the session, topping up resumes the add that was blocked, and paid sessions are stamped with their session id at creation so Reclub import is correctly uncapped again. A purchase only reports paid when the QR you were issued is the one that cleared.
  • Floating stand-ins. Mark a player as a placeholder from the add popover, manage them in their own sidebar section, and badge them on their row. Placeholders hold a spot without entering queue generation — for the regular who’s coming but hasn’t checked in — and their state survives a reload.
  • Standings you can share mid-session. The live standings pane gains a Share button that renders the same PNG you get after the session, with a preview before anything leaves your device, player avatars, and a podium tint for the top three. Ties read honestly too — an H2H marker when head-to-head decided the spot, and point differential as the tiebreaker in every non-wins sort mode.
  • Faster foursome rotation. The recency penalty for repeated court-mates went 0.25 → 0.5, a new 1.5 penalty hits any window that’s an exact repeat of a recently-played foursome, and the Skill-matched gap tightened 1.0 → 0.5. At 16 players repeat mates fell 28% → 22% (21% → 16% at 24) with waits, utilisation and stranded counts unchanged — and the fairness simulation was re-run end to end against the shipped algorithm.
  • A guided tour on realistic data. A ?tutorial=1 mode drives the whole app against a mock backend with believable fixtures, so the walkthrough runs on a live-looking board without touching your real sessions.
  • Sharper on phones, and one typeface. A safe-area bottom nav (Courts / Queue / Rankings) ends the courts-hidden-behind-the-sidebar problem on phones, sidebar and pane scrolling were rebuilt on proper flexbox, roster rows lost their hover-only buttons, and SkillDots read as stars. The app also settled on a single typeface — SF Pro Rounded on Apple, with a self-hosted Inter fallback elsewhere — alongside an animated pickleball loading screen and light-mode primary buttons that finally hold their contrast.
v1.8.0Animated swaps, Apple Pencil, account linking & self-serve sign-in
  • Swaps you can see. Drag-and-drop now animates the actual exchange — courts trade games, player slots slide into place, and preview reorders fly to their new spot — instead of snapping. A FLIP motion engine drives it across mouse, touch and Apple Pencil.
  • Apple Pencil, fully supported. Drags activate instantly under the Pencil (no hold delay), and controls that used to hide until hover now stay visible for it — so the Pencil behaves like a precise finger everywhere on the board.
  • Link walk-ins to their accounts. A one-tap scan finds registered KitchenSync accounts for walk-ins already on the roster and links them — pulling in their photo and profile — and links are re-checked whenever you refetch a Reclub list. Registered rows are badged, and add-player suggestions now say Account vs Saved.
  • Self-serve sign-in & password reset. Clean /login and /sign-up links, a forgot-password flow with a proper reset page, and friendlier errors — signing up with an email that’s already taken now suggests logging in instead of failing cryptically.
  • Little touches, everywhere. A light/dark toggle on the landing and fairness pages, tap a player’s photo to see it full-size, the player view now calls out partner vs opponents, swiped rows lift with a shadow, and the player dashboard explains what appears once they’re checked in.
v1.7.0Drag the board, your club’s name on it & built for every hand
  • Drag the board, not the whiteboard. Drag a court onto another to swap every player on it, drag players between courts to trade slots, and drag a previewed group onto a court to start it — with mouse, touch or Apple Pencil. A new press-drag gesture engine makes tablet drags survive iPadOS’s scroll-hijacking, and previews can be reordered by hand.
  • A console that behaves like an app. Every screen is now a real route with smooth transitions and a shell that persists; the dashboard leads with action tiles and a live-session banner, the New Session dialog sets courts, queue mode and game target up front, and an installable PWA shell with an offline banner keeps you covered when the venue Wi-Fi drops.
  • Your club’s name on everything. Set an org name and upload a club logo once — it flows into the manager header, the TV display board, the printable QR check-in sheet and the shared standings image.
  • Reclub, more complete. Reserved spots and +1 guests now come through the import, and Reclub photos follow players into past-session standings and match history — not just live sessions.
  • Kinder rescues. When the anti-starvation rescue steps in for a long-waiting player, it now picks the tightest skill match among eligible groups instead of the first one that qualifies — the zero-starvation guarantee holds and the rare extreme mismatches disappear. The full fairness simulation was re-run against the shipped algorithm with this change.
  • Accessible by design. A calmer, larger type scale with a light theme that keeps its contrast, visible keyboard focus rings, tap targets grown to ~44px on touch devices, screen-reader labels on drag handles and fixed-group markers, a swipe-to-delete roster, and collapsible Queue/Resting sections.
v1.6.0Variety engine, score editing & a rebuilt dashboard
  • Group variety, engineered. The pair that just lost sits out a round (a random pair when games go unscored), equal-rated players reshuffle between rounds, and candidate groups now favor compositions that split into mirrored teams (4+3 vs 4+3) — so opponents and partners rotate instead of repeating.
  • Rotation works without scores. Partner and opponent rotation used to depend on games being scored; a venue that never kept score had zero rotation (one real session: 44% repeat partners). Recency now counts every game actually played — that session’s repeat-partner rate drops to ~7% going forward.
  • Ghost players eliminated. Players stranded as “playing” with no court (after a court-count change from another device) are recovered into the queue automatically, and mid-game court deletions requeue their players instead of orphaning them.
  • Edit the history. Update or add a score to any recorded game — standings, history and rotation recompute everywhere, live across managers.
  • A dashboard that fits. Sidebar Queue/Groups tabs, a compact Add Player with a filters popover, secondary actions under a ⋮ menu, a slide-over pane for standings/history/activity (swipe-to-open on touch), swipeable queue rows, actual/expected game counts (3G/6G), and an announce mute toggle.
v1.5.0Fixed groups, accounted for fairly
  • Expectations now model real co-presence. A full-court fixed group (a pinned four) can only field when every member is simultaneously present — resting and no-shows cost it court time it can never claw back. The expected-games pace now reflects that, so a full four isn’t flagged as falling behind for games it structurally cannot play.
  • A manager can break a stuck fixed group. If a group becomes incomplete (a member can’t field) and starts sidelining its waiting members, the manager can permanently dissolve it to free them to queue as individuals. The simulation and the expectation model both account for this — a full four’s target blends between staying pinned and being freed.
  • Small fixed groups stay honest. Duos and trios share courts with fillers, so they keep the standard per-check-in expectation; a pinned pair that slots into partial courts runs a mild, bounded surplus rather than a shortfall — shown transparently in the results.
  • Fairness, measured against what’s achievable. After the change, ~67% of players in the shipped Mixed mode land within half a game of their expected count and ~90% within one — with the same actual schedules and the same shipped algorithm.
v1.4.1Reclub roster sync & session reset
  • Confirmed-only, or check them straight in. The Reclub import takes the Confirmed roster (the host-approved players) and falls back to Going when an activity needs no host approval. A toggle on the review step checks your picks into the queue right away.
  • The link sticks, and syncs by diff. The Reclub link is remembered per session. Reopening Import refetches one tap — new players get a New badge, people who dropped off appear in a “No longer on the Reclub list” section to remove from the session, and the roster baseline updates.
  • Reset a session, keep the slot. Reset Session clears players, matches, scores, courts, fixed groups, and the preview while keeping the session and its settings — re-run the same slot without spending a credit.
v1.3.0Reclub import with photos & touch-friendly onboarding
  • Import players from a Reclub activity link. Paste a reclub.co/m/… link to pull the session’s roster into the same review list as a paste or upload — auto-matching registered players, with include toggles and duplicate flags.
  • Photos travel with the player. Reclub avatars are kept session-locally as a fallback, so walk-ins and players without a profile photo still show a face at the desk.
  • Touch-friendly controls. Bigger touch targets on buttons and court/queue controls, a spotlight tutorial guide that walks new managers through the session view, and a rotating tip of the day. Modal inputs no longer autofocus on touch devices, so the virtual keyboard stops popping open over the dialog.
v1.2.0Turn-taking fairness, pace watchdog & session planning
  • Fixed groups take their turn. A pinned duo, trio or group used to get the very next court every time their game ended — in simulation they played every game back-to-back (14 games, 0 min rest) while singles waited up to 31 minutes. Fixed groups now queue by wait order like everyone else: ~11 games with ~5 min rest, same togetherness, zero idle courts.
  • A preview you can trust. A new check-in used to rewrite the groups you’d already shown players (94% of sessions) and could even jump into the next game with a 0-minute wait. Existing groups now stay put — newcomers are placed on the next iterations — and a fairness grace period stops a fresh check-in from outranking longer-waiting players.
  • Partners rotate, even shorthanded. When the same foursome has to play repeatedly (early session, thin queue), the pairings cycle instead of repeating: mixed foursomes alternate their mixed pairings forever; same-gender foursomes cycle all three. The team preview, start dialog and court assignment always show the same split.
  • Pace watchdog & fairness nudges. Every player carries an expected-games pace from their check-in time and the session’s actual game rhythm — visible as a games counter on every row that turns amber/red when someone falls behind, with a warning toast for the manager. Manual overrides (group edits, on-court swaps, hand-picked courts) get a nudge naming who’s ahead on games and who would balance the turns.
  • Plan sessions ahead. Create a session with a planned start time and duration — add and import players, configure courts and queueing before play begins. Hours extend mid-session, and missing players can be substituted with one tap from the start dialog, with level-matched suggestions for on-court swaps.
v1.1.1Player self check-in & printable QR sheets
  • Check in by scanning. Managers print a sheet of check-in QR cards from the session toolbar — or download it as a PNG/PDF to share — and post it at the venue. Players scan with their phone camera and land straight in the queue with a fresh wait clock, same as a desk scan. No camera? The session code is printed right on the card. Joining by typed code still goes through the manager’s check-in, and a player already on the roster moves into the queue the moment they scan.
v1.1.0Rotation, fixed groups & offline-first
  • Opponent & partner rotation. A finished foursome used to re-form game after game — ~60% of your groupmates were the same as your previous game. Groups that repeat recent court-mates are now scored down: under 20% repeats, while a game-count fairness term keeps the average games spread tight at 2–3 games. Managers can pin fixed groups (duos, trios, or a full four) that are exempt from rotation by design.
  • Offline-first sessions. Manager actions apply instantly and sync automatically when the connection returns; sessions with multiple managers are warned to keep a reliable connection.
  • Player history. Players can see their past sessions, every match they played (searchable), their live queue position, fixed-group membership, and which court they’re picked for next.
v1.0.0Launch — fair queueing baseline

Shipped with the anti-starvation rescue, which closed the gap our simulation surfaced in pre-release testing. Without it, rare skill tiers could wait out entire sessions:

Pre-release, without rescue
  • Game-count spread up to 7.4 games
  • Up to 1.8 players stranded with 0 games
  • Gender gap up to 13.5%
v1.0.0, with rescue
  • Zero stranded players, every run
  • Gender gap down to ≤ 7%
  • Court utilization held at 97–98%

Simple, per-session pricing

Start free, pay only for the sessions you run.

Players
Free

Free forever — just show up and play.

  • Join any session with a code or QR
  • Live queue position and wait time
  • Game history and rankings
Managers
Free

Run small open play sessions at no cost.

  • Up to 2 courts per session
  • Up to 16 players per session
  • Full fair-queue engine, scoring and display board
  • Upgrade to a credit any time for unlimited
UNLIMITED
Session credit
₱49per session

One credit covers a full session, up to 24 hours.

5 credits₱200
10 credits₱350

Stock up with a bundle — down to ₱35 per session.

  • Unlimited players and courts
  • Fair queueing and TV display board
  • Scoring, rankings and player stats
  • Printable QR check-in sheets for your venue
  • Club branding — your name and logo on every screen
  • Installable app that keeps working when the Wi-Fi drops
Get a credit
Unlimited sessions for ₱399/month — coming soon

Run as many sessions as your venue needs on a monthly plan. Interested? Tell us in the feedback form below.

Pay in-app with QR Ph — scan with any bank or e-wallet app. Trial vouchers available at partner venues.

How it works

1
Create your account

Sign up as a manager or a player. Managers get one credit per session — buy more any time.

2
Start a session

Name it, pick the court count and go. Share the 6-character code or open the TV display.

3
Players roll in

They scan the venue QR, join with the code, or show their player QR — and the queue does the rest, fairly.

Feedback

Tell us what to fix or build next

Spotted a bug, or wish KitchenSync did something differently? It lands straight in our inbox.

Ready to run your next session?

Set up takes about a minute. The whiteboard can retire.

Open KitchenSync