Skip to main content
Back to Racey School
Fastest path
6 min skim
League staff and returning users

Quick Reference

One page for permissions, pricing limits, workflows, and the troubleshooting details teams need mid-session.

Check permissions and role boundaries quickly
Compare plan limits and special offers
Review key workflows without opening full guides
Use this guide during beta
1
Use this during one dry run to catch missing permissions
2
Verify pricing copy against actual gated UI behavior
3
Keep it open while staff run through race-day steps
Open quick reference

Your one-page cheat sheet for Racey. Permissions, plans, workflows, and troubleshooting — all in one place.


Role Permission Matrix

Racey has 44 permissions across 7 roles. Here's the complete mapping.

League & Settings

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
league.manageYesYes—————
league.settingsYesYes—————
league.deleteYesYes—————

Seasons

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
season.createYesYes—————
season.editYesYes—————
season.deleteYesYes—————

Schedule

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
schedule.editYesYesYes————

Roster

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
roster.viewYesYesYes————
roster.manageYesYesYes————
roster.approveYesYesYes————

Results

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
results.importYesYesYes————
results.editYesYesYes————
results.publishYesYesYes————
results.lockYesYes—————

Scoring

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
scoring.configureYesYesYes————
scoring.override (reserved)YesYes—————

Protests & Penalties

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
protest.submitYesYes————Yes
protest.reviewYesYes—Yes———
protest.ruleYesYes—Yes———
protest.assignYesYes—————
penalty.applyYesYes—Yes———
penalty.edit (reserved)YesYes—————

Announcements

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
announcement.createYesYesYes————
announcement.publishYesYesYes————

Teams

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
team.createYesYes—————
team.manageYesYes———Yes—

Race Control

Withdrawn 2026-08-29. Race Control and the Broadcaster Panel were removed from the product. The permissions below still exist in the role system, but they no longer unlock a reachable page — granting them changes nothing today. They are documented because roles that carry them are still assignable, and because the surfaces return if the feature does.

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
race_control.manageYesYesYes————
race_control.assistYesYesYes————
race_control.marshalYesYesYes————
race_control.observeYesYesYesYesYes——

Broadcast

Withdrawn 2026-08-29. Race Control and the Broadcaster Panel were removed from the product. The permissions below still exist in the role system, but they no longer unlock a reachable page — granting them changes nothing today. They are documented because roles that carry them are still assignable, and because the surfaces return if the feature does.

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
broadcast.accessYesYes——Yes——

Staff & Billing

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
billing.manageYesYes—————
staff.manageYesYes—————
staff.inviteYesYes—————

Analytics & API

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
analytics.viewYesYesYes—Yes——
api.keysYesYes—————

Platform (System-Wide)

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
platform.adminYes——————

Assets (Liveries, Setups)

PermissionPlatform AdminLeague AdminRace DirectorStewardBroadcasterTeam CaptainDriver
asset.readYesYesYesYesYesYesYes
asset.createYesYesYes——YesYes
asset.updateYesYesYes——Yes—
asset.deleteYesYes———Yes—
asset.version.createYesYesYes——YesYes
asset.version.promoteYesYesYes——Yes—
asset.share.manageYesYesYes——Yes—

Totals by role

RolePermission count
Platform Admin44 (all)
League Admin43
Race Director21
Steward5
Broadcaster4
Team Captain8
Driver4

What's Included

Everything Racey ships is free for every league. There is no Pro tier to buy and no plan to pick — no league, team, staff, steward, driver, season or event caps. The list below is what a new account gets on day one.

AreaIncluded
Leagues & teamsUnlimited leagues, teams, staff and steward seats; unlimited drivers, seasons and events
ScoringEvery preset (F1, NASCAR, IndyCar, IMSA/WEC, GT3 Sprint, Oval/Road Weekly, Heat + Feature), custom scoring, drop weeks, multiclass, team scoring
StewardingProtests, rulings, 12 penalty types, blind review, independent voting, appeals, penalty points
PaymentsEntry fees via Stripe Connect at 0% commission, coupons and discount codes
DiscordResults, registrations, protest rulings, announcements, schedule updates, multi-channel routing, slash commands
DataCSV result import, CSV/JSON export, calendar/iCal feed, API keys for the read API
AnalyticsFull driver, season and league analytics, organization dashboard, multi-league standings
BrandingCustom logo and colours
AIRace reports, scoring recommendations, protest summaries

The one limit

LimitValue
Asset storage1 GB each for personal, team and league assets

Storage is a real recurring hosting cost rather than a plan lever, which is why it is the only cap left. Everything else opened up on 2026-08-27.

Not included

  • Broadcast overlays — withdrawn on 2026-08-27. They rendered from imported results rather than live timing, and Racey has no live timing ingest to drive them.
  • Race Control and the Broadcaster Panel — withdrawn on 2026-08-29. The race-day panel (flags, safety car/VSC, messages, incidents, stints, documents), the league Broadcast hub and the Broadcaster Panel were removed along with the rest of the broadcaster offer.
  • White-label branding, dedicated onboarding and the org-wide activity trail — Enterprise infrastructure, held by Founding Leagues. White-label is not built yet.

