Migrate from Hathora to Asobi

Hathora shuts down 2026-05-05. Asobi is the Apache-2, self-hostable backend you move to once, then never again.

Read the full migration guide

Why you're here

In February 2026 Hathora announced a pivot to AI infrastructure and set a shutdown date for the game-hosting product. If you have a live game on hathora.dev or hathora.cloud, you need a new backend by May — and you probably don't want the next one to disappear the same way.

Asobi is built for that. Apache-2.0 licensed, self-hostable, Postgres-backed, single Docker container. If we ever pivot, your game keeps running — the code is yours forever.

Hathora → Asobi at a glance

CapabilityHathoraAsobi
LicenseProprietary managed serviceApache-2.0, self-hostable
Rooms / matchesOne container per roomThousands of matches per container (BEAM processes)
MatchmakerMatchmaker 2.0Pluggable strategies (fill, skill-based, custom)
LobbiesPublic / private lobbiesTicket-based + matches in "waiting" phase
AuthAnonymous, Google, Discord, SIWEUsername/password, OAuth/OIDC, JWT sessions
LeaderboardsNot built-inBuilt-in, scoped per board
Economy / inventoryNot built-inBuilt-in (wallets, items, IAP receipts)
ChatNot built-inBuilt-in, per-channel pub/sub
Per-match dedicated UDPYesNo — WebSocket/TCP only. Pair with a UDP relay if sub-3ms physics matter.
Region ping / autoplacementYesNo — deploy one container per region, pick client-side.
PricingCCU-based + computeFlat per-container (Cloud) or free (self-host)
Hot reloadNoEdit Lua, save, running matches pick it up

We're honest about the UDP gap: if you run a twitch-FPS with per-match dedicated servers, Asobi alone isn't a drop-in. Most Hathora games on turn-based, MMO, co-op, or casual loops migrate cleanly.

Migration in four steps

The full guide on GitHub covers endpoint-by-endpoint mapping, WebSocket handshake, and a before/after of a typical Hathora client. The short version:

  1. Your existing game-server process keeps running. Bring up an asobi_lua container alongside it.
  2. Port the Hathora calls (createLobby, getRoomInfo, loginAnonymous, listActivePublicLobbies) to the Asobi REST + WebSocket equivalents.
  3. Once auth / matchmaking / lobbies run on Asobi, drop Hathora. Keep your game-server container on Hetzner, Fly, Scaleway — wherever.
  4. Optional: fold your game-server logic into a match.lua script and let Asobi host that too. No game-server container at all.

The exit story — why this won't happen again

Asobi is Apache-2.0 and self-hostable. If the managed Cloud service ever goes away, you run the same container on your own hardware and your game keeps working. No re-architecture, no emergency migration, no "we're pivoting to AI" email.

The exit guide is a one-page runbook: how to move off Asobi Cloud to your own hardware, how to keep a self-hosted fork alive if the project stalls, what data lives where.

Next steps

Easiest path: join Discord and drop into #migrations. We'll walk through your specific Hathora setup rather than you fighting docs in the dark.

Prefer async? The full migration guide on GitHub has the endpoint-by-endpoint mapping.

Want the managed version from day one? Asobi Cloud opens for First-10 signups during Launch Week (June 16–20, 2026) — €9/mo Indie tier, EU-sovereign, same open-source core.