SaturdayBall.com Logo Saturday Ball
  • Contact
  • Login

Frequently Asked Questions

Getting Started

What is Saturday Ball?
Saturday Ball is a pickup basketball stat tracker. It's a web app for pickup basketball groups and leagues to record game data and view stats, leaderboards, and player profiles. The system computes advanced stats from the data you enter — going well beyond basic points, rebounds, and assists.
What is the difference between a pickup group and a league?

Pickup groups are for casual, unstructured play. There are no fixed teams — players show up, you build teams on the fly, and the app tracks leaderboards and individual stats over time. Players can be activated or deactivated each session.

Leagues are for structured, team-based competition. You define teams, manage rosters, and the app tracks standings, win/loss records, and both player and team stats across a season.

You choose which type to create when you start a new group, and this cannot be changed later.

How do I create a group?
Click Create a Group on the home page or from your account menu. You'll choose a name, select pickup or league, and configure a few defaults like your stats method (play-by-play or box score). Once created, you can invite players and start adding games right away.
How do I make my group private?

Your group is public by default. This means that anyone can view your group's data, including game data, stats, leaderboards, and player profiles.

Private groups are not possible at this time. But will be possible in the future.

Can I switch between pickup and league after creating a group?
No. The group type (pickup or league) is set at creation and cannot be changed. If you need a different type, you'll need to create a new group.
How do I invite players to my group?
Go to your group's Settings page and open the Group members tab to invite people by email and set their permissions. For a roster-wide view of who is linked or invited (and bulk invites), use the Player accounts tab. Invited players receive a link to join your group. On the Player accounts tab, you can Cancel invite next to a pending invite to invalidate the link if you sent it by mistake or to the wrong address.

Tracking Games and Stats

What is the difference between play-by-play and box score mode?

Play-by-play lets you record individual events (field goals, rebounds, assists, turnovers, etc.) as they happen or after the fact. This unlocks advanced stats like True Passing %, Defensive Rating, and per-100 possession metrics.

Box score mode is simpler — you upload a stat line per game (points, rebounds, assists, etc.) without tracking individual plays. It's faster to enter but produces only basic stats.

Your stats method is chosen when creating the group and cannot be changed later.

Can I change my stats method after creating a group?
No. The stats method (play-by-play or box score) is fixed at group creation. Plan accordingly when setting up your group.
How do I enter stats during or after a game?
You can enter plays on your phone during the game in real time, or track on paper and enter everything after. If you're using play-by-play mode, create the game first, then open the game's Add Plays screen. Player fields are searchable — type a name or jersey number to filter the list, click a filled field to see all players again, and after you pick someone focus moves to the next field for faster entry. For live sideline entry on a phone, use the Mobile Entry tab — tap the action, player, and any follow-ups (rebound, assist, fastbreak, putback); each play saves automatically and you can undo the last one. Use w/o Video when transcribing from paper later, or w/ Video to sync plays to a YouTube recording. Box score groups can upload a stat sheet for each game.
How do I record several pickup games with the same teams?

On the Create Game form (pickup groups only), use Create & Add Another instead of Create Game. That saves the current game and opens a new create form with the same date, teams, players, and game settings (you enter a new title for each game).

When editing an existing pickup game, Duplicate Game saves your changes to that game and opens the same pre-filled create form so you can log another game with the same setup.

Can I add a location or venue to league games?

Yes. League game forms include an optional Location field. It appears on the game detail page and schedule views.

League admins can also set a Default Location/Venue under Settings → Game Defaults. New league game forms are pre-filled with that value, and you can still change it per game.

Can I upload box scores from a spreadsheet?

Yes. If your group uses box score mode, you can upload a CSV file for each game directly from the game page. This is useful if your group already tracks stats in a spreadsheet.

If you start from our blank box score template (Google Sheets), use File → Make a copy so your group works from its own copy instead of editing the shared master. Fill it in, then download or export as CSV to upload on the game page.

How does video integration work?
You can link a YouTube video to a game by entering the video ID or pasting the full YouTube URL when you create or edit the game. Sync individual plays to timestamps in the video so you can review and highlight specific moments — like a great pass or defensive stop — directly from a player's profile or the game page.
What are per-100 stats and advanced metrics?
Per-100 stats normalize each player's numbers to 100 possessions, which makes it fair to compare players with different playing time. Advanced metrics include things like True Shooting %, True Passing %, and Defensive Rating — these go beyond counting stats and give a more complete picture of how each player contributes. Per-100 and advanced stats are only available for groups using play-by-play mode and require a minimum number of plays to be meaningful (configurable in group settings).
How does the leaderboard Overview tab work?

The Overview tab shows top-10 mini leaderboards for key stats. Use the pills below the main tabs to switch between Averages (per game), season Totals, and Per 100 possessions. The Averages tab (between Overview and Totals) shows a full sortable per-game table. Full sortable tables for totals, advanced totals, per-100, and advanced per-100 are on the other leaderboard tabs.

Group admins can choose which Overview pill loads by default under Settings (Leaderboard section).

You can link directly to a leaderboard tab or Overview pill. The address bar updates as you switch views; copy the URL or right-click a tab and choose Open in new tab. Examples: ?tab=averages for the Averages table, or ?tab=overview&overview=per_100 for Overview with the Per 100 pill.

How is the MVP for a game chosen in pickup groups?
In pickup groups, each game's MVP is the player on the winning team with the highest PIE (Player Impact Estimate) for that game. PIE measures each player's share of the game's overall positive impact from the box score (points, shooting, rebounds, assists, steals, blocks, turnovers, and fouls). It is not simply the leading scorer.
What are RSVP polls in pickup groups?

