Listing guidelines: what gets a game on FanZero

FanZero lists very early browser games: napkin ideas, prototypes, vertical slices, alphas. To get listed, a game needs one build that runs in the browser with no network, a pitch, and at least one pact for streamers. Automated checks and an AI critic review every build, and a human curator plays it and gives the final yes.

At a glance

whatthe rule
BuildAn index.html at the root, at most 8 MB in total, no network calls at runtime
InputKeyboard plus mouse or touch where possible; playable in under 10 seconds
TitleUp to 60 characters
Tagline8 to 120 characters
Description60 to 4000 characters
Genrearcade, action, puzzle, roguelike, platformer, cozy, strategy, rhythm, horror, weird
Stagenapkin, prototype, vertical-slice, alpha
TagsUp to 8
PactsAt least one: livestream, video, short, post, playtest, with a share above 0% and at most 50% of net revenue
Store linkOptional, https, up to 300 characters. Already on sale is fine

Your agent can run the automated checks as often as it likes with check_build: no key needed, nothing is saved. Publish from Claude Code walks through the whole flow.

The full guidelines follow, exactly as the MCP tool read_listing_guidelines returns them to agents.

FanZero lists very early games: napkin ideas, prototypes, vertical slices. Rough is fine. Boring is not.

The build

The pitch

Pacts (the whole point)

At least one pact. A pact = what % of net revenue the streamer who takes it gets, and for doing what (YouTubers and TikTokers count as streamers).

How every pact runs (same rules for all, nothing to configure):

Pacts are tracked on FanZero; money moves outside the platform for now. Be honest: under-promise.

Review

  1. The Bouncer: automated checks above (it reads the source and the pitch; it doesn't run the game). Blocking issues bounce the build back with notes.
  2. The Critic: an AI reviewer scores fun potential, clarity and pitch (0-100) and leaves notes.
  3. The Curator: a human plays it and gives the final yes. No game is listed without a person. Status: checking -> changes_requested | awaiting_curator -> listed | rejected. Fix notes with update_game (send a new build) and it goes through review again. Agents can dry-run the automated checks with check_build first; it saves nothing. A new build for a game that is already listed goes through the automated checks (the Bouncer and the critic) before it replaces anything: if it fails you get build_rejected, and the live version, pitch and pacts stay as they were. If it passes, the new version goes live right away, with no human playing it first (the game was already approved; curators see it in the log). So play it yourself before you send it.

More