# Photon PUN alternatives for turn-based and casual games

> PUN 2 is in maintenance mode. Which games need Fusion or a game server, which fit a hosted WebSocket service with rooms and matchmaking, and what each costs.

Source: https://hibira.io/topics/photon-pun-alternative
Updated: 2026-10-31

Photon's documentation says PUN 2 is in maintenance (LTS) mode, with fixes but no new features, and that new projects should consider Fusion or Quantum. Those fit real-time action games. Many PUN games are not that: they are card, board, quiz or party games where players take turns and a few updates a second are plenty. For those, a hosted WebSocket service with rooms and matchmaking can replace PUN for less money and with WebGL support built in.

## Does your game need a game server?

| Turn-based and casual: a WebSocket service fits | Real-time action: keep a game server |
| --- | --- |
| Card, board, puzzle and word games | Shooters, fighting and racing games |
| Quizzes, trivia, party and drawing games | Physics that must stay in sync between players |
| Turn-based strategy and auto-battlers | Tick-based simulation, lockstep or rollback netcode |
| Lobbies, matchmaking and chat in front of a separate game server | More than 10 updates a second from one player |
| WebGL games, and rooms shared by browser and Unity players | Rooms with more than 100 players |

A WebSocket service runs on TCP, has no tick and relays events between players without running game logic. If your game is in the right column, Photon Fusion or Quantum, or a dedicated server, will serve it better.

## Where a PUN 2 game can go

| Option | Who runs it | Best for |
| --- | --- | --- |
| Photon Fusion or Quantum | Photon | Real-time action, tick sync and prediction; a rewrite of the networking code |
| An open-source game server you host, such as Nakama or Colyseus | You | Server-authoritative logic, if you can run and scale servers |
| Hibira with the Unity package | Hibira | Turn-based and casual rooms, matchmaking queues, WebGL and cross-play with browser and Godot players |

## Cost at the same number of players

| Players online at once | Photon Public Cloud | Hibira |
| --- | --- | --- |
| 20 to 100 | 20 CCU free for development only; 100 CCU for $95 once, valid 12 months | Free plan: 100 connections, usable in production |
| 500 | $95 a month | Hobby, $19 a month |
| 1,000 | $185 a month | Starter, $39 a month |
| 2,000 to 3,000 | $370 a month for 2,000 | Pro, $89 a month for 3,000 |

Photon figures are from the [PUN pricing page](https://www.photonengine.com/pun/pricing) and the [PUN 2 introduction](https://doc.photonengine.com/pun/current/getting-started/pun-intro), checked on 2026-10-31. Photon includes 3 GB of traffic per CCU a month. Hibira counts the messages you send per day, and a client event counts as one message however many players receive it; on the Free plan the copies delivered to players count toward 2 GB of data a month, and from Hobby up, broadcast deliveries are not counted. Daily messages, peak connections and direct data per month are still capped on every plan. See the [pricing page](https://hibira.io/pricing).

## What moving looks like

| PUN 2 | Hibira Unity package |
| --- | --- |
| `JoinRandomOrCreateRoom` | `HibiraQueue.Join` with a size, rating range and criteria |
| `CreateRoom`, `JoinOrCreateRoom` | `HibiraRoom.Join` on a `presence-room-` channel with a capacity |
| `OnPlayerEnteredRoom`, `OnPlayerLeftRoom` | `room.MembersChanged` |
| `MasterClient` | `room.Host`: the player who joined first, handed on when they leave |
| `photonView.RPC`, `RaiseEvent` | `room.Channel.Trigger("client-…")` and `Bind` |
| `PhotonNetwork.Instantiate`, `PhotonView` | No equivalent: send spawn and state events yourself |

Your backend signs each room and queue with the app secret, so names and ratings come from your server, not the client. The full mapping, with code for each step, is in the [PUN 2 migration guide](https://github.com/hibira-io/unity/blob/main/Documentation~/moving-from-photon-pun-2.md). Start with the [Unity guide](https://hibira.io/guides/unity), and see [game lobbies](https://hibira.io/use-cases/game-lobbies) for rooms that browser players join too.

## Common questions

### Is PUN 2 being discontinued?

Photon's documentation says PUN 2 is in maintenance (LTS) mode: it gets fixes but no new features, and new projects should consider Fusion or Quantum. Existing PUN 2 games keep running.

### Can a WebSocket service replace Photon for a turn-based game?

Yes, for card, board, quiz, party and other turn-based or casual games. Rooms, matchmaking, presence and in-room events cover what PUN does for them. Real-time action games with tick sync still need Fusion, Quantum or a game server.

### Does it work in Unity WebGL builds?

Yes. The Hibira Unity package connects over WebSockets in the Editor, on desktop and mobile, and in WebGL builds, and the same rooms can be joined from a browser or from Godot.