In pickup groups only, organizers can run RSVP polls for a specific run: set the date, time, and place (plus optional notes), choose who to invite from the group roster, and send email invitations. Invited members get a personal link to respond in or out without signing in.

Open your group's Games page and use RSVP polls to create a poll, send or resend invites, and see who is in, out, or has not answered yet. You can set when RSVPs close and cancel a poll if plans change (canceling notifies people who were already invited). RSVP polls are not available for leagues.

When someone RSVPs, they can optionally leave a short note with their in or out response. Group admins and contributors see those notes on the poll's invited roster; other members do not.

Leagues and Seasons

How do seasons work?
Seasons let you organize games into distinct time periods (e.g., Spring 2025, Fall 2025). Stats, standings, and leaderboards can be filtered by season so you can track how things change over time. For leagues, each season tracks standings, win/loss records, and streaks. For pickup groups, seasons help organize leaderboards and records over different periods.
How do I create a new season?
Go to your group's Settings page and navigate to the Seasons tab. From there you can create a new season with a name and start date.
Why aren't my league standings updating?
League standings only count published games. Unpublished games are treated as drafts, so their results do not change the standings until you publish them. When editing a game, set Publish Game? to Yes once the score and stats are final. If your league restricts publishing to group admins, an admin must publish the game for it to affect standings.
Can I see only my team's games on the league schedule?
Yes. On the league Schedule page (including upcoming and past game lists), use the Team dropdown next to the season selector to show only games for one team, or All Teams for the full schedule. When your account is linked to a roster player on a team, you also get Show My Team as a shortcut for your team. Your commissioner links members to roster players from Settings (the Group members or Player accounts tabs) when sending or managing invitations.

Players and Teams

How do I add or remove players?
Go to the Players section of your group to add new players by name. You can also deactivate players you no longer need rather than deleting them, which preserves their historical stats.
Can I import teams and players from a spreadsheet (leagues)?

Yes. In a league, group admins and contributors can use Import from CSV on the Teams or Players page. Upload a CSV with columns Team, First Name, and optional Last Name. Each row must include at least a team name or a first name, so you can import teams without players, players without teams, or full rosters. Download the template from the import page for the expected format.

On the Teams page, Export Current Active Teams downloads the same column layout for every active team in the group, using each team's current active roster (not a past season snapshot). The season filter on that page does not affect the export.

After you upload, you review a summary grouped by team: new teams, new players, reassignments, and players already on the correct team. Nothing is saved until you confirm. If anything looks wrong, fix your CSV and upload again. Each attempt is stored in Import History on the import page so you can download the file later.

Existing players are matched by first and last name. If a player already exists, their team assignment is updated to match the CSV (including clearing the team when the Team column is blank). Teams and players not listed in the file are not updated. The import is all-or-nothing: if any row fails validation (for example a duplicate player in the file), nothing is applied.

Can I import or export the league schedule from a spreadsheet?

Yes. On the league Schedule page, admins and contributors can use Export Schedule CSV for the season you are viewing, edit the file in a spreadsheet app, then upload it with Import Schedule CSV. Download the template from the import page for the expected columns.

Each game row needs a stable Game Key, unique within that season, so re-uploads update existing games instead of creating duplicates (for example week1-01). Export assigns keys to games that do not have one yet. Team names in the CSV are matched case-insensitively. After upload you review new games, updates, blocked rows, and unchanged rows before anything is saved. Import history keeps a copy of each attempt.

Games that already have stats limit what import can change (for example you cannot swap teams via CSV on a game with recorded stats). You can still edit those games from the normal game form.

What does deactivating a player do?
Deactivating a player hides them from active rosters and team-building screens so they don't clutter things up for players who no longer participate. Their past stats and game logs are fully preserved and still appear in historical leaderboards and records.
How do player profiles work?
Each player has a profile page showing their total and per-100 stats, a full game log, and any video highlights linked to their plays. Profiles are a great way to review a player's contributions over time and analyze their style of play. If your Saturday Ball account is linked to a roster player in the group (your commissioner sets this when you join), you can open your profile and use Edit Player to update details like your name, photo, height, and position. Active status and current team (in leagues) can only be changed by someone with roster permissions for the group. In leagues, roster managers can also set a default Jersey # on the player form.
Can I assign jersey numbers in a league?

Yes. League players can have a default jersey number on their profile. When you create or edit a league game, each selected player shows that number and you can override it for that game only — for example if someone wears a different number for one night or after a trade.

The number used for that game appears on the box score next to the player's name and in Add Plays player pickers (for example, 12 Cody M). You can type a jersey number or part of a name to find a player quickly.

How does the AI team generator work?
The AI team generator uses player stats from your group to suggest balanced teams for a game. Select the players who are present, and the generator will propose team splits designed to make the games competitive. You can find it under the Games section of your group.

Privacy and Data

Who can see my group's data?
Game data, stats, leaderboards, and player profiles may be publicly accessible by default. If you have privacy concerns about your group's data, please contact us at customer-support@saturdayball.com.
What data do you collect?
We collect the information you provide when creating an account and entering game data. We also use Google Analytics to understand how the app is used. For full details, see our Privacy Policy.
Can I delete my account or group?
To request account or group deletion, contact us at customer-support@saturdayball.com and we'll take care of it.

Terms & Conditions | Privacy Policy | Contact | FAQ
© 2026 SaturdayBall LLC. All rights reserved.