TorneoTorneoBeta

Chess tournament management and club membership, built for TDs.

Run Swiss and round-robin events, collect entry fees, manage your club roster and dues, and submit results to FIDE or US Chess — all in one place.

Tournament Formats

Swiss System

Swiss-style pairings: score-group separation, color balance across rounds, avoid repeat pairings, bye to lowest-rated unpaired player.

Round Robin

Berger/circle schedule with automatically computed round count. Works for any field size.

Team Swiss

Teams paired by Swiss algorithm; boards within each team assigned by descending rating rank.

Team Round Robin

Full round-robin schedule at team level. Team standings: match points (2/1/0) with game points as tiebreak.

Sections

Divide a tournament into rating-class divisions (Open, U1800, U1400 …). Pairings, standings, and tiebreaks are computed independently per section.

Club Management

Member roster (CRM)

Cross-tournament player roster deduplicated by email. Attendance stats: total unique players, return count, return rate.

Membership tracking

Status (Active, Expires soon, Expired, Pending payment, Inactive), expiry date, membership number, FIDE/USCF IDs, phone, birth year, gender, notes.

Membership types

Define tiers with dues amounts and renewal periods (Senior, Student, Regular, Lifetime, etc.). Deactivate types without deleting.

Automated dues collection

Stripe Checkout links emailed automatically when a member is added to a paid club. Reminder on day 4, expiry on day 5 if unpaid.

CSV import & export

Import club members from CSV. Export the full member list (respects active filters) for external record-keeping.

Bulk member actions

Select multiple members and remove, restore, change status, or assign a membership type in one step.

Participation reports

Download a CSV of player participation across a date range — useful for season reviews and federation reporting.

Player Management

Add & edit players

Name, rating, federation, club, email, phone, FIDE ID, USCF ID, birth year, and gender. Existing club members auto-suggest as you type.

CSV import

Bulk-import players from a CSV file. Valid rows always import; bad rows are reported without aborting the whole file.

Late entries & re-entry

Add players after the tournament starts. Withdraw and re-enter players at any point without losing their results.

Player merge

Consolidate duplicate entries: choose the survivor, pick field values to keep, and all pairings transfer automatically.

Manual pairing edits

Swap board assignments and flip colors before publishing. Changes are reflected in standings and exports.

Public Registration & Payments

Self-registration form

Players register from the public tournament page. Registration opens automatically when you advance to Registration Open status.

Approve / reject workflow

Review pending registrations and approve or reject each. Approved players are added to the tournament immediately.

Capacity & waitlist

Set a max player count. When full, new players join the waitlist automatically. Promote waitlisted players when a spot opens.

Entry fees via Stripe

Players pay the entry fee through hosted Stripe Checkout before their registration is submitted. Webhooks confirm payment automatically.

Promo / discount codes

Percent-off or fixed-amount codes per tournament. A 100% discount skips Stripe entirely. Deactivate codes at any time.

Revenue dashboard

Per-tournament view of collected, refunded, net, and outstanding amounts with per-registration detail.

Refunds

Issue full refunds from the registrations tab. Stripe processes the reversal immediately.

Pairings & Standings

One-click round generation

Generate pairings for all sections at once. Board numbers restart at 1 per section.

Results entry

1-0 / ½-½ / 0-1 per board. Standings recalculate on every result. Bye receives 1 point automatically.

Tiebreaks

Buchholz, Median Buchholz, Sonneborn-Berger, and Tournament Performance Rating (TPR) — all computed live.

Public live standings

Players view current standings on the public page without logging in. Updates immediately when results are entered.

Prize fund

Declare a total prize fund and schedule (1st, 2nd, per-section winner, custom categories). Displayed prominently on the public page.

Digital Check-In

QR code self check-in

Display the QR code at the venue entrance. Players scan it on their phone and tap their name. Each link is signed to the player — no spoofing.

Manual check-in

Check players in or undo a check-in from the organizer dashboard. Search by name for fast lookup in large fields.

Round start threshold

Set a minimum checked-in count before Round 1. Torneo warns you if you generate pairings before the threshold is met.

Regeneratable QR codes

Invalidate existing QR links at any time by regenerating the per-tournament check-in secret, without rotating the app secret.

Player Communications

Email notifications

Registration submitted, approved, rejected; round pairings posted; withdrawal confirmation; 24-hour tournament reminder. Toggle each event per tournament.

SMS notifications

Players receive their board assignment by SMS when pairings post, and a reminder SMS 24 hours before the event starts.

SMS opt-out

Every SMS includes a signed unsubscribe link. One tap opts the player out permanently — no account required.

Bulk email to players

Compose and send a message to all players (or a specific section) from the Players tab. Counts against the daily outbound limit.

Magic link login

Organizers can sign in without a password. Players can access their personal pairings and standings via a one-time emailed link.

Federation Tools

FIDE TRF export

FIDE TRF format with player ratings, federation codes, results, and bye markers. Per-section exports supported.

US Chess cross-table

Plain-text cross-table grid for US Chess submission. USCF IDs included when provided. Per-section exports supported.

Export readiness check

Click Check to see exactly which players are missing fields required for submission, before you download.

FIDE ID validation

Upload the monthly FIDE XML supplement. FIDE IDs show a verified / not-found badge in real time as you enter them.

USCF ID validation

Upload the monthly USCF supplement (requires affiliate access). Badges show verification status without blocking player entry.

Tournament Websites

Public tournament page

Every tournament gets a public page at torneo.org/t/{slug}. No login required. Mobile-optimised for players looking up boards mid-round.

Live results feed

Pairings and standings refresh automatically every 30 seconds. Players always see the current round.

Custom branding

Set an accent colour and enable the enhanced website mode per tournament.

Sponsors

Add sponsor logos, names, descriptions, and links. Displayed as a strip on the public tournament page.

Announcements

Post news updates on the public tournament page. Appears as a News tab with an unread count badge.

Tournament discovery calendar

Opt any tournament into the platform-wide calendar at torneo.org/tournaments. Server-rendered with structured data for Google Search indexability.

Organizer Tools

Assistant organizers

Invite co-directors by email with granular permissions: check-in, pairings, registrations, or payments — any combination.

Staff activity log

Per-tournament log of all actions taken by assistant TDs. Your own actions are excluded so you can audit assistant activity cleanly.

Tournament archival

Archive completed tournaments to keep the dashboard tidy. All data and pairings are preserved. Unarchive at any time.

Dark mode

Full light/dark theme toggle with system preference detection and localStorage persistence.

Audit log

Every state-mutating action is logged with actor, timestamp, and IP address.

Ready to run your next tournament?

Free to use. No credit card required to get started.

Torneo.org is operated by Sencira LLC