Special pricing

ProgramPriceDetails
Founding LeaguesFree foreverExisting founding leagues keep permanent Enterprise access. The public application window is closed.

Key Workflows

Create a league

  1. Sign up and log in
  2. Click Create League — enter name, description, discipline, sim
  3. Invite staff (admin, race director, stewards, broadcasters)

Set up a season

  1. Go to your league and click Create Season
  2. Configure scoring (choose a preset or build custom)
  3. Add rounds to the schedule (tracks, dates)
  4. Open registration

Run a race

  1. Race happens in the simulator
  2. Import results (CSV upload or manual entry; iRacing direct session import is paused)
  3. Review for accuracy
  4. Publish — standings update automatically

Handle a protest

  1. Driver files a protest with evidence
  2. League admin assigns stewards
  3. Stewards review, discuss (notes), and vote
  4. Steward issues ruling with explanation
  5. Apply penalties if warranted
  6. Involved parties may appeal (one chance, before deadline)

Collect entry fees

  1. League admin enables Stripe Connect in billing settings
  2. Complete Stripe onboarding (connect your bank account)
  3. Set entry fee amounts on the season (optional early-bird pricing)
  4. Drivers pay during registration — money goes directly to your Stripe account
  5. Process refunds through the payments dashboard if needed

Manage teams

  1. League admin creates teams for the season
  2. Team captain invites drivers
  3. Drivers accept team invitations
  4. Team standings calculated automatically based on scoring method (best N, sum all, or average all)

Set up Discord notifications

  1. Go to League Admin > Integrations > Discord
  2. Choose webhook-only setup or invite the Racey bot
  3. For webhook-only setup, paste the Discord webhook URL and send a test message
  4. For bot setup, follow Discord Bot Setup, then run /setup <league-slug> in Discord
  5. Choose which events trigger notifications: results, registration, schedule updates, announcements, and Pro/Enterprise protest rulings

Discord Slash Commands

CommandAvailabilityPurpose
/setupAll plansLink a Discord server to a Racey league
/linkAll plansLink Discord to a Racey account by DM token
/protestPro / EnterpriseGet a direct Racey protest filing link
/standingsPro / EnterpriseShow championship standings
/resultsPro / EnterpriseShow recent race results
/schedulePro / EnterpriseShow upcoming rounds
/leaderboardPro / EnterpriseShow league leaderboard data
/myresultsLinked Pro+ driversShow the linked driver's recent finishes
/penalty-pointsLinked Pro+ driversShow the linked driver's active penalty points

The /ask AI assistant command is hidden until the production AI integration is enabled.


Scoring Presets at a Glance

PresetTop-3 PointsPositions scoredBonuses and extras
F125, 18, 1510Fastest lap (1 pt)
NASCAR55, 35, 3440Fastest lap (1 pt)
IndyCar50, 40, 3510Pole (1 pt) + most laps led (2 pts)
IMSA/WEC25, 18, 1510Pole (1 pt) + multi-class + team scoring (every driver's points count)
Oval Weekly43, 42, 4110Most laps led (1 pt)
Road Weekly25, 18, 1510Pole (1 pt) + fastest lap (1 pt) + most laps led (1 pt) + clean race (2 pts)
GT3 Sprint25, 20, 1610Pole (1 pt) + fastest lap (1 pt)
Heat + FeatureFeature: 25, 20, 16Heat 8, Feature 10Heat points (10, 8, 6 …) added to feature points

Every league can use all 8 presets and build fully custom scoring. Finishers below the last scoring position get 0. No preset turns on drop weeks — switch them on under Scoring in your league admin area.


Common Troubleshooting

1. "I can't create a second league"

There is no league cap — free accounts can create as many as they like. If creation fails, it is a validation or permission error, not a plan limit; check the error message on the form.

2. "Standings aren't updating after publishing results"

Standings recalculate automatically when results go to Official status. If they look wrong, check the scoring configuration and whether penalties have been applied.

3. "Driver can't register — says they're at the limit"

The season might be full (check max roster size), or the league may have hit a plan limit. Have the league admin check their subscription status.

4. "Discord notifications aren't working"

Check that: (1) the league is configured at League Admin > Integrations > Discord, (2) webhook-only setup has a valid webhook URL, or bot setup has completed /setup, (3) private Discord categories explicitly grant the Racey bot access, and (4) the specific notification type is toggled on. Results, registrations, announcements, and schedule updates are available on all plans. Protest rulings, multi-channel routing, and results/standings commands require Pro or Enterprise.

5. "I filed a protest but nothing is happening"

The league admin needs to assign stewards to your case. If it's been a while, reach out to your league admin directly.

6. "My drop weeks aren't being applied"

No built-in preset turns drop weeks on — they are a setting in the season's scoring config. Check that drop weeks are enabled there and the count is correct. Note that if you've raced fewer rounds than the drop count, nothing gets dropped yet.

7. "Can't lock results — button is missing"

Only league admins can lock results (results.lock). Race directors can publish but not lock.

8. "Entry fee payment failed"

The league admin's Stripe Connect must be verified. Check that the connected account is active and the entry fee is configured on the season. If it's a driver payment issue, have them check their payment method.