Help
Learn how to use Diamond Core
1. GETTING STARTED
Diamond Core is a sports league management platform. It lets you manage tournaments, teams, players, game schedules, live scoring, and statistics — all in one place.
Signing In
To use Diamond Core, you need an account. Go to the login page and enter your username and password. Once signed in, you will see the home page with all available sections.
Your Role
What you can do depends on your role:
- Viewer — You can browse games, rosters, and scores (read only).
- Scorer — You can do everything a Viewer can, plus score live games and manage lineups.
- Administrator — Full access, including creating tournaments, teams, players, and games in the Setup area.
Your Organization
Diamond Core supports multiple organizations. If you belong to more than one, you can switch between them using the dropdown in the top-right corner of the screen, next to your name. Tournaments, games, and scoring data are scoped to your current organization. Players and clubs are shared globally across all organizations.
3. MESSAGES
Diamond Core includes an internal messaging system. Users within the same organization can send messages to each other directly within the platform — no external email required.
Accessing Messages
Click the mail icon (envelope) in the top navigation bar to open the inbox panel. The inbox slides open and shows your recent messages.
Unread Badge
A red badge on the mail icon shows the number of unread messages. The badge disappears when all messages have been read.
Inbox Panel
The inbox panel shows your recent messages. Each entry displays the sender name, subject, a short preview of the message body, and the timestamp. Unread messages appear bold and highlighted so you can quickly spot new mail.
Composing Messages
To send a new message:
- Click the Compose button in the inbox panel header.
- Search and select one or more recipients. Each recipient shows a colored status dot: green means online, red means offline.
- Enter a subject (required) and your message body.
- Optionally attach files: drag & drop files onto the compose area, click to browse your device, or paste images directly from your clipboard. You can attach up to 5 files, each with a maximum size of 5 MB.
- Click Send to deliver the message.
Reading Messages
Click a message in the inbox to view the full message. The detail view shows the sender, all recipients (each with an online/offline status dot), the complete message body, and any attachments.
Downloading Attachments
If a message includes attachments, they appear as clickable links in the message view. Click an attachment link to download the file to your device.
Deleting Messages
Click the Delete button in the message view to remove a message from your inbox. Deleting a message only affects your inbox — other recipients still see their own copy.
Message Retention
Messages are automatically deleted after 15 days, including all attachments. There is no way to recover messages after they are removed.
4. GAMES
Games List
The Games page shows all scheduled and completed games. Each row shows the date, tournament (with host country flags), edition, phase (e.g. Round Robin, Medal Round), teams (with country flags), venue (with country flag), and game status. If any entity has no country assigned, the UN flag is displayed as a placeholder.
For finished games, the team that won is highlighted in gold and bold โ both its name and its score in the Score column โ so you can spot the winner at a glance. Tied games and games still in progress show no winner highlight.
The list shows the scheduled Time and, right after it, the Actual start taken from the official scoresheet โ so you can compare planned versus real start times at a glance. The Game detail page also shows both, under the date.
Filtering
Use the filter panel at the top to narrow down the list. Click Show Filters to expand the panel. When filters are active and the panel is collapsed, a badge shows the number of active filters. You can filter by:
- Season (year)
- Tournament
- Edition
- Gender
- Field / Venue
- Club name
- Phase (e.g. Round Robin, Medal Round)
- Game status (Scheduled, Live, Final, Canceled, Postponed)
When filters are applied, pill tags appear below the filter panel showing each active filter (e.g. "Season: 2025"). Click Clear All Filters to reset all filters at once.
Sorting
Click any column header to sort by that column. Click again to reverse the order. The active sort column is highlighted in amber with a bold arrow (โฒ or โผ). Hold Cmd (Mac) / Ctrl (Windows) and click another column to sort by multiple columns at the same time (for example, sort by date first, then by game number).
Game Status
- Scheduled — The game has not started yet.
- Live — The game is in progress.
- Final — The game is over and the score is official.
- Canceled — The game will not be played.
- Postponed — The game has been delayed to another date.
If a game has been in Live status for more than 24 hours, a red Stale badge appears next to its status. This usually means the game was never properly finalized or canceled after it ended.
A No scoresheet badge appears on a finished game that was played and whose result counts in the record and standings, but has no detailed scoresheet (no play-by-play or box score). Because there is no scoresheet, that game is excluded from batting and pitching statistics โ which is why a team's stats "G" can be lower than its games played. The badge shows in both the Games list and the Game detail. Forfeits are not marked this way (they carry the Forfeit badge and have no batting by rule). Loading the scoresheet makes the game count in statistics automatically.
Game Detail
Click any game to see its detail page. This shows the full scoreboard with the score by inning, team lineups, and links to the box score and scoring sheet.
Player Detail: Click any player name in the lineup tables to open a detail modal showing the player's profile, tournament stats (batting and pitching), game log, biography, and sanctions.
Umpires / Officials: When a game is imported from an official TAS file, the umpires are captured automatically and shown in an Umpires / Officials section (between the Defensive Alignment and the Lineup), listing each umpire and their field position (Home Plate, 1B, 2B, 3B, LF, RF). The same section also shows the actual start time, the game duration, and the attendance when those are present in the file. Officials can be added, edited, or removed in the admin under Game Officials.
Games scraped from a federation site also capture the scorers and the Technical Commissioner (TC) โ the senior tournament official who supervises the umpires and scorers and signs off on the official result โ alongside the game's location (city) and weather (conditions and temperature).
Backfilling existing games: Umpires, start time, and attendance were not captured by older imports. To add them to games that already exist, use Setup → Backfill Game Info and re-upload the original TAS files (one file, several files, or a whole folder). This is fully additive — it only adds the new fields and never changes scores, statistics, or standings.
If the venue has GPS coordinates, a map is displayed with the venue location. Click Get Directions below the map or inside the map marker popup to open Google Maps with turn-by-turn directions from your current location.
Editing the Line Score: Administrators can edit the inning-by-inning line score (runs per inning, plus Hits and Errors) directly on the game detail page while a game is live. Editing is locked automatically once the game is final, forfeited, or once live scoring has started. Users granted the Line Score Editor role can also edit the line score for live games in their own organization, but that role grants no other access. Edits are reflected immediately in the Today's Games carousel and in broadcast feeds (scorebugs). Note: if a game is later imported from an official tournament file, the imported result replaces any manually entered line score.
Reopen Game: If a game was finalized by mistake — for example the line score needs a correction — administrators can click Reopen Game on the game detail page to return it to Live status. This unlocks the line score again so it can be edited. After making the correction, click Finalize Game again to recompute the standings, rankings, and recap from the corrected score.
Number of innings: The line score shows the game's regulation innings. This defaults automatically by sport — 7 for softball and 9 for baseball — and can be overridden per phase under Setup → Phases (Regulation Innings). If a game is tied after regulation, an + Add Inning button appears on the line score: click it to add an extra inning column, enter the runs, and Save Line Score — repeat for each additional extra inning.
Delete Game: Superusers can delete a game using the Delete Game button in the page header. A confirmation dialog shows the game code and warns that all scoring data, lineup events, notes, and statistics will be permanently removed. After deletion, you are redirected to the landing page.
Forfeit Games
A forfeit happens when a team cannot play or when a game must be stopped before it finishes. The opposing team is awarded the win. There are two types of forfeit:
- No-Show — The team never takes the field. For example, a team's bus breaks down and they cannot arrive. The official score is automatically set to 7-0 (in softball) or 9-0 (in baseball), with 1 run per inning for the winning team. Since no baseball was actually played, no individual player statistics are recorded for anyone.
- In-Game — The game starts but is stopped before it finishes. This usually happens when a player is ejected and the team does not have enough players to continue. For example, after 5 innings a player is expelled and the team only has 8 players left, which is below the minimum. The actual scores that were played are kept in the records, but the official final result becomes 7-0 (or 9-0). If the game lasted at least 5 complete innings (this number is configurable in Forfeit Rules), batting and pitching statistics still count — but no pitcher is awarded a Win, Loss, or Save decision.
How to declare a forfeit: Open the Game Detail page and click Declare Forfeit. You will be asked to choose:
- The type — No-Show or In-Game
- Which side wins — Home or Away
- A comment explaining what happened (for example, “Player #12 ejected in the 5th inning, team below minimum”)
A withdrawn team can never be the forfeit winner: if you pick the side that has dropped out of the tournament, the system blocks it with a clear message, because a withdrawn team always forfeits to its opponent. Pick the other side.
Once declared, a red Forfeit badge appears on all game lists, the game detail page, box score, and scoring sheet so everyone can see it at a glance. If a forfeit was declared by mistake, click Undo Forfeit to reverse it. Forfeit fields can also be edited in the Setup Game Edit form and in the Admin section.
Automatic detection during TAS import: When you import games from TAS (The Automated Scorebook) HTML files, the system decides whether a game was a forfeit from the box score, never from the pitcher decisions alone. A TAS file shows “Win - None. Loss - None. Save - None.” whenever no pitcher earned a decision, and the most common reason for that is a tie — nobody won, so nobody gets a win or a loss. A tie is imported as a tie, with its real score.
Only two things make the import declare a forfeit: an empty game file with no innings, no plays and a 0–0 score, which is imported as a No-Show forfeit (this works even for a no-show the scorer left empty and never finalized in TAS); or the word “forfeit” / “forfait” written by the scorer in the game comments, which is imported as an In-Game forfeit.
If a game that was actually played was forfeited but the scorer did not write that word, TAS gives no way to tell it apart from a tie. The import will not guess: it imports the real score and adds a warning to the import report, so you can open the game and click Declare Forfeit yourself. Because TAS files never say which team caused a forfeit, the winner side is left blank on imported forfeits and a red warning appears on the game page until you set it — a forfeit with no winner is never counted as a win for anybody.
5. LIVE SCORING
The scoring sheet is the heart of Diamond Core. It is a digital version of the official paper scoring sheet used by scorers at the field.
Live Scoring Game Selection
Click Live Scoring in the sidebar to open the Live Scoring game selection page. This page lists all games with the same filters, sorting, and pagination as the Games page, including live timers for in-progress games. A Sheet column shows a green check mark if a scoring sheet already exists, or a dash if not. Clicking a game row takes you directly to the scoring sheet (if one exists) or to the game detail page (where you can create one).
Getting to the Scoring Sheet
From the game detail page, click the scoring sheet link. If a scoring sheet does not exist yet, an administrator or scorer can create one. You must have the Scorer role to record plays.
The Grid
The scoring grid has rows for each player in the batting order and columns for each inning. On the left you see:
- # — Jersey / uniform number
- Name — Player name
- Pos. — Fielding position (P, C, 1B, 2B, SS, 3B, LF, CF, RF, DH...)
On the right side of the grid are batting statistics columns (PA, R, H, 2B, 3B, HR, RBI, BB, K, and more). These update automatically as you score.
Pitcher Statistics
Below the scoring grid, a Pitcher Statistics section shows per-pitcher stats for the displayed team's own pitchers. The table displays one row per pitcher (ordered by appearance) with the following columns:
- IP — Innings Pitched
- BF — Batters Faced
- H — Hits
- R — Runs
- BB — Walks
- K — Strikeouts
A totals row at the bottom sums up all pitchers. When a pitcher change happens mid-game, each pitcher's stats reflect only the batters they faced. The pitcher stats section is also included in the printable version (Export PDF) for both teams.
Inning Columns
Each inning gets its own column. If all batters have batted in one inning and the inning is not over yet, the system automatically creates a continuation column marked with a "+" sign. Columns are added as needed — there is no limit.
Footer Stats
At the bottom of each inning column, a small grid shows the totals for that inning:
- R — Runs scored
- H — Hits
- BB — Walks
- E — Errors
- LOB — Runners left on base at the end of the inning
Away and Home Teams
At the top of the scoring sheet you will see tabs to switch between the Away and Home team. Each team has its own scoring grid. The currently displayed team is highlighted.
Scoring Sheet Controls
The scoring sheet header has several action buttons:
- Game Details — Navigate to the game detail page for this game.
- Manage Lineup — Open the lineup management page. This button is disabled when the game is finalized or the scoring sheet has been submitted, abandoned, or finalized (lineup changes are no longer allowed).
- Export PDF — Open a printable version of the scoring sheet.
Scoring Sheet States
A scoring sheet moves through these stages:
- Created — The sheet exists but scoring has not started.
- Started — Scoring is active. You can record plays.
- Submitted — The scorer has finished and submitted the sheet for review. You can reopen a submitted sheet to make corrections before finalization.
- Finalized — The sheet is locked. No more changes can be made.
A scoring sheet can also be Abandoned at any time before it is submitted. Abandoning a sheet means the scoring session is discarded. The game score, statistics, and rankings are not updated. The game remains in its current status (usually Live). An abandoned sheet can be resurrected using the Resurrect button, which returns it to the Created state so scoring can be restarted.
Auto-Save Indicator
When you record a play, undo, redo, or perform any scoring action, a status indicator appears near the game timer showing the save progress:
- Saving... — The action is being sent to the server. A spinning icon is shown.
- All changes saved — The server confirmed the action was saved successfully. Shows a check mark and the time.
- Save failed โ retrying — A network error occurred. The system will automatically retry up to 3 times.
- Save failed — All retry attempts failed. Check your network connection and try the action again.
What Happens When You Finalize
When a scoring sheet is finalized, the system automatically:
- Locks the scoring sheet โ no more changes can be made.
- Syncs the final game score (runs, hits, errors per inning) to the game record.
- Refreshes batting statistics โ all player and team batting stats are recomputed.
- Refreshes pitching statistics โ all pitcher stats are recomputed.
- Calculates rankings โ both teams' Elo ranking points are updated based on the game result.
This means statistics, rankings, and game scores on all pages are updated immediately after finalization. There is no delay or background process.
Game Notes & Protests
The Game Notes panel on the scoring sheet lets you record free-text observations during a game โ such as weather conditions, incidents, rule disputes, or any other notable information.
- Opening the panel: Click the "Game Notes" header below the Event History section. The panel remembers whether it was open or closed.
- Adding a note: Type your observation in the text area and click Add. Notes are timestamped and attributed to the current user.
- Filing a protest: Check the "Protest Filed" checkbox to flag the game as protested. This adds a red Protest badge to the scoring sheet, game lists, game detail, and box score pages. Uncheck to remove the flag. Protests can only be changed while scoring is in progress (started state).
- Viewing notes: Notes appear read-only on the Game Detail, Box Score, and printed/exported scoring sheet pages.
6. RECORDING PLAYS
To record a play, click the next empty cell in the scoring grid (highlighted with a dashed border). A panel will appear with buttons for the type of play.
Play Types
Hits
- Single (1) — Batter reaches first base on a hit.
- Double (2) — Batter reaches second base on a hit.
- Triple (3) — Batter reaches third base on a hit.
- Home Run (HR) — Batter hits the ball out of the park and scores.
- Inside-the-Park Home Run (IHR) — Batter circles all bases and scores without the ball leaving the field.
- Four-Base Award (4) — Batter is awarded all four bases (ground-rule).
Outs
- Out (O) — Batter is retired (fly out, ground out, etc.).
- Strikeout (K) — Batter strikes out on a called third strike.
- Strikeout Foul (K) — Batter strikes out on a foul ball.
Walks
- Walk (BB) — Batter receives four balls and goes to first base.
- Intentional Walk (IBB) — Pitcher deliberately walks the batter.
Other
- Fielder's Choice (FC) — Batter reaches base; the fielder chose to attempt an out on a different runner (see Special Plays).
- Sacrifice Fly (SF) — Batter flies out, but a runner scores.
- Error (E) — Batter reaches base because a fielder made an error.
- Lost Turn (LT) — A batter missed their turn at bat and the opposing team did not appeal. This is a scoresheet notation only — it does not count as a plate appearance, at-bat, or out, and has no effect on any statistics.
Runs Batted In (RBI)
When recording a play, you can set the number of RBI (runs batted in). This is the number of runners who scored because of the batter's action.
Runners Who Scored
If runners score on the play, the system shows checkboxes with the names of runners currently on base. Check the box next to each runner who scored on this play.
Bases-Full Warning
When the bases are loaded (3 runners on base) and you record a reach-base event (Single, Double, Triple, Walk, Intentional Walk, Error, or Fielder's Choice) without selecting which runners scored or were put out, the system shows an orange warning: "Bases full โ select which runners scored or were put out." The panel stays open with your selections preserved. Check the appropriate runners in "Who scored?" or "Runners out on play" and the warning dismisses automatically. Home Runs and forced walks handle runner accounting automatically and do not trigger this warning.
Inning Sequence Enforcement
The scoring sheet enforces strict baseball/softball inning sequence: Top 1 โ Bottom 1 โ Top 2 โ Bottom 2, and so on. Only the current cell (next batter in the rotation) is clickable. All other empty cells appear locked and grayed out.
When three outs have been recorded in an inning, the system automatically switches to the opposing team's scoring sheet and advances to the next inning.
If you navigate to the wrong team's tab, a banner will appear indicating which team is currently batting and providing a link to switch to the correct tab. No cells will be clickable on the wrong team's tab.
To correct a mistake, void the incorrect event (click on the filled cell and choose Void). The voided cell appears with a dashed amber border โ click it to re-enter the play. The gold cursor stays at the normal scoring position so you can continue scoring. Multiple gaps can be visible at once and filled in any order. The scoring sheet cannot be submitted while unfilled gaps remain.
If filling a gap creates 3 outs in that inning and events were recorded after the gap, a dialog will ask whether to remove the subsequent events or cancel the gap-fill.
Editing a Play
To review or change a play you already recorded, click on that cell. A panel will show the details and options for that event, including the ability to void (cancel) the play if needed.
Undo / Redo
The Undo button in the toolbar voids the last recorded event for the active team. This is a quick way to reverse a mistake without navigating to the cell. Undo is only available while the scoring sheet is in the "Started" state.
The Redo button restores the most recently undone event. Redo is not available if new events have been added after the undo. You can also use Ctrl+Z (Undo) and Ctrl+Shift+Z (Redo) keyboard shortcuts. On Mac, use Cmd instead of Ctrl.
Event History
Below the scoring grid, you can expand the Event History panel. This shows a table of every play recorded so far โ including substitutions and re-entries โ in reverse order (newest first). Lineup changes appear with a purple badge (SUB for substitutions, RE for re-entries) and show which player was replaced. You can choose how many events to show per page (10, 25, or 50). Click any column header to sort the table by that column (click again to reverse the sort direction). The panel remembers whether you left it open or closed.
7. SPECIAL PLAYS
Fielder's Choice (FC)
A fielder's choice means the batter reached base safely because a fielder chose to attempt an out on a different runner. The runner may or may not actually be put out.
- Record the FC event for the batter from the Other category.
- A Runners out on play section appears with checkboxes for each runner on base. If a runner was put out on the play, check that runner. You can optionally select the base where the out occurred using the dropdown next to each runner.
- Click Submit to record the event. A purple curved line will connect the FC cell to the runner's cell and a red circle will appear on the runner's cell to indicate the out.
- If no runner was put out (everyone safe), simply submit without checking any runner.
Double Play / Triple Play
When a batter makes an out and one or more runners are also put out on the same play:
- Record the out event for the batter (Out, Strikeout, Sacrifice, etc.).
- Set the Outs on Play field to 2 (for a double play) or 3 (for a triple play).
- A section called Runners Out on Play will appear. Check the box next to each runner who was also put out.
Curved connector lines will appear between the batter's cell and each runner cell that was put out, just like with a fielder's choice.
Courtesy Runner
Some leagues allow a courtesy runner to replace a batter on the bases. When recording a play, check the Courtesy runner used option, then select the player who ran. The cell will show "CR" and the runner's jersey number in the corner. Runs still count for the original batter, not the courtesy runner.
Limit: Only one courtesy runner is allowed for non-pitchers per half-inning. Pitchers can use courtesy runners without limit. If a non-pitcher has already used a courtesy runner in the current half-inning, the option will be disabled for other non-pitcher batters until the next inning.
Run Scored
When a runner scores, their original cell in the grid gets a small box filled in the top-right corner. This is the standard way scoring sheets show that a run was scored.
New Score Sheet for Baseball and Fastpitch Softball (preview)
A new scoring engine for Baseball and Fastpitch Softball is being built alongside the existing sheet. The existing Live Scoring sheet is unchanged and continues to work exactly as before.
- Who can see it: Super Users only, while it is being built.
- Where it is: add
/score-v2/to a game address, for example/games/1234/score-v2/. There is no menu link yet. - What it does today: it displays a game that was recorded with the new engine, in official WBSC notation, together with the line score. It is read-only - there is no data entry yet.
- Long innings are drawn correctly: when a team bats all the way through the order in one inning, the sheet opens a second column that still shows the same inning number, marked with an arrow.
The score sheet is the Federaciรณn Canaria form
The new sheet is drawn as the printed Federaciรณn Canaria score sheet: the header block, the team line score, DEFENSE at the left with PO, A, E, DP, IP and the position, the players and their numbers, the inning columns, OFFENSE at the right, and the AB / R / ER / H / A / E / LOB block underneath. The federation crest and title appear only on the Canary Islands site; other federations get the same ruled form with an empty header until they have one of their own.
- Names are written as the manual asks: surname in capitals, first name in small letters โ
MOLITOR Paul. Each batting position has three lines, for the starter and two substitutes, and each line carries that player's own uniform number. - Each box is four squares, one per base. What the batter did is drawn in the square of the base he reached โ a single bottom right, a double top right, a triple top left โ and a line closes each square as he reaches that base. The middle of the box is filled in when he scores. That is why a hit is never written across the middle: the run would cover it.
- Hits are drawn as strokes, not letters. The manual marks a single with one crossbar, a double with two and a triple with three, so you count the bars rather than read text in a very small space.
- A batter who was retired has his mark in the middle of the box with a ring around it, and the last batter of an inning has a diagonal line in the corner โ the next inning starts with the name below it.
- The totals under the grid show two figures per inning: that inning on the left and the running total on the right. The first inning shows only its own figure, because a running total there would be the same number written twice.
- The sheet has eleven numbered lines because the same form serves both sports. Baseball bats nine. Fastpitch softball using a designated player lists ten, because the FLEX takes the tenth position without batting. The remaining lines are there for extra substitutes.
- The statistics boxes are filled with tally marks, the way a scorer fills them by hand: one stroke per event, and the fifth stroke crossed through the other four so you can count groups of five at a glance. Above ten the marks are replaced by the number. Innings played, batters faced and at-bats always show a number instead of marks.
- An empty box means the situation never arose โ it does not mean zero. A zero would say the chance came and was not taken, which is a different thing.
- A player who changes position gets a line for each one, so you can see which position he made his errors at. Innings played is recorded for every fielder, not only the pitcher; a designated hitter, pinch hitter or pinch runner gets none, because they do not take the field.
- Each base in a box carries the number of the batter who drove the runner there โ plain if the batter earned it, in brackets if an error gave it away. A walk and a strikeout also carry a running count for that pitcher, which starts again at one for a new pitcher and picks up where he left off if he comes back.
- The blocks under the grid hold the pitchers, the catchers and the balance. The pitchers block shows whether each one throws right or left, in the order they pitched, with the win, loss or save. Totals are always shown, even when only one pitcher was used.
- The balance is the sheet checking its own arithmetic. If it does not add up, the sheet says so in red rather than looking finished. It only reports once the game is over, because mid-game it is not supposed to add up yet.
Scoring a play (preview)
The new sheet can now record plays. Each result has a button and a keyboard key, shown on the button itself. The batter and the pitcher are taken from the lineup, and the batting order is enforced by the engine, so a play out of turn is refused rather than silently accepted.
Runners advance only where the rules compel it: a forced runner moves one base, and everyone else holds. Free runner movement, stolen bases and fielding credit come in the next step. Guessing an advance would invent a run, which is worse than asking you to complete the entry.
If the same entry is sent twice โ a slow connection, a double tap โ it is scored once. Each play carries an identifier created before it is sent, so a repeat is recognised as the same play rather than added again.
Every result the engine can score has a button. The plays you meet every inning are on the main row with a keyboard key; the rarer ones - infield fly, catcher's interference, obstruction, out by rule, inside-the-park home run, the foul-territory catches, appeal plays, defensive indifference, illegal pitch - are under "Other plays". Nothing the engine understands is missing from the sheet, because a play you cannot enter is a play that goes unrecorded.
Runners, fielders and runner plays (preview)
Each runner on base is listed with a menu. Leave a runner on "held" and nothing happens to them. Choose a base and they go there; choose "out" and they are retired. Nothing is assumed: a runner you do not touch does not move, because guessing an advance would invent a run.
There is one exception, and it is a rule rather than a guess: a runner cannot be passed by the batter. If the batter finishes on second or third, nobody may still be standing at or behind him โ he would have had to go past them, which is an out, not a position on the field. So a triple with a runner on second scores that runner, and a double with runners on first and second scores the runner from second, because the runner from first needs third. If you ask for something else, the play is refused and the runner is named, rather than the run quietly going missing.
For the same reason, two runners can never be left on the same base. If an entry would put one man where another already stands, the play is refused and you are asked where each of them went, or which of them was put out. It is never resolved by quietly dropping one of them.
The Fielders box takes the chain exactly as it is written on a score sheet: 6-4-3 for a double play, 8 for a fly to centre, E6 for an error by the shortstop. The last fielder to handle the ball cleanly is credited with the putout and the ones before them with assists.
Runner plays โ a stolen base, a wild pitch, a pickoff โ are on their own row and act on a runner, not on the batter. The batter stays at the plate and the batting order does not move.
Extra innings and the tiebreak runner
When a game is tied after the regulation innings, most competitions start each extra inning with runners already on base. Baseball places two โ on second and first โ from the 10th inning; fastpitch softball places one on second from the 8th. You do not choose the players: they are the batters immediately before the leadoff man, worked out from the batting order, and the earliest of them stands on the furthest base.
This is set per competition, in the Tournament Wizard, in Setup under the edition, and in the Admin. Leaving it on "Official rule for the sport" is right for almost everyone. Choose "No" for a competition that plays extra innings normally, and the runners are never placed. You can also move the starting inning or change how many runners are placed.
A placed runner never counts as an earned run against the pitcher: he reached base by rule rather than because the pitcher let him on, so a pitcher's ERA does not suffer because the game went long.
Half-inning caps: ending an inning on batters or runs
Youth and development competitions often end a half-inning early so one long innings cannot run away with the schedule. The side is retired once a set number of batters have come to the plate, or once a set number of runs have scored in that half-inning, even when fewer than three outs have been made. The Summer League Baseball Tenerife U15 and U23 competitions are scored this way.
This is set per competition, in the Tournament Wizard, in Setup under the edition, and in the Admin. Both boxes are empty by default, which means no cap: the half-inning ends on three outs as normal, and every competition that has not set them is scored exactly as before. There is no default number โ a competition that plays under caps sets its own. The two can be used together, and whichever is reached first ends the half-inning.
"Caps apply in the last inning" has three settings, and leaving it unstated is not the same as choosing No. Unstated means the competition has not said, and the caps do apply โ which is how these rules are normally played. Choose No only for a competition that deliberately plays its final inning out.
A pitcher is credited with a full inning for a half-inning ended by a cap, because the rule declared that inning complete. Crediting him only the outs he happened to record would divide his earned runs by a fraction of an inning and put an ERA on the leaderboard several times higher than the one he pitched to.
On the score sheet the end-of-inning diagonal is drawn as always, so you can still see at a glance who leads off next โ which matters more under a batters cap, because the order does not go back to the top. The cell also carries a mark saying the inning ended on the rule, so a reader who counts fewer than three outs in the column knows why.
Undoing a play (preview)
Undo removes the last play and puts the game back exactly as it was. The play is not erased: it stays in the record marked as corrected, with who corrected it and when. Ctrl+Z (or Cmd+Z) works from anywhere on the page.
Correcting a play from earlier in the game also removes the plays after it. This is not a limitation: the batting order is positional, so taking one plate appearance out puts every later batter out of turn. Paper scoring behaves the same way โ you erase back to the mistake. You are told how many plays that is before anything is discarded.
Substitutions (preview)
Only players on the roster who are not already in the lineup are offered, so you cannot pick someone the game will refuse. The substitute takes the batting slot of the player being replaced; you do not have to restate it.
A pinch runner or courtesy runner is the only substitution that changes the game state, because they take over a base somebody is standing on. It is recorded as part of the play sequence for that reason, and the substitute inherits the pitcher responsible for that runner โ a relief pitcher does not become answerable for a run just because the offense changed runners.
8. LINEUPS AND SUBSTITUTIONS
Lineup Game Selection
Click Lineup in the sidebar (or on the landing page) to open the Lineup game selection page. This page lists all games with the same filters and sorting as the Games page. Each row shows a Lineup column with H (Home) and A (Away) indicators — a green check mark means that team's lineup has been initialized, and a dash means it has not. Click any game row to open the lineup management page for that game.
Setting Up the Lineup
Before scoring can begin, both teams need a lineup. From the scoring sheet, if lineups are missing, you will see a Set Starting Lineup button. Click it to open the lineup management page. You can also navigate directly from the Lineup game selection page.
For each team, select the players from the roster and assign them a batting order (1 through 9 or more) and a fielding position. You must also designate the starting pitcher.
If you need to change the lineup before scoring starts, click Edit Lineup on the lineup management page. This re-opens the initialization form pre-populated with the current lineup. After making your changes and saving, the old lineup is replaced with the updated one.
Once a game is Live, the lineup page becomes read-only. All lineup changes (substitutions, position changes) must be made through the Scoring Sheet. A banner on the lineup page provides a direct link to the scoring sheet. Superusers retain override access to edit lineups directly during live games.
On finalized or read-only lineups, clicking any player name (including substituted players and pitcher history) opens the Player Detail modal window showing their tournament stats, game log, and biography.
Making a Substitution
During the game, click the Substitute Player button on the scoring sheet. Choose the player leaving the game and the replacement player from the bench. Set the inning and position for the new player.
Substituted players are shown with a line through their name in the grid. The new player appears in a new row with a marker showing when they entered the game.
Re-entry
If the league rules allow it, a player who was substituted out can re-enter the game. The system tracks which players are eligible for re-entry and displays them when needed.
Designated Hitter (DH)
When the DH rule is enabled, a team may designate one player (the DH) to bat in place of another player. During lineup initialization, assign a player to the DH position, then use the DH Bats For dropdown to select which player the DH will replace in the batting order. The selected player will play defense only and be marked as Does not bat (DNB). The DH can bat for any player, not just the pitcher.
On the scoring grid, the DNB player appears at the bottom of the lineup in a greyed-out row with no scoring cells. Their batting order shows DNB instead of a number.
On the lineup management page, a DH Active badge is shown when the DH rule is in effect. The DH player's row shows the DH annotation, and the replaced player's row is marked as DNB.
Pitcher Changes
To change the pitcher, use the Change Pitcher button in the pitcher area of the scoring sheet. The pitcher change panel shows two sections:
- From Lineup — Current lineup players who can swap positions with the pitcher.
- From Bullpen — Roster players not yet in the game. Selecting a bullpen pitcher creates a substitution: the old pitcher leaves the game and the new pitcher enters at the same batting order position.
The IP (innings pitched) display shows the current pitcher's individual IP, not the total team pitching. When a pitcher change occurs, a red horizontal line appears at the bottom of the last batter's cell that the departing pitcher faced, following standard scoring convention.
Undoing Pitcher Changes and Substitutions
If you made a pitcher change or player substitution by mistake, you can undo it as long as no scoring events have been recorded since the change.
- Undo Pitcher Change — Open the pitcher change panel and click the Undo Pitcher Change button at the bottom of the panel. A confirmation prompt will appear.
- Undo Substitution — Open the substitution panel and click the Undo Substitution button at the bottom of the panel. A confirmation prompt will appear.
The undo buttons only appear when an undo is possible (i.e., no scoring events have been recorded since the change). Once any play is recorded after the change, the undo option is no longer available.
Pitcher History
On the lineup management page, below the Current Pitcher card, a Pitcher History section appears when more than one pitcher has entered the game. Pitchers are listed in order of appearance — the starting pitcher first (marked with an SP badge), followed by each reliever with an indicator showing the inning they entered (e.g., T4, B3). This section is only visible when there have been pitcher changes.
Lineup Export
The lineup management page includes an Export dropdown button in the page header. It offers three export formats:
- Print / PDF — Opens a print-friendly page with the full lineup card (game header, batting lineups with substitution history, pitchers in order of appearance, and bench players). Use your browser's print dialog to save as PDF.
- Excel (.xlsx) — Downloads a spreadsheet with the same information, formatted with headers and column widths for easy reading.
- CSV — Downloads a plain-text comma-separated file that opens in any spreadsheet application.
All export formats include: tournament and game header, batting lineup with substitution history for both teams, pitcher history in order of appearance, and bench players (roster players not in the lineup).
9. GAME TIMER
Some tournaments use a time limit for games. Diamond Core includes a countdown timer that you can use during the game. The default timer duration is set per tournament edition by the administrator. If no duration is configured, it defaults to 45 minutes.
Using the Timer
The timer appears on the game detail page (and inside the scoring sheet). You can set the number of minutes and seconds, then use the buttons to control it:
- Start — Begins the countdown.
- Break — Pauses the timer (for rain delays, breaks, etc.).
- Resume — Resumes the countdown after a break.
- Reset — Sets the timer back to its starting value.
Color Coding
The timer display changes color based on how much time is left:
- Green — More than 5 minutes remaining.
- Yellow — Between 1 and 5 minutes remaining.
- Red (pulsing) — Less than 1 minute remaining.
When the timer reaches zero, a sound plays and a banner appears to let everyone know that time is up.
10. BOX SCORES
Results & Box Scores Page
Click Results in the sidebar (or on the landing page) to browse game results. By default, the page shows Final and Live games. Each game appears as a card with the inning-by-inning line score (Runs, Hits, Errors) always visible.
Each card includes a View Full Box Score link that takes you to the detailed box score page with full batting and pitching stats for both teams.
Click Show Filters to expand the filter panel. You can narrow results by season, tournament, edition, gender, country, venue, club, or status. You can clear the default status filter to see all games. When filters are active and the panel is collapsed, a badge shows the count. Active filter pills appear below the panel; click Clear All Filters to reset.
Game Recap
At the top of the game detail and box score pages for finalized games, a Game Recap provides a brief text summary of the game. The recap includes:
- Winner and Loser — The winning team and final score.
- Score Margin Description — Word choice reflects how decisive the victory was (dominated, defeated, beat, edged, topped).
- Innings Played — Number of innings (if different from regulation).
- MVP / Top Performer — The winning team's top batter with their hitting statistics (e.g., "Alice Johnson led the offense going 3-for-4, a home run, 2 RBI").
- Star Pitcher — The winning team's best pitcher with innings pitched, strikeouts, and runs allowed (e.g., "Maria Lopez pitched 6.0 innings, 8 strikeouts"). A pitcher must have pitched at least 1 full inning to qualify.
- Big Inning — If a team scored 4 or more runs in a single inning, that inning is highlighted in the recap.
The recap is displayed for final games only. Games that are scheduled, live, canceled, or postponed will not show a recap.
Full Box Score Page
The box score page gives a summary of a completed (or in-progress) game. You can reach it from the game detail page or from the Results & Box Scores page.
The box score shows:
- Game Recap — A natural-language summary of the finalized game (see "Game Recap" section above).
- Line Score — Runs per inning for both teams, plus total Runs (R), Hits (H), and Errors (E). Innings that were not played are displayed as “X” in italic muted text; hover over them to see a “Not played” tooltip. When the home team wins without needing to bat in the last inning (walk-off rule), the bottom of that inning shows “X” instead of “0”.
- Player Statistics — Individual batting stats for each player who appeared in the game.
- Left on Base (LOB) — For games imported from official TAS files, the batting table includes a per-player LOB column (runners left on base), with a team LOB total on the Totals row. LOB is taken directly from the official scoresheet and is not shown for games scored live in Diamond Core.
- Stolen Bases (SB) & Caught Stealing (CS) — For baseball and softball (fast pitch, slow pitch WBSC, Chata, modified), the batting table includes SB and CS columns, taken from the game's play-by-play and totals on import. They are not shown for 360, which does not use base stealing, and they never count toward at-bats or plate appearances.
- Fielding (Defense) — For baseball and softball (every variety except 360), the box score includes an Away Fielding and Home Fielding table for each player who took the field, with Putouts (PO), Assists (A), Errors (E) and Total Chances (TC). PO and A come from the imported box score; E is read from the play-by-play and charged to whoever was playing that position at the moment of the error (following substitutions). 360 does not track defense, so these tables are hidden there.
- Pitcher Decisions — For games imported from TAS or WBSC, the pitching table shows who got the Win (W), Loss (L), or Save (S) next to the pitcher's name. These are color-coded so you can spot them quickly: green for the winning pitcher, red for the losing pitcher, and blue for a save. For example, you might see “John Smith (W)” in green. If the game was a forfeit and the “Pitcher Decisions Excluded” rule is turned on (in Forfeit Rules), no pitcher gets a W, L, or S — the decision badges are hidden entirely.
Player Detail: Click any player name (shown in gold) in the box score tables to open a detail modal showing the player's profile, tournament stats (batting and pitching), game log, biography, and sanctions. This works on the compact box score (Results page), the full Box Score page, Game Detail lineups, and the Statistics pages.
11. STATISTICS
The Statistics page provides an interactive explorer for batting and pitching statistics aggregated from all finalized scoring sheets. Statistics are computed from play-by-play scoring data and refreshed automatically when a game is finalized.
Aggregation Levels
Use the level selector at the top of the page to choose how statistics are grouped:
- Player Stats โ Individual player statistics per tournament edition and team. Each player shows their nationality flag, each team its country flag, and each edition its tournament host country flags.
- Team Stats โ Team-level aggregates per tournament edition. Each team shows its country flag and each edition its tournament host country flags. Click any team name to view its Rankings detail page.
- Tournament Stats โ Tournament-wide totals across all teams. Each tournament shows its host country flags (international tournaments may have multiple).
Team "G" โ games with a scoresheet vs games played
Team statistics can only be calculated from games that have a detailed scoresheet (play-by-play or an imported box score). A team's record and its games list, by contrast, count every finished game. These are legitimately different numbers, so on Team Stats and on Compare Teams the games column shows both โ for example 16 of 22 (16 games with a scoresheet, out of 22 played).
A small breakdown under the number explains the gap: forfeits (a forfeit is a real game but produces no batting, so it never adds to statistics) and, in red, games without a scoresheet โ real games that were played and whose result is recorded, but whose detailed scoresheet was never loaded. Hover the red note to see exactly which games are missing (date, opponent, result). Loading those scoresheets makes them count automatically. If you ever see games without a scoresheet, the system also raises a loud administrator alert so the gap is never hidden.
Stat Tabs
- Basic โ Counting stats: G, PA, AB, R, H, 1B, 2B, 3B, HR, IHR, 4B, RBI, BB, IBB, K, SF
- Rates โ Rate stats: AVG (batting average), OBP (on-base percentage), SLG (slugging), OPS (on-base plus slugging), OPS+ (league-adjusted OPS), K% (strikeout percentage), BB% (walk percentage)
- Advanced โ Advanced metrics: ISO (isolated power), BABIP (batting average on balls in play), K% (strikeout percentage), BB% (walk percentage), HR/PA (home runs per plate appearance), XBH% (extra-base hit percentage), SecA (secondary average), RC (runs created), wOBA (weighted on-base average), wRC+ (weighted runs created plus โ the gold standard batting metric, 100 = league average), WAR (wins above replacement โ batting, baserunning and defense combined)
Stolen-base stats appear for baseball and softball (not 360): SB% (stolen base percentage = SB / (SB + CS)) on the Rates tab, and SBR (stolen base runs = 0.3 ร SB โ 0.6 ร CS) on the Advanced tab. SB, CS, SB% and SBR are also shown on the Matchups "Batting vs Teams" tab, Compare Players, and the Player Detail / Player Profile pages.
What WAR includes: WAR (Wins Above Replacement) combines a batter's three sources of value into one number: batting (from wOBA), baserunning (stolen bases credited, caught stealing penalized, measured against the league's base-stealing rate), and defense (errors compared with the league-average error rate for the chances handled). Baserunning and defense are measured relative to the league average, so they nudge a player's WAR up or down by small amounts โ a clean fielder and smart base-stealer gain a little, an error-prone or frequently-caught player loses a little. Pitching is rated separately with pWAR, which is fielding-independent by design and is not affected by these defensive figures.
Why WAR and pWAR look small: WAR is a counting stat โ it measures total wins contributed, so it grows with the number of plate appearances or innings played. In a short tournament a great player accumulates only a fraction of a full season's value, so the raw figure is naturally small. The WAR/600 and pWAR/200 columns project that same skill to a full-season pace (600 plate appearances for batters, 200 innings for pitchers), so players can be compared regardless of how much they played. The benchmarks are configurable per tournament.
To keep the projection meaningful, the pace is shown as โ until a player has enough plate appearances (batting) or innings pitched (pitching): projecting a handful of appearances to a full season would produce a wildly inflated, unreliable number. The raw WAR/pWAR is always shown. The minimum sample is configurable per tournament.
Filters
Click Show Filters to expand the filter panel. You can narrow results by Tournament Edition, Team, Gender, Phase (game type), Home/Away, Date Range, or minimum plate appearances (Min PA). When filters are active and the panel is collapsed, a badge shows the count. Active filter pills appear below the panel; click Clear All Filters to reset.
Sorting
Click any column header to sort the table by that stat in descending order. Click again to reverse the sort direction. You can also sort by player name, team name, or tournament name โ click those column headers the same way. Hold Cmd (Mac) / Ctrl (Windows) and click another column to sort by multiple columns at the same time.
Player Detail
When viewing player-level statistics, click any player name to open a detail modal showing the player's profile, tournament stats (batting and pitching), game log, biography, and sanctions.
For pitchers, the Pitching Tournament Stats table shows the W (Wins), L (Losses), and S (Saves) columns next to a tournament flag, the Game Log shows a Dec (Decision) column for each game pitched โ W, L, S, H (Hold), BS (Blown Save), or - (no decision); a blown save can be combined with a win or loss, e.g. “L, BS” โ and the Matchup Splits > vs Teams table shows W/L/S against each opponent. These appear both in the modal and on the full Player Profile page.
The Tournament Stats batting and pitching tables include a Club column (after Edition) showing the club the player represented, prefixed with that club's own country flag. When a player appeared for more than one club in the same tournament and year, the batting row shows "N Teams" (e.g. "2 Teams") instead of a single name; click it to open a tooltip listing every club with its flag. This is a display convenience only โ no statistics are combined or changed. The Game Log also shows the player's club for each game, between Date and Opponent. All of this appears both in the Player Detail modal and on the full Player Profile page.
Season Calendar
The Game Log tab on the Player Profile includes a Season Calendar that plots every game the player appeared in on a real calendar, coloured by that game's wOBA โ from elite (blue) through excellent, above average, average and below average, down to poor (red); a legend below the calendar explains the colours. Switch the view between Month, Week, Day and Year with the selector at the top right (on phones it opens in Week view), move through time with the arrows, and jump back with the Today pill. In Week and Day views each game sits at its actual or scheduled start time, and if a player had more than one game that day each one is shown at its own time. Hover over or tap a game to see its date and time, the teams (Away vs Home), the final score and the player's wOBA for that game; clicking a game opens the Stat Explainer. The ? button at the top right explains the calendar at any time.
Games the player pitched also carry a FIP (Fielding Independent Pitching; lower is better) โ shown next to the wOBA in each game's calendar chip and tooltip, and plotted over the season in a separate Performance Trend (FIP) chart above the calendar, with its own 5-game rolling average and the same quality colours. A player who only batted in a game shows just the wOBA; one who only pitched shows just the FIP.
Stat Explainer
On the Statistics pages, the full Player Profile page, and inside the Player Detail modal, computed stats (AVG, OBP, SLG, OPS, OPS+, K%, BB%, ISO, BABIP, HR/PA, XBH%, SecA, RC, wOBA, wRC+, WAR for batting; ERA, ERA+, RA, FIP, WHIP, K/9, BB/9, H/9, K/BB, pWAR for pitching) are clickable. A small gold dot below the number indicates it can be clicked. Clicking opens the Stat Explainer modal, which shows:
- The stat name, description, and the player's name and tournament edition
- The exact formula used to compute the stat
- Color-coded variable cards showing the player's actual values (e.g., Hits, At Bats, Walks)
- A step-by-step calculation substituting the player's numbers into the formula
- For advanced stats: a league average context bar showing whether the player is above or below the league average
Close the modal by clicking the X button, pressing Escape, or clicking outside the modal.
Min PA Qualification
Use the Min PA filter to set a minimum number of plate appearances. This is useful for rate stats (AVG, OBP, etc.) where small sample sizes can be misleading.
When Stats Are Refreshed
Statistics are refreshed in two ways:
- Automatically โ Every time a scoring sheet is finalized, all batting and pitching statistics are immediately recomputed from the play-by-play data of all finalized games.
- Manually โ Administrators can click the "Refresh Stats" button at the top of the Statistics page to trigger an immediate refresh. This is useful if data corrections were made outside the normal workflow.
Statistics are computed from materialized views in the database. They always reflect the latest finalized game data.
Batting Charts
Below the statistics table, a charts dashboard provides visual summaries of the batting data. All charts respond to the same filters applied to the table above.
- Top Batters by OPS โ Horizontal bar chart showing the top 15 batters ranked by OPS (On-base Plus Slugging), split into OBP and SLG components.
- Team Batting Comparison โ Grouped bar chart comparing each team's AVG, OBP, and SLG side by side.
- Hit Distribution โ Donut chart showing the breakdown of all hits by type: Singles, Doubles, Triples, and Home Runs.
- Plate Discipline โ Bubble chart plotting each batter's walk rate (BB%, horizontal) against strikeout rate (K%, vertical), for batters with at least 10 plate appearances. Green and red dotted lines mark the league-average BB% and K% for the current filter, splitting the plot into four quadrants colored hot-to-cold: bright red elite discipline (high BB%, low K%), orange contact hitter, teal patient power, deep blue free swinger. Bubble size reflects BABIP, flagging batters who may be lucky or unlucky on balls in play.
- Runs vs Hits โ Combo chart with bars for Hits and RBI per team, and a line overlay for Runs scored.
- Batting Average by Inning โ Line chart showing the team or league batting average for each inning, revealing when lineups tend to be hottest.
- Outcome Heatmap โ Color-coded grid showing the count of each plate appearance outcome (Hit, Walk, Strikeout, Sacrifice, Other Out) per inning.
Charts adapt to dark and light mode automatically. If no data is available for a chart, a "No chart data available" message is displayed in its place.
Pitching Statistics
The Pitching Statistics page shows statistics from the pitcher's perspective. Pitcher attribution is computed automatically: for each plate appearance, the system identifies which pitcher was active for the opposing team at the time of the event.
Pitching Stat Tabs
- Basic โ Counting stats: G, W, L, SV, HLD, BS, QS, IP, BF, H, R, ER, BB, IBB, K, HR, IHR
- Rates โ Decision stats (W, L, SV, HLD, BS, QS) plus rate stats: ERA, ERA+, RA, WHIP, H/9, BB/9, K/9, K/BB
- Advanced โ Decision stats plus advanced metrics: ERA, ERA+, FIP, pWAR, RA, WHIP, H/9, K/9, BB/9, K/BB
Pitcher decisions (W, L, SV, HLD, BS) and Quality Starts (QS) are automatically computed when a game is finalized or imported. W/L/SV are taken from the official game data for imported games; Holds and Blown Saves are always calculated by the engine. QS requires the starting pitcher to pitch 6+ innings with 3 or fewer earned runs (5+ innings for softball). A pitcher can have both a Blown Save and a Win or Loss in the same game (e.g., a reliever blows a save but the team comes back to win). Admins can also override the HR allowed per pitcher per game from the Pitcher Decisions page โ this corrects FIP and other advanced stats.
Min IP Qualification
Use the Min IP filter to set a minimum number of innings pitched. This is useful for rate stats (RA, WHIP, etc.) where small sample sizes can be misleading. Options: No minimum, 1+ IP, 3+ IP, 7+ IP, 14+ IP.
Fielding Statistics
The Fielding Statistics page shows defensive statistics. It is available for every baseball and softball variety except 360, which does not track defense. Reach it from the Batting / Pitching / Fielding selector at the top of the Statistics page, with Player, Team and Tournament aggregation levels.
- PO (Putouts) and A (Assists) come from the imported box score.
- E (Errors) is read from the play-by-play and charged to whoever was playing that position at the moment of the error, following substitutions.
- TC (Total Chances) = PO + A + E.
- FLD% (Fielding Percentage) = (PO + A) / TC, shown to three decimals.
- RF/G (Range Factor per Game) = (PO + A) / Games.
Fielding is aggregated per player (with the position played shown next to the name). Putouts and assists are per-player totals from the official files and are not split by position. Fielding statistics come from imported games.
Pitching Charts
Below the pitching statistics table, a charts dashboard provides visual summaries of the pitching data. All charts respond to the same filters applied to the table above.
- Top Pitchers by RA โ Horizontal bar chart showing the top 15 pitchers ranked by lowest Run Average (min 3+ IP).
- Team Pitching Comparison โ Grouped bar chart comparing each team's RA, WHIP, and K/9 side by side.
- Pitch Outcomes โ Donut chart showing the breakdown of all plate appearance outcomes: Strikeouts, Walks, Hits, and Other Outs.
- Pitcher Workload โ Bubble chart plotting each pitcher's IP against K/9, with bubble size proportional to batters faced.
- RA by Inning โ Line chart showing the runs allowed rate per inning across all pitchers.
- K/BB Rate โ Scatter chart plotting each pitcher's strikeout rate against walk rate per batter faced.
- ERA+ vs K% (Hot & Cold) โ Scatter chart plotting each pitcher by strikeout rate (K%, horizontal) and ERA+ (vertical). A red dotted line marks the league-average ERA+ of 100, and a green dotted line marks the K% average for the current filter. Dots are colored by quadrant: bright red for elite pitchers (high K% and high ERA+), orange for contact survivors, teal for unlucky power arms, and deep blue for underperforming pitchers.
Stat Tooltips
Hover over any statistical column header (PA, AB, AVG, OBP, WHIP, etc.) to see a tooltip explaining what the abbreviation means. On a phone or tablet, tap the header instead โ the same explanation appears. This works on the scoring sheet, box scores, statistics pages, standings, and player detail modals.
In the Percentile Rankings on the Player Detail modal and the full Player Profile page, hover over (or, on a phone or tablet, tap) any stat โ its label or its bar โ to see a longer, plain-language explanation of what the stat is, why it matters, and what a high or low value tells you. Hover or tap the "Percentile Rankings" title to learn what a percentile means. These explanations are written for everyone, so you can go as deep into the numbers as you like.
The radar (pentagon) chart next to the bars groups those stats into five skills โ Contact, Power, Patience, Discipline and Production. Hover the chart to see what each skill means, which stat it is built from, and the player's percentile for it.
Pitchers get their own Pitching Percentile Rankings below the batting ones โ the same colored bars and radar, but for pitching stats (ERA, RA, WHIP, FIP, K/9, BB/9, K/BB, H/9, ERA+, pWAR, K% and BB%), with the radar's five skills being Strikeouts, Control, Run Prevention, Contact and Value. A player only sees the batting section if they have batting stats and the pitching section if they have pitching stats, so two-way players see both.
Above the Percentile Rankings is a tournament filter. It defaults to All tournaments, which combines everything the player has done across every tournament into a single percentile profile โ so a player is not judged by one weak tournament alone. Pick a single tournament from the list to see the percentiles, radar and scouting summary for just that tournament. The filter works the same way on the Player Detail modal and the full Player Profile page.
Between the tournament filter and the Percentile Rankings is a row of KPI cards showing a player's headline numbers at a glance โ for batting PA, AVG, OBP and SLG (with OPS, OPS+ and wOBA added on the full Player Profile), and for pitching IP, ERA, WHIP and K/9 (with ERA+, FIP and K/BB added on the full profile). Each card shows the value for the tournament chosen in the filter above. For a single tournament it also compares that value with an earlier one, coloured green when better, red when worse and grey when unchanged; two buttons choose what to compare against โ Previous edition (the same tournament's earlier edition) or Previous played (the last tournament the player appeared in). On All tournaments the cards show career totals with no comparison. Click any rate card (such as AVG or ERA) to open the Stat Explainer for that value. The cards appear only when the player has batting or pitching stats.
Leaderboard
The Leaderboard (in the sidebar between Statistics and Matchups, marked with a crown) shows the top players and teams for every stat in one tournament, as a card for each stat. Four view tabs at the top โ MVP, Batting, Pitching and Defense โ switch which leaders you see, exactly like the Statistics page. Use the tournament selector to choose the edition, and the Players / Teams toggle to switch between individual and team leaders.
- Counting stats (H, HR, RBI, R, SB, K, W, L, SV, โฆ) rank by the raw total โ the best number leads, with no minimum.
- Rate and formula stats (AVG, OBP, SLG, OPS, wOBA, ERA, FIP, WHIP, โฆ) require a minimum to qualify: a player must reach a minimum number of plate appearances (batting) or innings pitched (pitching), calculated from the games their own team has played. The default is 2.7 PA and 0.8 IP per team game, the same idea as a Major League batting or ERA title, scaled for tournament play.
- Leaders by phase: when a tournament is configured for it, a Phase selector appears and leaders are computed within the selected phase only. Otherwise leaders cover the whole tournament.
- Players with a zero or empty value for a stat are not shown โ only genuine leaders appear. If more players are tied at the cut-off, a line such as "3 more tied with 2 HR" is shown. Teams show every value the stat has (including zero and negatives), since each team is a single entry.
- Tap a player to open their profile, or a team to see that team's games in the tournament. Formula stats show a small gold dot โ tap the value to open the Stat Explainer with the full calculation.
- The "N more tied" line is a link โ click it to open exactly those tied players in the Roster Eligibility page, filtered to the tournament.
- The MVP view gathers all the "Best of" cards in one place โ Batting MVP, Best Hitters and Power Hitters; Best Pitchers, Power Pitchers and Most Durable. Each ranks the top three with gold/silver/bronze medals using a 0โ100 score that blends several stats. Tap a player's name to open their profile, or tap the score (gold dot) to open an explainer that shows exactly which stats were used โ each with its full name and acronym (e.g. wRC+, OPS, WAR) โ the player's value and percentile in each, and how the score was built. The MVP view is players-only.
- For baseball and softball (not 360) the Defense view shows the fielding leaders: Putouts (PO), Assists (A) and Total Chances (TC), plus two formula stats โ Fielding Percentage (FLD%) and Range Factor per Game (RF/G) โ which each carry the gold dot to open the Stat Explainer. FLD% and RF/G require a minimum number of total chances to qualify, so a perfect mark on a single play does not top the board. Fielding leaders are always for the whole edition (they are not split by phase).
How many leaders each card shows, the qualification minimums, and whether leaders are split by phase are all configurable per tournament and per edition under Setup.
12. STANDINGS
Click Standings in the sidebar (or on the landing page) to view tournament standings. The page shows Win-Loss-Tie records computed in real time from game results.
Filtering by Tournament and Phase
Above the standings tables there is a Tournament dropdown. Pick a tournament edition to focus the page on it. Once a single tournament is selected, a row of phase pills appears (for example All Phases, Fase Regular, Round Robin, Final) so you can filter the table to a specific phase. Choose All Tournaments in the dropdown to return to the default overview of every tournament that is currently playing or upcoming.
The phase pills only appear when one tournament is selected โ this keeps the labels unambiguous, since different tournaments can have phases with the same name.
How Standings Are Computed
Standings are computed in real time every time you open the page โ there is no caching or delay. The system calculates Win-Loss-Tie records directly from game results, including games that are currently live. This means standings always reflect the very latest scores, even during an in-progress game.
Unlike statistics and rankings (which are refreshed when a game is finalized), standings do not require finalization to update.
Standings Table
Each tournament edition is displayed as a card with a standings table. The table columns are:
- # — Rank position
- Team — Club name with country flag. Click any team name to view its Rankings detail page, including Elo rating history and charts.
- W-L-T — Wins, Losses, and Ties
- Pts — Points (Win = 1, Tie = 0.5)
- % — Winning percentage (Points / Games Played)
- GB — Games behind the leader
- RS / RA — Runs Scored and Runs Allowed
- Diff — Run Differential (RS - RA)
- L5 — Record over the last 5 games
- Strk — Current streak (e.g., W4 = 4 consecutive wins)
By default, teams are ranked by winning percentage (descending), then head-to-head record among tied teams, then run differential. Administrators can change the primary sort order (see Standings Sort Method below).
Tiebreaker Rules
Administrators can configure a tiebreaker rule per tournament phase (in Setup > Phases). The available rules are:
- Head-to-head, then run differential (default) — Teams are sorted by total points (Win = 1, Tie = 0.5). When teams have the same points, tiebreakers are applied in order: (1) head-to-head record among tied teams, (2) run differential (RS - RA).
- Run differential only — Teams are sorted by total points. When tied, run differential is used directly (no head-to-head check).
- WBC (World Baseball Classic rules) — Teams are sorted by winning percentage (wins / games played) instead of total points. This means a team with fewer games played but a better win rate ranks higher. When teams have the same winning percentage, tiebreakers are applied in order: (1) head-to-head record among tied teams, (2) fewest runs allowed in games among tied teams, (3) run differential in games among tied teams, (4) fewest runs allowed in all pool games, (5) run differential in all pool games, (6) pre-tournament seed number (lower seed = higher rank).
- Custom — Administrators define their own tiebreaker order by selecting from these criteria and arranging them in priority order: head-to-head record, run differential (overall or among tied teams), runs allowed (overall or among tied teams), winning percentage, runs scored, TQB (Team Quality Balance โ net runs per inning, overall or among tied teams), ER-TQB (earned runs allowed per defensive inning, overall or among tied teams), and pre-tournament seed number. When "Custom" is selected, the form shows a list where you can add criteria, reorder them with arrow buttons, and remove them. The first criterion is tried first; if teams are still tied, the next criterion is applied, and so on.
Tiebreaker Cues on the Standings
When a tiebreaker decides the order of teams that finished level, the Standings show a small gold badge next to the team name — for example H2H (head-to-head) or TQB — so it is clear why a team sits where it does, even when the deciding number isn't a visible column. This is what answers the classic question: "we have the same record and a better run differential, so why are we below them?" — the badge shows the head-to-head result decided it.
- The small number in the badge is the team's rank among the tied group for that tiebreaker (1 = won that tiebreaker). A team can show more than one badge when several steps were needed.
- A legend under the table explains each badge, and it lists only the tiebreakers that were actually used in that pool — so a tiebreaker like TQB never appears unless it really broke a tie.
- The full configured tiebreaker order for a phase is shown on its Setup → Tournaments → (edition) overview page.
- Click the gold badge to open the Tiebreaker Explainer — the same style as the Statistics "Stat Explainer". It shows, for that team, every step that decided its position: the criterion and its formula, the variables behind the formula with their real values (as cards) and the step-by-step calculation, every tied team with its value for that criterion (ranked, with the team you clicked highlighted), and a plain-language conclusion such as "Wildfox ranks ahead of Azulejos on H2H: +1 vs −1." It is the fastest way to answer a coach, player or fan asking why a team finished where it did.
Standings Sort Method
Administrators can also configure the primary sort order for pool standings, independently from the tiebreaker rule. Two options are available:
- Winning Percentage (default) — Teams are ranked by their winning percentage (points divided by games played). This is the standard sort order for baseball and softball.
- Points — Teams are ranked by total points (Win = 1, Tie = 0.5). This sort order is used for 360 softball.
Pool standings always show all columns: W, L, T, Pts, PCT, Diff, and GB. The active sort column is highlighted with a bold header and subtle background to make it easy to see which metric determines the ranking.
The sort method controls only the primary ranking order — it does not affect how ties are broken. For example, you can use Winning Percentage sorting with the WBC tiebreaker, or Points sorting with Head-to-head then run differential. The two settings are independent.
Inter-Pool (Crossover) Games
Some tournaments use isolated groups (pools) but also play crossover games between teams from different groups, and those results still count toward each team's group standing. To support this, each round-robin phase has an Include inter-pool games in standings option.
When enabled, any game whose two teams belong to different pools (and which is not assigned to a single pool) counts toward each team's own pool standing. When disabled, only games played within a pool count. You can set this when creating a tournament in the Setup Wizard (on the phase-details step, alongside the tiebreaker and sort options) or later from Setup > Phases by editing the phase.
TQB and ER-TQB (WBSC Tiebreakers)
TQB stands for Team Quality Balance. It is a tiebreaker used by the WBSC (World Baseball Softball Confederation) when two or more teams have the same win-loss record. It answers the question: "How efficiently did each team score and prevent runs, inning by inning?"
Why not just use run differential?
Simple run differential (runs scored minus runs allowed) has a flaw: the home team often does not bat in the last inning when it is already winning. That means the home team played fewer offensive innings but is penalized in run differential because it had fewer chances to score. TQB fixes this by dividing by the actual number of innings each team played on offense and defense.
How TQB is calculated
TQB has two parts:
- Scoring rate = Runs Scored ÷ Offensive Innings (how many runs you score per inning you bat)
- Allowing rate = Runs Allowed ÷ Defensive Innings (how many runs you give up per inning you are in the field)
TQB = Scoring rate − Allowing rate. A higher TQB is better — it means the team scores more runs per inning than it allows.
Example
The Eagles and the Sox both finish a 5-game pool with 3 wins and 2 losses. Who ranks higher?
- Eagles: Scored 30 runs in 33 offensive innings, allowed 20 runs in 35 defensive innings. TQB = (30 ÷ 33) − (20 ÷ 35) = 0.909 − 0.571 = +0.338
- Sox: Scored 28 runs in 35 offensive innings, allowed 18 runs in 33 defensive innings. TQB = (28 ÷ 35) − (18 ÷ 33) = 0.800 − 0.545 = +0.255
The Eagles rank higher because their TQB (+0.338) is better than the Sox (+0.255). Even though the Sox allowed fewer total runs (18 vs 20), the Eagles were more efficient per inning on both offense and defense.
TQB among tied teams
There is also a variant that only counts games played between the tied teams, ignoring games against other opponents. This prevents a team from inflating its TQB by running up the score against a weak team that is not part of the tie. If a 3-way tie exists between the Eagles, Sox, and Bears, only the Eagles-Sox, Eagles-Bears, and Sox-Bears games count.
ER-TQB (Earned Run TQB)
ER-TQB stands for Earned Run Team Quality Balance. It is typically used as a secondary tiebreaker when TQB is also tied. It focuses only on the defensive side and uses earned runs instead of total runs. Earned runs are runs scored without the help of defensive errors — they represent "clean" runs that the pitcher and defense could not prevent even with perfect fielding.
ER-TQB = Earned Runs Allowed ÷ Defensive Innings. A lower ER-TQB is better — it means the team gives up fewer earned runs per inning. Like TQB, there is also an "among tied teams" variant.
Example
After TQB, the Eagles and the Sox are still tied. Now we check ER-TQB:
- Eagles: 15 earned runs allowed in 35 defensive innings. ER-TQB = 15 ÷ 35 = 0.429
- Sox: 16 earned runs allowed in 33 defensive innings. ER-TQB = 16 ÷ 33 = 0.485
The Eagles rank higher because their ER-TQB (0.429) is lower than the Sox (0.485) — the Eagles allowed fewer earned runs per inning they were in the field.
Earned Runs and ERA
Earned runs (ER) are runs scored without the aid of defensive errors. They are tracked per game and shown in the box score pitching table. ERA (Earned Run Average) measures a pitcher's effectiveness: the number of earned runs allowed per full game. The formula is ER × regulation innings / innings pitched (for softball: ER × 7 / IP; for baseball: ER × 9 / IP). A lower ERA is better.
Unresolvable Ties and Tiebreaker Games
When all tiebreaker criteria have been exhausted and teams remain tied at the advancement boundary (the cutoff between teams that advance and those that don't), the system detects the situation and alerts the administrator.
An alert banner appears on the pool games page in Setup showing which teams are tied and how many can advance. The administrator has two options to resolve the tie:
- Tiebreaker Game — Create a special tiebreaker game between the tied teams. The game is marked with the "Tiebreaker" game type and does not affect the regular pool standings. Once finalized, the winner is placed ahead of the loser and advancement proceeds normally.
- Manual Resolution — Resolve the tie without playing a game (e.g., coin toss, lot draw). The administrator selects the resolution method, orders the teams, and provides an optional note. The system records the resolution and proceeds with advancement.
Tiebreaker games are excluded from regular standings calculations โ they only serve to break the specific tie. Teams that are tied share the same rank number in the standings display (e.g., two teams at rank 2 instead of ranks 2 and 3).
Forfeit and Dropped Team Penalties
When Forfeit Rules are configured for a tournament (in Setup > Tournaments > Forfeit Rules), two additional penalties can affect how tied teams are ranked in the standings:
- Forfeit Tiebreak Penalty — If two or more teams finish with the same record and remain tied after all normal tiebreaker criteria (head-to-head, run differential, etc.), any team that caused a forfeit loss during the season is placed at the bottom of that tied group. A small yellow flag badge appears next to the team name in the standings table. For example: Team A, Team B, and Team C all finish 5-3. After tiebreakers, they are still tied. But Team C forfeited one game during the season, so Team C drops to the bottom of that three-way tie.
- Dropped Team Tiebreak Penalty — A team that withdrew from the competition (was “dropped”) is always placed at the absolute bottom of the standings regardless of its W-L record. This is a hard rule: even a dropped team that had banked enough real wins to lead the table by record still ends up last. If multiple teams have dropped, they are ordered among themselves by the standard tiebreaker chain (head-to-head first, then run differential, etc.), so the team that beat the others in real games sits one rank above the others at the bottom. The dropped team's row is dimmed and shows a small red user-x icon badge, with “Withdrawn” visible on hover. Both pool standings and the overall edition standings apply this rule.
Important: The forfeit penalty only re-orders within a tie group — a team with 6 wins still ranks above a team with 5 wins regardless of forfeits. The dropped-team penalty is stricter: a withdrawn team always sinks to the bottom of the standings regardless of record. Both penalties can be turned on or off individually per tournament and overridden per edition.
"As of today" rule: when a team is dropped, only games with a date of today or earlier are immediately marked as forfeit wins for the opponent. Games scheduled in the future stay scheduled and do not count in the standings until their dates arrive — so the standings always reflect the state of the competition as of today, never a hypothetical "team forfeits all the rest of its games right now". Each time the standings page is loaded, any pending forfeit whose date has now passed is finalized automatically.
Live Indicator
Teams with a game currently in progress show a red pulsing dot next to their name. Live game scores are included in the standings calculation.
Champion & Runner-up Badges
Tournament placements are generated automatically when the final phase of a tournament edition completes. This works for all phase types: bracket tournaments (single/double elimination), Best-of-N series, and round robin/super round (using final standings). A gold trophy icon appears next to the champion's name in both pool and overall standings tables. The runner-up receives a silver award icon. The Tournament Results section at the top of each edition card also shows gold, silver, and bronze medal badges for the top three finishers. Administrators can also enter or override placements manually in Setup > Rankings > Placements.
Default View
On a first visit, the page automatically shows tournaments that are currently playing or upcoming, soonest first, capped at 10 cards. If nothing is currently playing, it falls back to the 10 most-recently-finished tournaments. A short note at the top of the page reminds you of this default behavior so you know why past tournaments aren't visible until you filter.
Filters and Phases
Click Show Filters to expand the filter panel. You can narrow standings by tournament, edition, season (year), currently-playing tournaments, or club name. When filters are active and the panel is collapsed, a badge shows the number of active filters. Active filter pills appear below the panel; click Clear All Filters to reset.
Season is the simplest way to browse historical tournaments. Pick a year (e.g., 2024) and the page lists every tournament edition of that calendar year โ past, present, or future โ bypassing the "currently playing or upcoming" default.
Phase tabs (e.g., Round Robin, Medal Round) appear below the filters when game types are configured. Click a tab to see standings for only that phase of the tournament.
Game Type (Phase)
Administrators can set a game's phase (e.g., Round Robin, Medal Round) from the game detail page using the phase dropdown below the tournament name. This allows filtering standings by tournament phase.
Pool Standings
When a tournament edition uses the multi-phase system with round-robin pools, the standings page shows per-pool standings cards. Each pool card displays a compact table with W-L-T records, points, and run differential for teams in that pool.
Pool cards show a completion badge: "Complete" (green) when all round-robin games have been finalized, or "In Progress" (amber) when some games are still pending. A game count (e.g., 4/6) shows how many games are finalized out of the total expected.
When the phase has an advancing count configured, the top N teams in each pool are highlighted with a green marker indicating they qualify to advance to the next phase. A hint below the table shows "Top N advance".
While pool play is still in progress, teams that have mathematically clinched advancement display an amber outlined checkmark (โ) next to their name. A team has clinched when it is guaranteed to finish in the top N positions regardless of how remaining games play out. A legend at the bottom of the pool card explains the checkmark symbol. Once all games are complete, the clinch indicator is replaced by the standard advancing highlight.
Use the Pool filter dropdown (in the filter panel) to view standings for a single pool. The overall combined standings table appears below the pool cards.
Best-of-N series (for example a Playoff Final split into two series such as Playoff Final P1 and Playoff Final P2, or a Preliminary Final) also appear here, each as its own standings group titled by the series name. A series is marked Complete only when no games remain to play — a tied series with a deciding game still scheduled stays "In Progress".
Within a completed series, the teams that advance to a later round show the green advancing highlight, based on the bracket configuration (which finishing positions feed a later phase). Some formats advance both teams of a series — for example the winner goes straight to the Final while the loser drops to a repechage — so both rows are highlighted; a finishing position that leads nowhere is not.
Each advancing team also carries a small green badge showing where it goes next, taken from the destination group's name — for example → Final or → R1.
13. PLAYOFF BRACKET
Click Bracket in the sidebar to view the playoff bracket tree for elimination phases. The bracket displays match cards organized by round in a left-to-right tree layout with connector lines joining each match to the match it feeds, making it easy to track the progression of playoff competition. When a knockout is split across several phases (for example Quarterfinals, Semifinals and Final), they are shown together as one connected tree.
Tournament Selection
Use the Tournament Edition dropdown to select which tournament you want to view. The bracket will automatically refresh to display the elimination bracket for that tournament.
Bracket Display
Matches are displayed as cards organized by round (Quarterfinals, Semifinals, Final). Each card shows:
- Home Team — Country flag, team name, and score (or dash if not yet played)
- Away Team — Country flag, team name, and score (or dash if not yet played)
- Placeholder Labels — When teams are not yet determined, the card shows the source (e.g. "Winner of SF1")
- Clinched Badge — Teams assigned to a bracket match display an amber outlined checkmark (โ) next to their name while the game has not yet been decided. A legend below the bracket explains the symbol. Once the match is decided, the badge is removed.
- Winning Team — Highlighted in bold font
- Status Badge — Final (green), Live (red with pulsing dot), Ready, or Scheduled
- Match Code — Displayed in the card footer (e.g. SF1, F)
- Clickable Card — Click the entire match card to view full game details (when a game is linked)
Best-of-N Series
Series-based playoffs (best-of-N) are shown here too: each series is its own column, labelled by the series name (for example Playoff Final P1, Playoff Final P2, R1 — Preliminary Final) and ordered toward the Final. All the games of a series (game 1, game 2, and a deciding game if needed) appear stacked in that series' column.
Navigating a Large Bracket
The whole knockout is shown as one connected tree. On a wide screen every stage is visible at once. When the tree is too wide to fit — for example on a phone — ‹ and › arrows appear at the edges: tap them to slide one stage at a time (Quarterfinals → Semifinals → Final). On a touch screen you can also swipe left or right. The arrows disappear automatically when the whole bracket fits.
Double Elimination
Double elimination brackets are split into three sections: Winners Bracket, Losers Bracket, and Championship. Each section displays its own bracket tree with round headers and match cards.
Rescheduling Bracket Matches
Admins can reschedule bracket matches directly from both the bracket visualization page and the setup bracket page. On the bracket visualization, hover over a match card and click the pencil icon in the footer to open the reschedule modal. On the setup bracket page, click the calendar icon in the Date column.
The reschedule modal lets you change the date, time, and venue. If a game has already been created for the match, the game's schedule is automatically updated to stay in sync. Matches with live or finalized games cannot be rescheduled.
14. RANKINGS
Rankings show how teams compare across tournaments using an Elo-based rating system. Unlike Standings (which show Win-Loss-Tie records within a single tournament), Rankings track each team's overall competitive strength over time.
Viewing Rankings
Click Rankings in the sidebar or on the home page. The page shows one leaderboard card per competition, so rankings stay encapsulated and never mix unrelated competitions. When several competitions are grouped under a ranking umbrella (for example a Liga and a Cup played by the same teams), they share one combined leaderboard card instead.
A combined ranking is marked with an umbrella icon next to its name — both on the Rankings list and on a team's ranking detail page. Standalone competitions show no icon. Click the umbrella icon to open a small window listing every tournament edition combined into that ranking (with its year and dates), so you can see exactly which competitions feed the shared rating.
Geographic Scopes
Rankings are organized by geographic scope. Scopes form a hierarchy — for example, World > Europe > Spain > Canary Islands — but each scope has its own independent leaderboard with separate Elo points. A team can be ranked #1 in the Canary Islands and #5 in Europe at the same time.
The most commonly used scopes (such as World and Europe) appear as tabs at the top of the leaderboard page. Additional scopes are available in a dropdown menu next to the tabs.
Each tournament category defines which geographic scopes it contributes to. When a game is finalized, the rating is updated only in the scopes assigned to that category — there is no automatic roll-up from a child scope to a parent scope. For example, a local Canary Islands league updates the Canary Islands leaderboard but does not automatically affect the European or World leaderboard unless the administrator explicitly assigns those scopes to the category.
Filtering
Open the Filters panel to narrow the page. Pick a single League from the dropdown to show only that league's leaderboard, or use Club Search to find a specific team by name within each card.
How Rankings Work
Rankings use the Elo rating system, the same method used in chess, international football (FIFA), and many other sports. The core idea is simple: when you beat a strong opponent you gain more points, and when you lose to a weak opponent you lose more points. Over time, each team's rating settles at a number that reflects their true competitive strength.
Rankings are updated automatically every time a scoring sheet is finalized. A live or in-progress game does not affect rankings until the scoring sheet is finalized. Administrators can recalculate all rankings from the Setup page, which replays every finalized game in chronological order and recomputes all Elo points from scratch.
Configure WBSC Rankings (Administrators)
For federations imported from WBSC, administrators can turn rankings on for every European competition at once, without any manual data entry. In the Admin area, open Tools → Configure WBSC Rankings. The tool classifies each European WBSC edition into a competition tier (national-team championship, European club cup, top domestic league, or lower division), assigns the matching game weight and start points, links every edition to the Europe scope, and keeps clubs and national teams in separate leaderboards. National-team championships also receive placement bonuses.
Run a preview first โ it lists every edition and its detected tier and never writes anything. When you apply, the Elo ledger is rebuilt for the affected competitions, counting every game with a completed line score across all seasons (no season cutoff). The tool is safe to run again at any time.
The Rating Formula โ Step by Step
Every time a game is finalized, the system calculates how many points each team gains or loses using this formula:
Point change = Game Weight (I) × Margin Factor (S) × (Actual Result − Expected Result)
There are three pieces that go into this calculation. Let's walk through each one.
1. Game Weight (I) โ How important is this game?
Every tournament is assigned a category by the administrator, and each category has a game weight number (called "I"). A higher number means games in that tournament move rankings more. For example:
- A major international championship might have I = 60
- A regional cup might have I = 40
- A local friendly league might have I = 10
This means winning a championship game moves your rating 6 times more than winning a friendly.
2. Margin Factor (S) โ How big was the victory?
Winning by a large margin counts more than a narrow victory. The system uses the run difference (the absolute difference between the two teams' scores) to calculate a multiplier:
- 0 or 1 run difference — Multiplier = 1.0 (base value, no bonus)
- 2 run difference — Multiplier = 1.5 (50% bonus)
- 3 or more runs — Multiplier = (11 + run difference) ÷ 8
Some examples of how margin affects the multiplier:
- Win by 1 run (e.g., 3–2) → ×1.0
- Win by 2 runs (e.g., 5–3) → ×1.5
- Win by 3 runs (e.g., 7–4) → ×1.75
- Win by 5 runs (e.g., 8–3) → ×2.0
- Win by 10 runs (e.g., 12–2) → ×2.625
The multiplier grows gradually so a blowout counts more, but not overwhelmingly more. This rewards dominant performances without making a single lopsided game distort the rankings.
3. Expected Result โ Who was favored to win?
This is the heart of the Elo system. Before each game, the system calculates the probability of winning for each team based on their current ratings. A team with a higher rating is expected to win more often.
The formula uses a 400-point scale: if one team is rated 400 points higher than the other, that team is expected to win roughly 10 out of every 11 games (about 91% of the time). If both teams have the same rating, each is expected to win 50% of the time.
Here are some common rating gaps and what they mean:
- 0 points apart — 50/50 chance (evenly matched)
- 100 points apart — Higher-rated team expected to win ~64% of the time
- 200 points apart — Higher-rated team expected to win ~76% of the time
- 400 points apart — Higher-rated team expected to win ~91% of the time
The key insight: beating a team you were already expected to beat earns you fewer points, while beating a team above your rating earns you more. Similarly, losing to a much weaker team costs you more than losing to a stronger one.
Worked Example
Let's walk through a real calculation so you can see exactly how it works.
Setup: Team Alpha has 1,500 points. Team Bravo has 1,300 points. They play in a championship (game weight I = 60). Final score: Alpha wins 6–3 (a 3-run margin).
Step 1 โ Margin factor: The run difference is 3. Using the formula (11 + 3) ÷ 8 = 1.75.
Step 2 โ Expected result: Alpha is 200 points above Bravo. The system calculates that Alpha has about a 76% chance of winning (expected result = 0.76). This means Bravo has a 24% chance (expected result = 0.24).
Step 3 โ Actual result: Alpha won, so their actual result = 1.0. Bravo lost, so their actual result = 0.0. (A tie would give both teams 0.5.)
Step 4 โ Calculate point change for Alpha:
- Point change = 60 × 1.75 × (1.0 − 0.76)
- Point change = 60 × 1.75 × 0.24
- Point change = +25.23 points
Step 5 โ Bravo's change: Rankings are zero-sum — the points that one team gains, the other loses. So Bravo loses 25.23 points.
Final ratings: Alpha goes from 1,500 to 1,525.23. Bravo goes from 1,300 to 1,274.77.
Notice that Alpha only gained 25 points despite winning by 3 runs in a major championship. That's because Alpha was already expected to win. If Bravo had pulled the upset and won 6–3 instead, Bravo would have gained about 79.80 points — a much larger swing, because the underdog defied expectations.
Upset Example
Same teams, same championship, but this time Bravo wins 6–3 (the upset):
- Bravo's actual result = 1.0, expected result = 0.24
- Point change = 60 × 1.75 × (1.0 − 0.24) = 60 × 1.75 × 0.76 = +79.80
- Alpha loses 79.80 points
This is what makes Elo rankings fair: upsets are rewarded proportionally. The bigger the gap between the teams, the more the underdog gains (and the more the favorite loses) when the expected outcome doesn't happen.
Placement Bonuses
In addition to game-by-game point changes, teams can earn bonus points for their final finishing position in a tournament. Administrators configure how many bonus points each position gets (e.g., 1st place = +200, 2nd = +100, 3rd = +50). These bonuses are added on top of the game-by-game points when tournament placements are recorded.
Placements are generated automatically when the final phase of a tournament edition completes. This works for all formats: bracket tournaments (single/double elimination), Best-of-N series, and round robin/super round (using final standings). Administrators can also enter or override placements manually.
Starting Points and Auto-Enrollment
Teams do not need to be manually enrolled in the ranking system. The first time a team plays a ranked game, the system automatically gives them starting points (configured per tournament category, typically 1,500). From that point on, every finalized game adjusts their rating.
Starting points seed a team once per rating pool. A rating pool is normally a single competition: a team gets its starting points the first time it plays a ranked game in that competition, and from then on its rating carries forward game to game — like a tennis or chess rating — and is never reset within that competition.
A team that plays in two separate competitions therefore has a separate rating — and a separate "Start" — in each. If you want those competitions to share one rating (for example a Liga and a Cup played by the same teams), group them under a ranking umbrella: then they form one pool, so the team has a single Start and one continuous rating across them. See Ranking Umbrellas below.
The starting-points value you configure on a tournament category is used only to seed brand-new teams entering a pool for the first time. A team that already has a rating in the pool keeps its running rating and ignores that value — which is why different competitions can define different starting points without ever re-seeding existing teams.
Ranking Umbrellas
A ranking umbrella groups several competitions so their ratings combine into one continuous leaderboard. Without an umbrella, each competition keeps its own standalone rating. With one, every team's rating is built from all the umbrella's games together — one Start, one rating, one card on the leaderboard.
Membership is decided per tournament edition, so you choose season by season whether an edition feeds the shared rating. Administrators manage umbrellas in Setup → Rankings → Umbrellas (create one, then tick which editions belong), and the Tournament Wizard offers an umbrella choice when you set up an edition — defaulted to whatever the same tournament used last season, so a normal year is one click. After changing what an umbrella contains, use Recalculate to rebuild the combined ratings.
On the umbrella edit screen each edition row shows the tournament's host-country flag and name so you can tell at a glance where a competition is from. A select / unselect all box in the table header ticks or clears every edition at once, and a live counter shows how many are selected out of the total.
Seeing Where the Points Come From
Open a team's Rankings detail page (click any team name on the Standings or Rankings pages) to see every event that built its rating in the selected scope. The page shows one rating pool: a single competition, or — when the competition is in an umbrella — all the competitions in that umbrella combined. The Events table includes a Tournament Edition column so you can tell at a glance which competition each game, start, or placement belongs to.
- Rating Over Time — hover any point to see every event on that date (opponent, tournament edition, points). Click a point to open the Ranking Explainer, which shows the exact formula, the variables and their values, and a plain-language reason why the rating went up or down. If two things happened on the same date (e.g. a game in each tournament), all of them are shown together.
- Point Changes by Type — click a Game bar to jump to the Game List filtered to the team's won (green) or lost (red) games; click Start or Placement to open that tournament's Standings (you'll be asked which tournament if there is more than one).
- Win/Loss Point Distribution — shows the size of per-game point swings (games only; starting and placement points are not included). Click a bar to see those games.
The total points shown for a team is its current Elo rating in that scope (the running rating after the most recent event) — it already includes every competition in the team's rating pool (a single competition, or all the competitions in its umbrella).
Ranking Seasons
Ranking seasons define date boundaries (e.g., "Season 2025: Jan – Dec 2025") for filtering the leaderboard and club history. Seasons are automatically assigned to ranking entries based on game dates — no manual tagging needed. Seasons within the same league cannot overlap.
When a season is selected on the leaderboard, a Season +/− column appears showing how much each team's rating changed during that period. The club detail page also supports season filtering to see only the ranking history within that period.
Elo ratings are continuous — they carry over from season to season. There is no reset. Seasons are a viewing tool, not a scoring boundary.
Setting Up Rankings in the Wizard
When creating a tournament through the Tournament Wizard (Setup > Tournament Wizard), Step 2 includes a complete Elo Rankings section. You can:
- Enable rankings for the tournament with a checkbox
- Select or create a ranking category (with game weight, start points, and geographic scopes)
- Select or create a ranking season for date-based filtering
- Configure placement bonuses (1st through 10th place) directly in the wizard
All ranking configuration is shown in the Review step before you create the tournament. When the tournament is created, the system automatically links the edition to the selected ranking category and saves any placement bonus configuration.
Table Columns
- # — Rank position (top 3 shown with medal badges)
- Team — Club name with country flag (click to view ranking history)
- Points — Current Elo rating points
- Chg — Point change since last update (green = gained, red = lost, NEW = first ranking)
- Games — Number of ranked games played
Click any column header (Team, Points, Chg, Games) to sort the table by that column. Click again to reverse the sort direction. Hold Cmd (Mac) / Ctrl (Windows) and click another column to sort by multiple columns at the same time.
Club Ranking Detail
Click any club name on the rankings leaderboard to view its full ranking history. The detail page shows three charts: a Rating Over Time line chart that plots the team's Elo points over time with color-coded data points for each type of change (gold for games, green for placements, gray for starting points, red for adjustments), a Point Changes by Type bar chart that shows total gains (green) and losses (red) grouped by entry type, and a Win/Loss Point Distribution histogram showing how game point changes are distributed across ranges (green for gains, red for losses). Hover over any point or bar to see details.
Below the chart, the history table shows the date, type of change (Game, Placement, Start, or Adjustment), context (opponent for games, tournament for placements), points before, point change, and points after. Game entries link to the game detail page. Use the scope tabs to switch between geographic scopes (e.g., Europe, World, Canary Islands). Click Back to Rankings to return to the leaderboard.
15. PLAYER DIRECTORY
The Player Directory is a searchable public list of all players in the system. Use it to find player profiles, view statistics, and see game history.
Filtering and Searching
The Players page uses the canonical filter panel that appears across the application. Click Show Filters to expand it. You can filter by:
- Season — Year a player rostered in any tournament edition.
- Tournament / Edition — Players who rostered in that tournament or specific edition.
- Gender — Players who rostered in a tournament edition of that gender.
- Country — Player nationality (primary).
- Club — Players who have ever played for that club. When combined with an Edition filter, the result narrows to players who played for the club in that edition.
- Player — A type-as-you-go dropdown showing each player's country flag plus “Last, First”. Combine with Last name, First name, and Nickname text fields for an AND-style narrow.
- Position — Defensive position from the codebook (P, C, 1B, 2B, 3B, SS, LF, CF, RF).
Click Apply Filters to filter the list, or Clear All to reset all filters. When filters are active and the panel is collapsed, a badge shows how many filters are applied.
Sorting and Navigation
Click any column header (Player, Position, B/T, Country) to sort the table. Click again to reverse the sort order. Hold Cmd (Mac) / Ctrl (Windows) and click another column to sort by multiple columns at the same time. Country flags are shown next to each player's nationality. Results are paginated with a configurable page size (25, 50, or 100 per page) and full navigation controls (First, Previous, Next, Last).
Player Detail
Click any row in the table to open a Player Detail modal. The modal has four tabs:
- Tournament Stats — Per-tournament batting stats (PA, R, H, 2B, 3B, 4B, HR, IHR, RBI, BB, IBB, K, SF) and pitching stats (G, IP, BF, H, R, BB, IBB, K, HR, RA, WHIP) if the player has pitched. Columns are sortable by clicking the header.
- Game Log — Per-game batting and pitching stats. Click any row to navigate to that game's detail page. Pitching columns appear only if the player has pitched in at least one game. Each row is coloured by that game's wOBA using the same six-tier scale as the Season Calendar above (from elite blue down to poor red); a legend at the bottom of the table explains the colours.
- Biography — Player biography, notes, and external links (if available).
- Sanctions — Sanction status with start date, end date, and reason. Shows "No sanctions on record" if the player is not sanctioned.
The modal also shows the player's photo (or colored initials), profile information (name, ID, position, license, nationality, etc.), and status.
Close the modal by clicking the × button, clicking outside the modal, or pressing the Escape key. Your filters and page position are preserved.
Player Profile Page
Each player has a dedicated full-page profile at /players/<player_id>/. The profile page mirrors the player detail modal layout with three tabs:
- Tournament Stats — Per-tournament batting and pitching statistics with sortable columns and pagination.
- Game Log — Per-game stats with clickable rows that navigate to the game detail page.
- Biography — Biography text, notes, and external links.
A short scouting summary sums up each player in plain language: an overall archetype plus standout strengths and any areas to improve, generated from the real percentile rankings and shown in your language.
To keep it honest, the rankings adjust for how much a player has actually played: a great line over a handful of plate appearances or innings is pulled toward the middle, because a tiny sample cannot prove a skill. Below a minimum sample the scouting summary does not guess an archetype; instead a clear notice explains, in plain words, exactly how many plate appearances (or innings) the player has, why the numbers can't be trusted yet, and that the bars are dimmed and pulled toward 50 (average, on the 0โ100 scale) until they play more. The Player Comparison radar shows the same notice and marks any player whose shape is based on too few games, so a promising few games is never mistaken for a proven track record.
The profile page includes OpenGraph meta tags for social sharing (links shared on social media will display the player name and description). The player info card shows the avatar with nationality flag badge and key fields (ID, name, position, bats/throws, license, nationality, birth country).
Note: The profile page does not show the Sanctions tab, as sanction information is only visible in the player detail modal accessible from roster management views.
Player Cards (Admin)
Administrators can generate printable player ID cards in CR-80 credit card format (85.6 x 53.98 mm). Each card has a front (player photo, name, nationality, team, sport, ID) and back (QR code linking to the player profile page).
- Single Player Card — On the player profile page, click the "Download Card" dropdown, select a team context, and choose PDF or PNG format.
- Batch Roster Cards — On the Setup > Roster list page, click "Download All Cards" and choose: PDF Duplex (front + back per player), PDF Fronts Only, or PDF Backs Only.
- Per-Player Card — In the roster list, each player row has a card icon in the Actions column for downloading that player's card individually.
Cards are designed for use with ID card printers. The QR code on the back links to the player's public profile page.
16. COMPARE TEAMS
The Compare Teams page lets you view head-to-head statistics between any two teams in your system. This is useful for analyzing matchups, understanding historical performance between rivals, and comparing team statistics side by side.
Accessing Compare Teams
Click Compare in the sidebar under the RESULTS section, or use the Compare Teams button on the Standings or Rankings pages.
Selecting Teams
On the Compare Teams page, use the two dropdown selectors to choose:
- Team 1 — The first team to compare
- Team 2 — The second team to compare
Both dropdowns list all teams in your system. Once you select two different teams, click the Compare button to view the comparison results. You can also use Show Filters to apply optional filters before comparing. The URL will update to include the team IDs (e.g., /compare/?team1=5&team2=12) so you can bookmark or share the comparison.
Cross-Tournament Comparison
Next to each team selector, an Edition dropdown lets you scope that team's stats to a specific tournament edition. This is especially useful for comparing the same team across two tournaments — for example, a team that is 6-0 in one league but 0-3 in another.
When both teams are the same but the editions are different, a Player-by-Player Comparison table appears showing each player's stats (PA, H, XBH, AVG, OBP, SLG, ISO, wOBA, wRC+) side by side. A Delta column shows the wRC+ difference per player, and an Impact row sums the total Delta. Players who only appear in one edition are marked as DNP.
Filtering the Comparison
Below the team selectors, click Show Filters to reveal optional filters that narrow the comparison data:
- Season — Show only data from a specific year
- Tournament — Limit to a specific tournament
- Edition — Limit to a specific tournament edition
- Phase — Filter by game type (pool play, bracket, semifinal, final)
- Pool — Filter by a specific pool
- Country — Filter by tournament host country
- Venue — Filter by the field/venue where games were played
- Player — Show only games where a specific player participated
When any filter is applied, all sections on the page (head-to-head record, batting and pitching comparisons, charts, and games list) show only data matching those filters. For example, selecting Season 2026 shows only 2026 statistics and games. The team selectors are preserved when you click Clear All to reset the optional filters.
Head-to-Head Record
The first section displays the teams' record against each other in a simple format:
- Wins — How many games each team has won against the other
- Draws — How many games ended in a tie
If the teams have never played each other, a message will appear stating this.
Batting Comparison
The Batting Comparison table shows aggregated batting statistics for each team. By default, this covers all games; when filters are applied, only matching games are included. This includes:
- G — Number of games
- PA — Total plate appearances
- H — Total hits
- HR — Home runs
- RBI — Runs batted in
- R — Runs scored
- BB — Walks
- K — Strikeouts
- AVG — Batting average (hits / at-bats)
- OBP — On-base percentage
- SLG — Slugging percentage
- OPS — On-base plus slugging
Pitching Comparison
The Pitching Comparison table shows aggregated pitching statistics for each team. By default, this covers all games; when filters are applied, only matching games are included. This includes:
- G — Number of games
- IP — Innings pitched
- H — Hits allowed
- R — Runs allowed
- BB — Walks issued
- K — Strikeouts
- HR — Home runs allowed
- RA — Run average (runs allowed per 9 innings)
- WHIP — Walks plus hits per inning pitched
- K/9 — Strikeouts per 9 innings
- BB/9 — Walks per 9 innings
In both comparison tables, the leading value in each statistic is highlighted in gold to make it easy to see which team has the edge.
Player-by-Player and Pitcher-by-Pitcher Comparison
Below the team stat tables, two roster tables break the comparison down to individual players. The Player-by-Player Comparison lists each team's batters with PA, H, XBH, AVG, OBP, SLG, ISO, wOBA, wRC+ and the base-running columns (SB, CS and SBR). Directly below it, the Pitcher-by-Pitcher Comparison lists only players who pitched, with IP, W, L, S, H, R, ER, BB, K, HR, ERA, ERA+, FIP and WHIP. Player names are clickable and open the full player card, and every rate stat (AVG, OBP, ERA, WHIP, FIP, ERA+, โฆ) opens the Stat Explainer with that player's own numbers.
Within each team's table, the best value in every column is shown in green and the worst in red. For pitching, "best" respects the stat: for ERA, WHIP, FIP and runs/hits/walks/home-runs allowed a lower number is better (green), while more innings, strikeouts, wins, saves and a higher ERA+ are better.
To keep tiny samples from being misleading, a player is only eligible for the green/red highlight once they meet a minimum โ a minimum number of plate appearances for batters, or innings pitched for pitchers (the same qualification used on the Leaderboard, scaled to how many games the team has played). A batter with a .500 average on 2 plate appearances, or a pitcher with a 0.00 ERA in one-third of an inning, is shown in plain black and is never marked best or worst.
When you compare the same team across two editions, these tables instead pair each player's two lines side by side with a Delta column (wRC+ for batters, pWAR for pitchers) and an Impact row totalling the difference; players who appear in only one edition are marked DNP.
When two different teams are compared, both lists are fully sortable โ exactly like the Games list. Click any column header to sort by it (click again to reverse); the active column is highlighted in amber with an arrow (โฒ or โผ). Hold Cmd (Mac) / Ctrl (Windows) โ or Shift โ and click another column to sort by several at once, with numbered badges showing the sort order.
Comparison Charts
Below the stat tables, interactive Comparison Charts provide visual summaries of the data. All charts adapt to dark and light mode automatically. Each chart has a help (?) button explaining what it shows. The six charts are:
- Team Profile Overlay — Radar chart comparing both teams across 6 key metrics (AVG, OBP, SLG, OPS, K/9, WHIP). Values are normalized so the team with the higher value fills the axis.
- Head-to-Head Stat Duel — Back-to-back horizontal bars showing counting stats (PA, H, HR, RBI, R, BB, K) for both teams side by side.
- Plate Outcome Breakdown — 100%% stacked bars showing the percentage of plate appearances resulting in hits, walks, strikeouts, or other outs for each team.
- Stat Advantage — Lollipop chart showing which team has the advantage in each rate stat. Bars extend right (gold) when Team 1 is better, left (blue) when Team 2 is better.
- Offensive vs Pitching Profile — Concentric donut charts showing batting outcomes (left) and pitching outcomes (right). Outer ring is Team 1, inner ring is Team 2.
- Pitching Matchup — Grouped horizontal bars comparing all pitching stats side by side. Arrow indicators show whether higher or lower is better for each stat.
Games Between Teams
The Games Between Teams table lists all games played between the two selected teams, ordered by most recent first. For each game, you can see:
- Date — When the game was played
- Tournament — Which tournament edition the game was part of
- Home / Away — The home and away teams with country flags (the winning team and score are shown in bold)
- Score — The final score
- Status — The game status (e.g. Final, Live, Scheduled)
If the teams have no games in common, this section will not appear.
COMPARE PLAYERS
The Compare Players page lets you select 2-4 players and see their stats and percentile profiles side-by-side. A radar chart overlay shows each player's strengths across 5 dimensions (Contact, Power, Patience, Discipline, Production), and a stats comparison table highlights the best and worst values in green and red.
The page also suggests a batting order based on Tom Tango's "The Book": the best bats fill the highest-leverage spots (a strong on-base hitter leads off, the best all-around hitter bats second, the top slugger bats cleanup). Below-average bats are placed at the bottom of the order, and a player who is not producing is listed under Bench instead of being forced into a lineup spot โ so the suggestion stays honest and the order may have gaps.
Access it from Compare Players in the sidebar under INTELLIGENCE. Search for players by name, select up to 4, and click Compare.
Under each player there is a Tournament edition dropdown. Leave it on All tournaments (the default) to combine everything that player has done across every tournament into one line, or pick a single tournament to compare just that one. Each player can be set independently, so you can compare one player's whole career against another's single tournament.
The dropdown combines with the Filters: set a filter (for example a season) and leave a player on All tournaments, and that player's line aggregates only the tournaments matching the filter. The tournament label under each player's name in the Stats Comparison shows what is being compared โ the tournament name, or All tournaments โ with (Filtered) added when a filter is active. If a filter excludes the tournament a player is set to, that player shows no data.
Batting and Pitching tabs
Below the Filters there are two tabs: Batting and Pitching. The Batting tab is the comparison described above. The Pitching tab compares the same selected players as pitchers โ it appears with data only for players who pitched in the selection. Switch tabs at any time; the player selection and filters are shared.
The Pitching tab shows a radar overlay across 5 pitching dimensions โ Strikeouts (K/9), Control (BB/9), Run Prevention (ERA+), Contact (WHIP) and Value (pWAR) โ with a legend explaining each, and a stats table (G, W, L, SV, HLD, BS, IP, BF, H, HR, K, BB, ERA, ERA+, RA, QS, WHIP, FIP, K/9, BB/9, K/BB, H/9, K%, BB%, pWAR) that highlights the best value in green and the worst in red. Click the yellow dot under a rate stat to open its Stat Explainer.
A Suggested Pitchers Role card assigns each pitcher a best-fit role โ Starting Pitcher, Long Reliever, Middle Reliever, Setup Pitcher or Closer โ based on how they were actually used (how often they started, which inning they entered in relief, and whether they finished games) and ranks them within each role (Ace, #2 Starter, and so on). A pitcher whose overall quality is below the rating floor is sent to the bullpen and left out of the ranking; a pitcher with under 10 innings is marked insufficient sample. Click Why? on any pitcher to open an explainer showing every stat behind the decision โ its percentile, weight and contribution, the workload check, and how the pitcher was used.
LINEUP ADVISOR
The Lineup Advisor recommends an optimal batting order based on Tom Tango's "The Book." Select a tournament edition and team to see a recommended starting 9, each player's stats (PA, AVG, OBP, SLG, wRC+, RBI, R), and why they were placed in that slot.
The page also shows the last 2 game lineups for the selected team with a "What If" comparison. Each game shows a slot-by-slot table: the actual player vs the recommended player, with wRC+ values and a delta column. A projected runs impact line at the bottom relates the lineup difference to the game outcome (e.g., "Lost by 1 โ recommended lineup projects +0.8 runs").
A radar chart visualizes the recommended starters across 5 dimensions. All player names are clickable โ click any name to open the Player Detail modal with full tournament stats, game log, and matchup splits.
Players need at least 5 plate appearances in the selected edition to be eligible for the recommendation. Remaining roster players appear in the Bench section.
Access it from Lineup Advisor in the sidebar under INTELLIGENCE.
FEDERATION DASHBOARD
The Federation Dashboard gives a single, federation-wide view across every competition (it is not limited to one league). At the top, headline numbers show games played versus scheduled, the federation on-time start rate, the forfeit rate, and how many umpires and teams are active. By default it shows the current season's competitions; use the filter to pick a season, tournament, or edition.
The Operations & Scheduling section shows where delays come from: the percentage of games that started LATE by field, by time slot and by day of the week (the longer and redder the bar, the worse), the average game duration by field, and a schedule-completion breakdown (played, scheduled, postponed, canceled, forfeits). The charts deliberately highlight the problem side โ late starts and missing data โ rather than what is already fine.
The Officials Program Health section covers umpire coverage (how many games had an umpire assigned), how concentrated the workload is among the busiest umpires, the certification mix, and how many games each umpire works. The Competitive Health section covers average runs per game, the blowout and close-game rates, the distribution of run margins, and which teams forfeit most.
The Data Integrity & Reporting section shows the reporting lag (how many days after a game its result reaches DiamondCore โ measured from import by default), the data completeness of finished games (start time, duration, attendance, officials, box score and lineups), and a federation-wide standings-integrity count with the editions that need attention.
Find the Federation Dashboard under the GOVERNANCE group in the sidebar, or from the Federation card on the home page. Every chart and summary card has a help icon (a question mark) in its top-right corner that explains, in plain language, what it shows.
The charts are interactive: click a bar, slice or point to open the full list filtered to exactly what you clicked โ the Games list for operations, schedule, run-margin, forfeits, reporting-lag and completeness charts, and the Officials list for the certification and games-worked charts. Each link carries the season, tournament and edition you have selected, so you drill straight into the relevant games or officials.
OFFICIALS
The Officials page gives the federation a clear view of umpire workload and activity. It is public and read-only, and it always spans every league (it is not limited to your current tenant โ even when you are logged in), so you see all of the federation's officials in one place. Scorers will join this same section in the future once their game data is available.
At the top, the Workhorse card highlights the umpire who has worked the most games. Below it, an insights banner summarizes the current view โ how many officials are active, the average workload, and who stands out.
The table lists every umpire with their certification and workload: total games assigned, the on-time percentage and the total delay (shown as H:MM), games worked at home plate (HP) versus on the bases or outfield, the number of distinct tournament editions and teams worked, and the date of their last game. Click any column header to sort; use the filter panel to narrow by season, tournament, edition, phase, country, or position.
Two charts visualize the workload: most games per umpire and a home-plate versus bases split. The charts respect the active filters.
On-time percentage and total delay are measured only over games that started within a sane window of their scheduled time; games that were clearly moved or postponed are flagged as "rescheduled" and excluded, so a moved game never unfairly counts as late.
Click any umpire's name to open their detail page. It shows a profile header (certification, experience, country), summary cards, a game-by-game table, and four charts: games by month, teams worked, win distribution, and start punctuality.
The summary cards include operational quality taken from the official scoresheet: on-time start (how often the game began within five minutes of the scheduled time, with the average delay), average game duration, average attendance, and the total delay across the umpire's games. Durations and delays are shown as H:MM. Each card shows how many games actually carry that data, because imported games often do not record start time, duration, or attendance.
The game-by-game table shows each game's scheduled time, actual start, punctuality status (on time, delayed, or rescheduled) and the delay in H:MM, alongside the matchup, score and the position the umpire worked. Click a row to open that game.
The Win Distribution chart shows home versus away wins in the finished games the umpire worked. It is presented neutrally โ it is not a measure of bias or fairness, samples are small, and no causation is implied.
The detail page is interactive: click any chart bar or point to open the Games list filtered to exactly those games, click a game row to open its Game Detail, and sort the games table by date, position, or status. If the official has a photo it appears next to their name; otherwise their initials are shown.
Access it from Officials in the sidebar under GOVERNANCE, or from the Officials card on the home page. Every chart, card and table has a help icon (a question mark) in its top-right corner with a plain-language explanation.
17. ROSTERS
The Rosters page shows which players are eligible to play in each tournament edition.
Use the filters to pick a tournament edition and club. The table shows each player's name, uniform number, position, batting/throwing preference, and eligibility dates.
Like the Games page, you can sort by clicking column headers (and Cmd/Ctrl+click for multiple columns).
Additional Filters
Click Show Filters to expand the filter panel. In addition to Tournament Edition and Club, you can search by First Name, Last Name, Nickname, and Position. Type part of a name or position and click Apply Filters to narrow the results. When filters are active and the panel is collapsed, a badge shows the count. Active filter pills appear below the panel; click Clear All Filters to reset.
Player Detail
Click any row in the roster table to open a detail panel for that player. The panel shows the player's full profile (name, photo, nationality, license) and four tabs: Tournament Stats (batting and pitching), Game Log (per-game stats with clickable rows), Biography (bio text, notes, external links), and Sanctions (sanction status, dates, reason). You can sort tables by clicking column headers and page through the results. Press Esc, click the × button, or click outside the panel to close it.
The player avatar shows the uploaded photo if available. If no photo exists, colored initials are displayed (derived from the player's name). A country flag badge appears on the avatar corner when the player has a nationality set.
18. APPEARANCE
Dark and Light Mode
Diamond Core has two visual themes:
- Dark mode — Dark background with light text. Easier on the eyes in low-light environments (night games, indoor venues).
- Light mode — White background with dark text. Better for bright environments or personal preference.
Switch between them using the Dark / Light toggle. On desktop it sits in the top bar; on phones, open the menu drawer to find it (the home screen keeps it in the bar as a compact icon). Your choice is saved and will be remembered next time you visit.
If you have never set a preference, the system uses your device's setting (if your phone or computer is set to dark mode, Diamond Core will start in dark mode too).
Language
Diamond Core supports seven languages: English, Spanish, Italian, German, French, Catalan, and Basque. Use the language selector in the top navigation bar, next to the search icon, to switch languages. The selector displays flag icons alongside language codes and is available whether you are signed in or not. Catalan and Basque appear with their regional flags (the Senyera and the Ikurriรฑa) because neither has an international flag emoji.
Translations for French, Catalan, and Basque are still being completed. Selecting one of those languages may show some text in English until the translation is finished.
Your language preference is saved in a cookie and will be remembered when you return to the site.
19. FAVORITES / MY TEAM
The Favorites feature lets you mark your favorite teams and players as a quick reference. Use star buttons (โ ) across the app to save and manage your favorite clubs and players.
Marking Favorites
Look for the star icon (โ) next to club names on standings, rankings, and other team pages, and next to player names on the players directory and player profiles. Click the star to add that club or player to your favorites. The star will turn gold (โ ) and fill in, indicating it is now a favorite. Click again to remove it from favorites.
How Many You Can Follow
You can follow up to 5 teams and 10 players. If you reach a limit, a short message appears and the new star is not added โ remove an existing favorite first to make room.
Your Favorites Storage
- For authenticated users: Favorites are saved in your account and persist across devices and sessions.
- For guest users: Favorites are stored locally in your browser (no account needed). They will persist when you return to the site, but will be lost if you clear your browser cookies.
Accessing Your Favorites
Star icons appear on standings, rankings, team comparison pages, and other team listing pages. Click any star icon to toggle a favorite. The display updates instantly without requiring a page reload.
My Teams page
Open My Teams from the left menu (under Results) to see everything you follow in one place โ your teams and players as cards, each linking to its page. When you have favorites, a My Teams section also appears on the Home page for quick access.
Compare and discover
On any club's ranking page, use the Compare button to jump straight into a head-to-head. In the Compare picker, your favorite teams appear at the top under โ My Teams, and if you follow two or more you get a Compare my two teams shortcut. The My Teams page also shows Most followed โ the teams followed by the most registered users.
20. KEYBOARD SHORTCUTS
When recording plays on the scoring sheet, you can use keyboard shortcuts instead of clicking buttons. This is much faster during live games.
21. SESSION TIMEOUT
If your organization has configured a session timeout, your session will automatically end after a period of inactivity. This protects your account from unauthorized access on unattended devices.
How It Works
- The system tracks your activity (mouse clicks, keyboard input, scrolling).
- If no activity is detected for the configured timeout period, you will be automatically logged out and redirected to the login page.
- If a warning period is configured, a countdown dialog will appear before the timeout expires. Click Stay Logged In to reset the timer and continue working.
Multiple Tabs
Activity in any open tab counts as activity for all tabs. If you are active in one tab, the timeout will not trigger in another tab.
22. NOTIFICATIONS
Diamond Core keeps you informed about important game events through an in-app notification system. The notification bell in the top bar shows you recent game updates.
The Notification Bell
The notification bell icon is located in the top bar (next to the search icon). A badge number on the bell shows how many unread notifications you have. Click the bell to open the notification panel and view recent updates.
Notification Types
You may receive notifications for these game events:
- Game Started โ When a scheduled game transitions to live scoring.
- Final Score โ When a live game is finalized with a score.
- Score Update โ When the score changes during a live game.
Reading Notifications
Click the notification bell to open the panel. Each notification shows:
- The event message (e.g., "Team A vs Team B has started!").
- The date and time the notification was created.
Dismissing Notifications
Click any notification to mark it as read and navigate to the game detail page. Read notifications appear dimmed in the panel.
To dismiss all notifications at once, click the Mark all read link at the top of the notification panel. This clears the badge count and dims all notifications.
Automatic Updates
The notification badge updates automatically every 60 seconds. You do not need to refresh the page to see new notifications.
Notification History
Notifications are stored for up to 7 days. Older notifications are automatically removed from the system.
23. SHARING LINKS
Diamond Core makes it easy to share game information, box scores, and standings with other people. You can copy the page link or use your device's native sharing options.
Share Buttons
Pages for game details, box scores, and standings display two buttons:
- Copy Link โ Copies the page URL to your clipboard. A confirmation message shows briefly after copying.
- Share โ Opens your device's native share menu (if available) to share with messaging apps, email, or social media. On devices without native sharing support, this button falls back to copying the link.
Shared Content Information
When you share a game or box score link, the following information is included in the share preview:
- Team names and matchup details (for example, "Team A vs Team B")
- Final or current score (when available)
- Automatic rich previews on social media and messaging apps
24. PRIVACY & COOKIES
Privacy Policy
Diamond Core is committed to protecting your personal data. Our Privacy Policy explains what data we collect, why we collect it, and how it is used. You can read the full policy at any time by clicking Privacy in the footer of any page.
Terms of Use
Our Terms of Use explain how the information on the site may be used: you are welcome to view and share it for personal, non-commercial purposes, but automated access โ scraping, crawling or bulk downloading โ and commercial republishing are not permitted without prior written permission. Read it by clicking Terms in the footer.
Cookie Policy
Our Cookie Policy describes the cookies used on the platform. You can read it by clicking Cookies in the footer.
Cookies We Use
- Essential cookies โ Required for the site to function (session, security token, consent record). These cannot be disabled.
- Functional cookies โ Used for language preferences and favorites. You can accept or decline these when the cookie banner appears.
Cookie Consent Banner
When you first visit Diamond Core, a banner appears at the bottom of the screen asking for your cookie preferences. You can choose Accept All to enable all cookies, or Essential Only to use only the cookies required for the site to work. Your choice is remembered and the banner will not appear again.
Data Sources & Attribution
Competition and statistical data originates from public federation and WBSC records and remains the property of its respective owners. Diamond Core is not affiliated with or endorsed by these organizations.
25. BROADCASTING
Diamond Core provides live broadcast overlays that can be embedded in streaming software like OBS Studio. These overlays update automatically as games are scored.
Scorebug Overlay
The scorebug is a broadcast-quality overlay inspired by Sportsnet. It shows the current pitcher with batters faced, the current batter with running batting average (recalculated including the current game), both team names with country flags and scores, a game timer (color-coded by remaining time), and the inning number with outs. The home team row is displayed in gold and the away team text is white for contrast. Outs are shown as red dots. Country flags are displayed next to each team name. If no lineup data is available, the pitcher and batter rows are hidden.
- URL โ
/embed/scorebug/<game_id>/ - Clean mode โ Add
?clean=1for a transparent background (ideal for OBS chroma key). - Theme โ Add
?theme=lightor?theme=dark(default is dark). - Poll interval โ Add
?interval=3000to change the refresh rate in milliseconds (default 5000). - Hide timer โ Add
?timer=0to hide the game timer column. This is useful when the timer is incorrect or there are delays that could cause confusion for teams.
Line Score Overlay
The line score overlay displays the inning-by-inning score table with R/H/E totals. It expands automatically for extra innings and shows "X" for unplayed home innings (walk-off games).
- URL โ
/embed/linescore/<game_id>/ - Same query parameters โ
?clean=1,?theme=, and?interval=work the same as the scorebug.
Batter Info Overlay
The batter info overlay shows the current batting lineup for the team at bat, including uniform numbers and field positions, plus the opposing pitcher. It updates automatically as the game progresses.
- URL โ
/embed/batter/<game_id>/ - Same query parameters โ
?clean=1,?theme=, and?interval=work the same as the scorebug.
Scoring Box Overlay
The scoring box overlay displays full batting and pitching statistics for both teams in a box score format. Shows AB, R, H, RBI, BB, K for batters and IP, H, R, BB, K for pitchers.
- URL โ
/embed/scorebox/<game_id>/ - Same query parameters โ
?clean=1,?theme=, and?interval=work the same as the scorebug.
Big Play Overlay
The big play overlay monitors the game for significant scoring plays and displays a popup notification that automatically fades after 5 seconds. Ideal for adding excitement to your stream.
- URL โ
/embed/bigplay/<game_id>/ - Same query parameters โ
?clean=1,?theme=, and?interval=work the same as the scorebug.
Using with OBS Studio
To add an overlay to your stream, add a Browser Source in OBS and paste the embed URL. Use ?clean=1 for a transparent background so the overlay appears on top of your game video. Set the width and height in OBS to match your desired overlay size.
Administrators can find all embed URLs and API endpoints for a specific game on the Game Detail page, in the "Broadcast Overlays" section. Each URL has a Copy button for easy pasting into OBS.
Ticker Overlay
The ticker overlay displays scrolling announcements at the bottom of the screen. Messages are created in Setup and can be scoped to all games, a specific edition, or a specific game. Each message has a severity level (info, warning, urgent) and a time window.
- URL โ
/embed/ticker/ - Edition scope โ Add
?edition=<id>to show only messages for a specific edition. - Game scope โ Add
?game=<id>to show only messages for a specific game. - Same query parameters โ
?clean=1,?theme=, and?interval=work the same as the scorebug.
Broadcast Config (Admin)
Administrators can enable or disable broadcasts per tournament edition via Setup > Broadcast Config. When broadcasts are disabled for an edition, all overlay endpoints and API calls for games in that edition return a 403 error. An optional delay (in seconds) can be configured to serve data on a time delay.
- Setup URL โ
/setup/broadcast/config/ - Setup home โ A "Broadcast Config" card on the Setup home page links directly to this page.
- Default behavior โ If no config exists for an edition, broadcasts are enabled by default.
- Show Timer โ Controls whether the timer column is visible in the scorebug overlay. Changes take effect within seconds (on the next poll cycle). The
?timer=0and?timer=1URL parameters still override this setting.
Ticker Messages (Admin)
Administrators can create ticker messages via Setup > Ticker Messages. Each message has a severity (info, warning, urgent), a time window (active from/to), and a scope (all, edition, or game). Messages are automatically shown on ticker overlays during their active window and hidden when expired.
- Setup URL โ
/setup/broadcast/ticker/ - Setup home โ A "Ticker Messages" card on the Setup home page links directly to this page.
Real-Time Updates
When Supabase Realtime is enabled, overlay embeds automatically subscribe to live game channels and update within one second of a scoring change โ no manual refresh needed. Polling continues as a fallback if the realtime connection drops.
An SSE (Server-Sent Events) endpoint is also available as an alternative real-time channel for clients that cannot use Supabase Realtime. Connect to /api/v1/broadcast/game/<id>/sse/ to receive game_update events whenever the game state changes.
Broadcast API
JSON endpoints are available for custom integrations. These are public and require no authentication:
/api/v1/broadcast/game/<id>/state/โ Full game state/api/v1/broadcast/game/<id>/scorebug/โ Scorebug data/api/v1/broadcast/game/<id>/linescore/โ Line score data/api/v1/broadcast/game/<id>/batter/โ Batter info data/api/v1/broadcast/game/<id>/scorebox/โ Scoring box data/api/v1/broadcast/games/live/โ All live games/api/v1/broadcast/game/<id>/sse/โ Server-Sent Events stream (real-time fallback)/api/v1/broadcast/ticker/โ Active ticker messages (scope with ?edition= or ?game=)
Cache-Control and ETag headers. Send If-None-Match with the ETag value to receive a 304 response when data hasn't changed.
26. GRAPH ANALYTICS
Graph Analytics is found in the Intelligence section of the sidebar. It provides three interactive network visualizations that reveal relationships between clubs, tournaments, and players. Each tab features a force-directed graph on the left and contextual sidebar cards on the right.
All three graphs support zoom (scroll wheel), pan (click-and-drag on background), and node dragging. Hover any node or edge for a tooltip with key statistics. Click a node to update the sidebar cards with detailed information. Toggle between dark and light mode โ graphs re-render automatically.
Tab 1: Elo Rating Network
The Elo Network answers the question: "Who has this club played, and how did those games affect their rating?" Select a team from the dropdown, choose the ranking scope (Europe or World), optionally filter by season, and click Apply.
The page opens with the top-ranked team in the active scope already loaded, so a network is shown immediately โ just change the team and click Apply to explore another.
Nodes represent clubs. Each node's size reflects the club's current Elo rating โ larger nodes have higher ratings. The focus club appears in gold with a white border and glow. Direct opponents are blue. When depth is set to "2nd Degree", opponents-of-opponents appear in muted grey.
Edges (lines between nodes) represent game history between two clubs. Green edges mean the focus club has a winning record against that opponent. Red means a losing record. Grey means an even or mixed record. Thicker edges indicate more meetings between the two clubs.
Sidebar cards: The Selected Team card updates when you click any node and shows the club's rating, games played, win rate, average opponent rating, and โ for opponents โ the head-to-head record (wins, losses, draws) plus the last 3 game results. Each of those rows now shows the tournament edition alongside the date and score, and the point change is clickable. The Legend card explains the color coding. The Recent Changes card lists the focus club's 5 most recent per-game Elo point changes (newest first), each with the opponent, the tournament edition, the points gained or lost, and the team's rating after that game.
Click any point change โ in the Selected Team head-to-head list or in Recent Changes โ to open the same Ranking Explainer used on the Rankings page. It shows the formula, the variables and their values, and a plain-language explanation of why the rating moved up or down.
Filters: Scope toggles between Europe and World rankings. Season limits data to a specific calendar year. Tenant restricts data to a specific league or organization. Edition narrows data to a specific tournament edition. Depth controls whether only direct opponents (1st degree) or also their opponents (2nd degree) appear. On any club's Ranking History page, click View Elo Network to jump here with that club pre-selected.
Tab 2: Tournament Ecosystem
The Tournament Ecosystem answers the question: "How are tournaments connected through the teams that participate in them?" Click Apply to generate the graph. Each node is a tournament edition; each edge means two tournaments share one or more clubs.
Nodes represent tournament editions. Each node's size reflects how many teams participated โ larger nodes had more teams. Node color indicates the tournament's ranking weight: gold for high-weight tournaments (e.g., SuperCup, weight โฅ 40), blue for medium-weight (e.g., EuroCup, weight 20โ39), and grey for lower-weight tournaments (weight < 20).
Edges connect tournament editions that share clubs. Thicker, brighter (gold) edges indicate many shared teams, while thin grey edges indicate few. The edge tooltip shows the exact number of shared teams.
Sidebar cards: The Selected Tournament card updates when you click a node and shows the tournament name, edition, team count, game count, ranking category, game weight, date range, and its top 5 connections to other tournaments with shared team counts. The Legend card explains node colors (weight tiers) and edge thickness (shared teams). The Strongest Connections card shows the top 5 tournament pairs across the entire graph with the most shared teams.
Filters: Scope filters by All, Europe, or World (based on ranking category assignment). Season limits to editions overlapping a calendar year. Tenant restricts editions to a specific league or organization. Edition focuses on a single tournament edition. Min Shared Teams sets the threshold โ only edges with at least this many shared teams appear. Raising this value simplifies the graph by hiding weaker connections.
Tab 3: Player Career Paths
The Player Careers tab answers the question: "Where has this player been, and how does their career path compare to another player's?" Select a player from the dropdown and click Apply. Optionally select a second player in the "Compare with" dropdown to overlay both career paths.
Nodes come in two types. Player nodes are circles โ the focus player appears in gold, the comparison player (if any) in purple. Club nodes are rounded rectangles in blue. Each club the player has been rostered at appears once; edges from the player to each club represent roster memberships.
Edges connect players to clubs. Each edge represents a roster membership in a specific tournament edition. Edge labels show the year. The edge tooltip shows the tournament name, edition, playing position, and uniform number. Gold edges belong to the focus player; purple edges belong to the comparison player. When two players share a club, both paths converge on the same club node.
Sidebar cards: The Selected Player card shows the player's name, ID, position, batting side, and throwing hand โ updating when you click a player or club node. The Legend card explains node shapes and colors. The Club History card lists every club the player has been rostered at, organized chronologically with tournament and edition details. In compare mode, both players' histories appear in the same card, color-coded gold and purple.
Filters: Tenant restricts roster data to a specific league or organization. Edition narrows the career path to a specific tournament edition. The player search also respects these filters, showing only players with rosters matching the selected tenant or edition.
FIELDS
Fields is a public directory of every venue in the system, reachable from the sidebar (with Games and Results, just above the RESULTS group) and from the home page. Anyone can open it, including guests.
At the top is the same filter panel used elsewhere. You can filter by Season, Tournament, Edition, Phase and Pool (these show the fields that were used in matching games), by Country and City (the field's own location), by a single Venue/Field, and by Club (fields where a club is a regular home team โ meaning it played there as home at least five times in a single season). A No GPS filter isolates fields that are missing coordinates.
The list works exactly like the Games list: click a column header to sort (Ctrl/Cmd-click to add more sort columns), and use the pagination controls and the per-page selector at the bottom. Empty values show a dash (-). The No GPS column flags fields without map coordinates.
Below the list is a map with a pin for every filtered field that has coordinates. The map zooms automatically to fit the current selection (for example, filtering to Spain zooms to Spanish territory including the Canary and Balearic Islands). Click a pin to see the field name, the number of games played there (respecting the active filters), its regular home teams, and a Get Directions link that opens Google Maps directions from your location.
Selecting a field โ by clicking its pin or its row in the list โ zooms the map to that field and loads, under the map, the full list of games played there (the same columns, sorting and pagination as the Games page). Click any game to open its detail page.
27. MATCHUPS
The Matchups page is found in the Intelligence section of the sidebar and on the landing page. It shows how a batter performs against specific opponent teams and pitchers, and how a pitcher performs against teams and individual hitters. No login is required โ the page is public.
vs Teams
Search for a player and see their batting stats broken down by opponent team. The table shows the full batting line: G (games), PA, AB, H, 2B, 3B, HR, RBI, BB, K, AVG, OBP, SLG, and OPS. All rate stats use the standard baseball format (.000).
vs Pitchers
Switch to the vs Pitchers tab to see how the batter performs against each individual pitcher they have faced, including the pitcher's club. This helps coaches identify favorable and unfavorable matchups for lineup decisions. Pitcher names are clickable — click to open the Player Detail modal for that pitcher.
Pitching: vs Teams
Switch to the Pitching: vs Teams tab to see how a pitcher performs against each opponent team. The table shows the full pitching line: G, IP, BF, H, R, BB, K, HR, RA, WHIP, K/9, and BB/9.
Pitching: vs Hitters
The Pitching: vs Hitters tab shows how a pitcher performs against each individual batter they have faced, including the batter's club. This helps coaches decide pitching strategy against specific lineup threats. Hitter names are clickable — click to open the Player Detail modal for that hitter.
Sorting
Click any column header to sort the table. Click again to reverse the sort direction, and a third time to clear it. Hold Ctrl (or Cmd on Mac) and click additional columns to add secondary sort levels โ numbered badges show the sort priority.
Matchup Analysis Charts
Below the stats table, three visualizations help coaches make decisions at a glance:
- OPS by Opponent/Pitcher โ Horizontal bar chart color-coded green (strong, .800+), gold (average), or red (weak). Instantly shows which matchups favor the batter.
- Batting Rates Breakdown โ Grouped bars showing AVG, OBP, and SLG side by side. Reveals whether the batter relies on contact, patience, or power against each opponent.
- Plate Discipline โ Bubble chart plotting Walk Rate vs Strikeout Rate. Bottom-right means a disciplined contact hitter; top-left means an aggressive swinger. Bubble size represents plate appearances.
Click the ? icon on each chart card for a quick explanation.
How It Works
Matchup stats are generated from games that have play-by-play data (imported TAS games or natively scored games). The system tracks which pitcher was on the mound for each plate appearance, enabling detailed batter-vs-pitcher breakdowns.
How to Use
- Go to Matchups in the sidebar (Intelligence section) or from the landing page.
- Type a player name in the search box โ suggestions appear as you type. Use the arrow keys to navigate and Enter to select.
- Click a name from the dropdown, then click Search (or press Enter).
- Use the vs Teams / vs Pitchers tabs to switch between views.
Matchup Splits in Player Profile
Matchup splits are also available on each player's profile page. Open the Player Detail modal from any game or roster page, and click Full Profile in the header to open the standalone profile page. The Matchup Splits tab shows the same vs Teams and vs Pitchers breakdowns.
On the full profile page each matchup list โ vs Teams, vs Pitchers and vs Batters โ is paginated in the same style used across the app: use the page controls and the Per page selector at the bottom of each list, and click any column header to sort. The Player Detail modal paginates the same lists the same way.
29. FILTERS REFERENCE
Every page with a filter panel lets you narrow results using the dropdowns and text fields described below. Click Show Filters to expand the panel, choose your options, then click Apply Filters. The panel collapses and a badge shows how many filters are active. Click Clear All (in the header) to reset.
Your filters are remembered for each page. When you apply filters and then move to another page, they are still there when you come back. Pages that have several tabs share one set of filters across all of their tabs โ for example every Statistics tab (Batting, Pitching, Fielding; Player, Team, Tournament; Basic, Rates, Advanced) and every Matchups tab use the same filters. Clearing with Clear All is also remembered, so the page stays cleared until you choose new filters.
Games, Lineup, Live Scoring, Results
| Filter | What it does |
|---|---|
| Season | Shows only games from tournaments that started in the selected year. |
| Tournament | Shows only games from the selected tournament (all editions). |
| Edition | Shows only games from one specific edition of a tournament. |
| Phase | Shows only games of a certain type (e.g. Round Robin, Medal Round, Placement). |
| Pool | Shows only games in the selected pool. |
| Country | Shows only games from tournaments organized in the selected country. |
| Venue | Shows only games played at the selected ballpark/field. |
| Gender | Shows only games from Men's, Women's, or Mixed tournaments. |
| Club | Shows only games where the selected team plays (home or away). |
| Player | Shows only games where the selected player appeared in a lineup. |
| Last / First / Nickname | Type part of a name to find games where a matching player appeared. |
| Status | Check one or more statuses: Scheduled, Live, Final, Canceled, Postponed โ plus the data-quality flags Incomplete data, Forfeit, and No scoresheet (games played but with no detailed scoresheet, so excluded from statistics). |
Standings
| Filter | What it does |
|---|---|
| Season | Shows standings for all tournament editions that started in the selected year. |
| Tournament | Shows standings for all editions of the selected tournament. |
| Edition | Shows standings for one specific edition. |
| Phase | Counts only games from the selected phase (e.g. only Round Robin games). |
| Pool | Counts only games from the selected pool. |
| Country | Shows only editions from tournaments organized in the selected country. |
| Gender | Shows only editions from Men's, Women's, or Mixed tournaments. |
| Club | Shows only standings tables that include the selected team. |
| Player | Shows only editions where the selected player was on a roster. |
| Last / First / Nickname | Type part of a name to find editions where a matching player was rostered. |
| Currently Playing | Shows only editions that are active today (started but not yet ended). |
Statistics (Batting & Pitching)
| Filter | What it does |
|---|---|
| Season | Shows stats from games played in the selected year's tournaments. |
| Tournament | Shows stats from games in the selected tournament (all editions). |
| Edition | Shows stats from one specific edition only. |
| Team | Shows stats only for players on the selected team. |
| Gender | Shows stats from Men's, Women's, or Mixed tournaments only. |
| Country | Shows stats from tournaments organized in the selected country. |
| Phase | Shows stats from games of the selected type only (e.g. only Medal Round). |
| Date From / Date To | Shows stats from games played within the selected date range. |
| Player | Shows stats for one specific player. |
| Last / First / Nickname | Type part of a name to find matching players in the stats. |
| Min PA / Min IP | Only shows players with at least this many plate appearances (batting) or innings pitched (pitching). |
| Home/Away | Shows stats from only home games or only away games. |
Note: The charts (graphs) on the statistics page always reflect the same filters as the table. If you filter the table by season and country, the charts update too.
Rankings
| Filter | What it does |
|---|---|
| Season | Shows rankings calculated from games in the selected year only. |
| Country | Shows only teams from the selected country. |
| Club | Shows the ranking row for one specific team. |
| Tenant | Shows only the ranking card for the selected league/organization. |
| European / World | Switches between the European ranking system and the World ranking system. |
Bracket
| Filter | What it does |
|---|---|
| Season | Narrows the edition list to tournaments from the selected year. |
| Tournament | Narrows the edition list to the selected tournament. |
| Edition | Selects which tournament edition's bracket to display. |
| Phase | Selects which elimination phase to display (if the edition has multiple). |
| Gender | Narrows the edition list to Men's, Women's, or Mixed tournaments. |
| Country | Narrows the edition list to tournaments from the selected country. |
Player Directory
| Filter | What it does |
|---|---|
| Season | Shows only players who were on a roster in the selected year. |
| Tournament | Shows only players who were rostered in the selected tournament. |
| Edition | Shows only players rostered in the selected edition. |
| Country | Shows only players with the selected nationality. |
| Gender | Shows only players from Men's, Women's, or Mixed tournaments. |
| Club | Shows only players who played for the selected team. |
| Player | Selects one specific player. |
| Last / First / Nickname | Type part of a name to search for matching players. |
| Position | Shows only players whose primary position matches (e.g. Pitcher, Catcher). |
Rosters
| Filter | What it does |
|---|---|
| Season | Shows only roster entries from tournament editions in the selected year. |
| Tournament | Shows only roster entries from the selected tournament. |
| Edition | Shows roster entries for one specific edition. |
| Gender | Shows only rosters from Men's, Women's, or Mixed tournaments. |
| Country | Shows only rosters for clubs from the selected country. |
| Club | Shows the roster for the selected team. |
| Player | Shows roster entries for one specific player across all editions. |
| Last / First / Nickname | Type part of a name to find matching roster entries. |
| Position | Shows only players whose position matches. |
| Show Inactive | When checked, also shows players who have been deactivated from the roster. |
Compare Teams
| Filter | What it does |
|---|---|
| Team 1 | The first team to compare. |
| Team 2 | The second team to compare. Shows their head-to-head record and stats. |
32. CONTACT US
Sending a Message
Anyone can reach us through the Contact link in the footer of every page. Fill in your name, email, an optional subject, and your message, then click Send message. You do not need an account to contact us.
What Happens Next
Your message is stored securely and an administrator is notified straight away. We will reply to the email address you provide as soon as we can.
Spam Protection
The contact form is protected against spam and abuse. If a submission cannot be verified, or if many messages are sent from the same place in a short time, the form will ask you to try again. Genuine messages always go through.