Personal-best auto-tracking
Every player has a single slot on the board — their best submitted score. Lower submissions are automatically ignored, so the board never fills with filler attempts.
Track each player's single best score — peak performance wins, grinding doesn't. One run, one record, one board every player wants to top.

New personal best
Lumen
70,94080,015
#6 → #4Scoreboards is the Discord highscore bot built for communities that reward peak performance. Run arcade-style score challenges, weekly skill competitions, or hall-of-fame records where it only takes one perfect run to top the board — all tracked automatically, with a web leaderboard your community can share outside Discord.
The basics
A highscore leaderboard tracks each player's single best score. Every time someone submits a new score, the bot compares it to their current personal best — and only replaces the record if the new score is higher.
That's the opposite of cumulative formats: grinding ten average runs doesn't help you climb. One flawless run does.
It's the format arcade games invented and the format speedrun and challenge communities still use today — because it rewards peak skill, not time invested.
Play a few runs on the Tetris Marathon board. A lower score changes nothing; a new personal best replaces the old one and moves you up.
68,905 does not beat your best of 72,180, so it is ignored and the board stays as it is.
Your runs
Tetris Marathon
Features
Every player has a single slot on the board — their best submitted score. Lower submissions are automatically ignored, so the board never fills with filler attempts.
Players log a score with the Submit score button on the leaderboard. No spreadsheets, no DMs to mods — the bot handles the comparison and the board update.
Submissions can land in a log channel where moderators review (and reject if needed) before the board updates. Auto-approve after a configurable delay for low-friction boards.
Players can attach an image to their submission, and moderators see it in the log channel — handy for verifying runs on boards where scores are easy to fake.
Scores keep up to three decimals, so 7.85 metres or 9.875 points rank exactly. Players can type 12.5 or 12,5 — the bot reads numbers the way their language writes them.
The highest score tops the board by default. Set the sort order to Ascending and the lowest wins instead, for golf strokes, fewest moves or fewest deaths. A new best is then a lower number.
Cancel an approved run with Cancel Review and the player's best falls back to their best remaining approved score. Admins can also set a score exactly with /score.
Assign Discord roles at score thresholds (e.g. a 10K-club role, 50K-club role). Players see their tier update the moment a new PB crosses the line.
Every highscore board gets a shareable web leaderboard — every player's PB, full history, and last-updated time, all browseable outside Discord.
Want the full mechanics and best-practice tips? Read the complete highscore guide →
Flexible submissions
Players submit however suits them — the Submit score button right on the leaderboard message, or straight from the web leaderboard, where a run can even be logged under a custom name. Both routes feed the same board.
Player hits Submit score and enters their new number (and optionally a screenshot as proof).
The bot looks up the player's current PB and checks whether the new score beats it.
If it's a new record, the PB replaces the old one. If not, the submission is ignored — no board clutter, no manual curation.
The board updates immediately. If the new PB crosses a tier-role threshold, that role is assigned in the same step.
A single flawless run beats a grinder's average. The board rewards skill ceiling, not playtime — which is what makes highscore boards exciting.
Since only the best score counts, a record-holder's position is stable. New entries have to actually beat the board, not just add volume.
Simpler than ELO, more competitive than cumulative — highscore's "best score wins" is the format everyone immediately gets.
Any kind of record
Highest wins by default. Switch the sort order to Ascending and the lowest wins instead, and decimals keep close results apart. Either way, only each player's best counts.
Highest wins
The default: the highest score sits on top, and a new best is a higher number.
Lowest wins
Choose Ascending as the sort order, under More options or in the dashboard, and a new best is a lower number.
Decimals
Up to three decimals. 7.85 and 7,85 are read the same, whichever way the player writes it.
Use cases
Tetris, Pac-Man, retro shmups, roguelikes — any game where a single great run is what defines a ranking.
"Highest score in 10 minutes" or "most kills in one life" — only each player's best attempt counts toward the board.
Document the best anyone has ever done at a specific activity. Peak-performance boards that become the community's permanent record.
Track personal bests for max-weight lifts, jump distance, rep counts — any real-world benchmark where your best single effort is the number that matters.
Mini golf strokes, a puzzle solved in the fewest moves, a run with the fewest deaths: switch the sort order to Ascending and the lowest score holds the record.
Economy · Beta
Switch on the economy and every approved result on this board pays your members a currency you name. They spend it in your server's shop on roles, board emojis and name colours, so there is always a reason to play one more.
See how the economy worksQuick start
Invite the bot to your Discord server. It takes a few seconds.
Add to DiscordName the board and pick Highscore. It starts with three example entries, which disappear when the first real score lands. If the lowest score should win, press More options and choose Ascending.
Press Submit score on the leaderboard, type the score and attach a screenshot if you like. Without a log channel it goes straight on the board; with one, it is reviewed there first.
Auto-approval, roles for the top ranks, seasons, colours and a web page for every board are all in the dashboard.
Open the dashboardFAQ
Nothing changes on the board. The player keeps their best, and only a score that beats it replaces it. On a board with a log channel, the lower run is still posted there for review like any other submission.
Pick Highscore when one great run should decide the ranking: each player keeps only their best score. Pick Classic when every score should add to a running total, so the players who play most climb highest.
Yes. Press More options on the reply to /leaderboard create and choose Ascending, or change the sort order in the dashboard. The lowest score then tops the board, and only a lower score counts as a new best. Set it before the first scores come in: each best already on the board was chosen under the old order.
Yes. Highscore boards keep up to three decimals, so 7.85 or 9.875 ranks exactly. Players can type 12.5 or 12,5 — both mean twelve and a half — and a number like 1,250 is read the way the player's own language writes numbers.
On a board with a log channel, right-click the approved submission and choose Apps → Cancel Review. The player's best falls back to their best remaining approved score, or they leave the board if it was their only one. To set a number directly, use /score or the web leaderboard.
Yes. Give the board a season end date in the dashboard: it freezes itself then, with the final standings kept, and can post a heads-up 24 hours before. For the next week's challenge, create a new board.
More leaderboard types
Every Scoreboards leaderboard lives in Discord and on the web, and one server can run as many as it likes.
A live highscore leaderboard turns every run into a shot at the record — and gives your community a board to brag about.
Add to Discord