Score Champions

Score Qualification and Score Champions: two weekly ladders, one competitive SP, eligibility, and prizes

Last updated: October 20, 2018

Score Qualification & Score Champions

Score Qualification and Score Champions are ScorePlay’s weekly competition: every normal competition week, both ladders run at once with the same competitive SP from the same picks (matches whose kickoff falls in the week on the rail). Score Qualification ranks everyone; Score Champions ranks only eligible players that week—it is the elite table with prize splits. Rankings use ScorePoints (SP) only; USDC still earns SP, but USDC is never a ranking axis.

Plain-language guide: How it works


Player guide

Two ladders, one competitive SP

For competition week index W (the week you select on the rail):

  • Score Qualification — Full leaderboard of all players by competitive SP in that window.
  • Score Champions — Same SP totals, but the table lists only users eligible for Champions week W; ranks are among that group only.

So you never “play twice”: one week of predictions feeds both your open rank and your elite rank when you have access.

How you qualify for Champions week W

Eligibility comes from week W − 1:

  • Top 25 on Score Qualification in week W − 1, or
  • Top 10 on Score Champions in week W − 1 (for W ≥ 2; week 1 Champions draws only from prior Score Qualification).

Everyone can view the Score Champions table for any week; the app shows whether you are qualified and your rank (or “not qualified”) in the competition status areas on the leaderboard and on Compete.

Staying in or dropping out

Next week’s Champions access depends on this week’s results:

  • Finish top 25 on Score Qualification this week, or
  • Finish top 10 on Score Champions this week,

…and you stay eligible for week W + 1. You drop out only if you miss both cutoffs.

Prizes (live today)

Top 5 on Score Champions for that week split the distributable pool 35% / 30% / 20% / 10% / 5% per published rules.

To receive a paid share, you must be eligible on Champions that week and finish top 5 on Score Champions.

Prize pool estimate

The in-app estimate is protocol fees from the prior competition period plus a protocol subsidy, per GET /api/competition/prize-pool-estimate. It funds the Score Champions prize for the period shown. On the leaderboard card, open Prize sources for the fee vs subsidy breakdown.

Competitive SP (summary)

Competitive SP = event-linked allowlisted activity, counted by match kickoff in the competition window. Referral and non-event SP do not count on Score Qualification or Score Champions; they can still add to All-time.

For SP amounts, see Points and leaderboard.

Opening week (season start)

The first competition period (week index 0 in code) is labeled Opening week in the app: Score Champions is off; only Score Qualification runs. Score Champions starts from week index 1 onward. Exact UTC bounds are in the technical appendix—use the week rail and countdown in the app for the live window.

Coming soon (not live until announced)

  • Optional paid entry where permitted; adds to the pool; does not buy SP or rank.
  • NFT access ticket; transfer/sale where supported (utility, not an investment).
  • Schedule flexibility when fixtures are thin; announced in-app.

Eligibility snapshots

Live ranks may be provisional until periods are finalized; see technical section.


Technical appendix

Competition calendar (lib/competition/week.ts)

  • Week index 0SCORE_CHAMPIONS_SEASON_START_ISOSCORE_CHAMPIONS_WEEK_ONE_START_ISO ([start, end) UTC). Score Champions disabled.
  • Week index 1+Tuesday 00:00 UTC → next Tuesday 00:00 UTC (7-day blocks from week-one start).

Verify constants in lib/competition/week.ts for deployment-specific dates.

Competitive SP (implementation)

Transactions joined to events with eventUtcDate >= weekStart and eventUtcDate < weekEnd, allowlisted types (e.g. PREDICTION, WARMUP_PREDICTION, relevant on-chain SP). Excluded: REFERRAL, non-event, off-allowlist.

Cutoffs, ties, and disputes (canonical)

These details are for support and disputes; normal play only needs the top 25 / top 10 / top 5 summary above.

  • Promotion cutoffs — “Top 25” and “Top 10” use an expanded cutoff: every player whose competitive SP is tied at the cutoff line for that rank is included with the qualifying group (same SP as the lowest included rank).
  • Score Champions prizes — “Top 5” paid ranks use the 35% / 30% / 20% / 10% / 5% split. If multiple players tie for a paid rank, they split that rank’s percentage equally among tied players.
  • Implementation — Eligibility expansion and cutoff SP use tieExpandedCutUserIds and related helpers in util/competitionLeaderboard.util.ts.

Promotion rules (indexed)

  • Score Qualification week W: Top 25 (+ ties)Score Champions week W+1.
  • Score Champions week W (W ≥ 1): Top 10 (+ ties)Score Champions week W+1.
  • Top 5 (+ ties) on Score Champions → prize shares 35% / 30% / 20% / 10% / 5%; ties split that rank’s share.

Data safety (production)

New tables only: CompetitionWeek, CompetitionLeaderboardSnapshot, CompetitionEligibility. No rewrites of core user/event rows.

APIs (overview)

  • GET /api/competition/meta — rail, championsEnabled, etc.
  • GET /api/competition/leaderboard?week=&type=qualification|champions
  • GET /api/competition/me
  • POST /api/competition/finalize?week=NCOMPETITION_FINALIZE_SECRET
  • GET /api/competition/prize-pool-estimate?week= — fees from W−1 funding pool for W; subsidy; entries placeholder.