Quick answer: On PC, use Steam Playtest for a large open or semi-open test that cannot affect your reviews, Steam beta branches for testing builds with people who already own the game, and itch.io restricted pages for small private tests. On mobile, use TestFlight (up to 10,000 external testers) and Google Play testing tracks. BetaHub adds tester management on top. Whatever you choose, build bug collection into the game itself, because distribution platforms do not collect your crashes or bug reports.

Choosing where to run a beta is mostly choosing who your testers are and how much control you need. Each platform below handles distribution well; none of them, apart from TestFlight's basic feedback, handles bug reports. Here is how they compare in 2026, and how to make sure the bugs testers find actually reach you.

At a glance

PlatformBest forAccess controlNotes
Steam PlaytestLarge tests before launchPlayers request access on your store page; you admit them in batchesA separate child app; playtesters cannot review the main game
Steam beta branchesTesting new builds with existing ownersOptional password per branchInside your main app
itch.ioSmall private tests, jams, web buildsDraft with secret link, or Restricted with a password or download keysVery quick to set up
TestFlightiOS betasUp to 100 internal and 10,000 external testersExternal builds are reviewed; builds expire after 90 days
Google Play testing tracksAndroid betasInternal (up to 100), closed and open tracksNew personal accounts need a 12-tester, 14-day closed test before production
BetaHubManaging a tester communityIts own tester management and Discord botFree for 1 developer; then per developer

Steam Playtest

Steam Playtest creates a separate “child” app tied to your game. Players request access from your store page and you let them in in batches; in the default limited mode, Steam picks playtesters at random from the people who asked. Because it is a separate app, someone who only played the playtest cannot review your actual game. It is the best way to run a big pre-launch test without risking your review score. See how to run a Steam Playtest.

Steam beta branches

Branches live inside your main app, so they are for people who already have the game: a password-protected branch for testers, or a public “beta” branch for opt-in players to try the next patch. See Steam beta branches vs Steam Playtest.

itch.io

itch.io is the fastest way to share a private build: keep the page in Draft and send a secret link, or set it to Restricted and give testers a password or download keys. It is ideal for small groups, game jams and HTML5 builds.

TestFlight and Google Play

On iOS, TestFlight supports up to 100 internal testers and up to 10,000 external testers, with external builds going through review and every build expiring 90 days after upload; testers can send screenshot feedback and crash context. On Android, Google Play offers internal testing for up to 100 testers plus closed and open tracks, and personal developer accounts created after November 13, 2023 must run a closed test with at least 12 testers opted in for 14 days before releasing to production. Guides: TestFlight and Google Play closed testing.

BetaHub

BetaHub sits on top of distribution: it manages testers (who never count as paid seats), collects reports with gameplay video through Unity and Unreal plugins, and runs a Discord bot. It is free for one developer and priced per developer after that. See BetaHub alternative.

Collecting bug reports, whichever platform you pick

Distribution platforms deliver builds; they do not tell you what broke. Build collection into the game itself:

  1. Automatic crash and error capture, so you hear about the failures testers do not mention.
  2. An in-game report button that attaches a screenshot, logs, hardware and build, so reports are reproducible.
  3. One place for everything, so a Steam Playtest report, a TestFlight crash and a Discord complaint about the same bug end up as one issue.

Bugnet does all three with SDKs for Unity, Unreal, Godot, GameMaker, Construct 3, Pygame and the web, and it works the same whichever platform delivers the build. Set it up free before your next test.

Frequently asked questions

What is the best way to beta test an indie game on Steam?

Use Steam Playtest for large pre-launch tests: it is a separate app, players request access from your store page, and playtesters cannot review the main game. Use password-protected beta branches for testing builds with people who already own the game.

How many testers can TestFlight have?

TestFlight supports up to 100 internal testers from your team and up to 10,000 external testers. Builds expire 90 days after upload.

What is the Google Play 12 testers rule?

Personal developer accounts created after November 13, 2023 must run a closed test with at least 12 testers who stay opted in for 14 days before they can apply for production access.

How do I run a private beta on itch.io?

Keep the project in Draft and share its secret link, or set it to Restricted and give testers a password or download keys.

How do I collect bug reports from beta testers?

Add an in-game bug report button and automatic crash capture to the beta build, so reports arrive with screenshots, logs and device details regardless of where testers downloaded it. Bugnet provides both for most engines.

The platform gets the build to testers. Your game has to get the bugs back to you.