Limits
The sizes and counts the platform enforces on uploads, declarations, saves, writes and reads.
Most limits exist so a game cannot slow down every other game on the platform. Every one is enforced at publish or at write time with a warning or a refusal that names the cap, never by silently dropping data.
Declarations
| Declaration | Ceiling | Notes |
|---|---|---|
| Named leaderboards | up to 32 per game | Your game's own limit may be lower. |
| Achievements | up to 64 per game | Your game's own limit may be lower; Remix Desktop shows it on the Details page. Retired keys still count toward the 64. |
| Levels | 5 to 99 | A launched game's count can grow but not shrink. |
A declaration past your game's limit is refused at publish with a warning naming the cap; the rest of the block still syncs.
Documents and Payloads
| Item | Limit |
|---|---|
| Game document | 2 MB of HTML per uploaded version; keep media in assets/ |
| Asset file | 5 MB each |
| Save slot document | 256 KiB of JSON; no cap on the number of slots |
| Cloud file | 1 MiB each, counted against the creator's shared storage allowance |
| Leaderboard scores | Safe integers only; overflow on incr and decr boards is refused |
| Achievement icon | A PNG, JPEG or WebP under assets/; square reads best |
Immutability
Once an upload has declared a key, these fields cannot change on it; a changed value is ignored with a warning:
- Leaderboard
sort,operator,reset
A launched game's lifecycle is locked too: later uploads cannot change its mode, and a level game's levelCount can only grow. Names, descriptions, metadata, icons and hidden can change on any later publish.
Time Windows
| Behaviour | Window |
|---|---|
| Leaderboard submission id retries | 7 days |
New records reaching the listRecords top page | about 10 seconds |
Rate Limits
- HTTP API: 60-request bucket per key, refilling at one request per second.
- Leaderboard reads: a game that polls its own boards is throttled and hears
null. Read on a user action. - Writes: leaderboard records, achievement unlocks and saves are throttled per player and per game. A throttled write answers
{ ok: false, code: 'throttled' }, and its reason says when to retry.