All comparisons

Looking for a Photon alternative?

Multiplayer Agent is a Photon alternative built for browser games. The main difference is what you are billed for: Photon meters concurrent connections and bandwidth, we charge by monthly active players. For a web game with spiky traffic, that usually costs less and is far easier to predict.

The real difference is the meter, not the feature list

Photon prices by concurrent users: the number of people connected at the same moment. That is the honest unit for infrastructure, because concurrency is what actually consumes a server. It is also close to impossible for a small studio to forecast. You find out your peak after it happens, and a game featured on a portal for one afternoon can spike far past a tier you picked months earlier.

We price by monthly active players instead: how many distinct people played at all during the month. It is the number you can estimate from your own traffic, it does not punish a good day, and a game that goes quiet costs nothing.

one month of traffica spike sets your concurrency billmonthly playersunchangedsame people, same monthwhat we bill
The same month of traffic seen by two meters. A single busy afternoon sets the bill on a concurrency plan, while the number of distinct people who played that month barely moves. That gap is the whole comparison.

You do not write or deploy a server

With Photon you generally choose between their hosted rooms and running your own server plugin, and anything authoritative means writing and deploying server code.

Here the server already exists. Rooms are created on first join, state is whatever fields you set, and if you need rules that a cheating client cannot bypass you deploy a small piece of game logic that runs server-side, versioned, with rollback and logs, and no container to manage.

server logicdecides collisions, scores, winnersclient 1sends inputs onlyclient 2sends inputs onlyclient 3sends inputs onlyinputs upstate down
Clients send inputs upward; the server decides outcomes and sends state back down. A score is never something a browser asserts, which is what makes a leaderboard mean anything.

Where Photon is the better answer

This is not the right tool for everything, and it is worth being direct about that.

  • Frame-perfect competitive combat. Those want a UDP transport with rollback. Ours is reliable and ordered, so fast browser action is built with client-side prediction and interpolation instead: that ships, and it is a different job from rollback.
  • Native engine-first projects. Photon's Unity and Unreal SDKs are mature and widely used, and they reach desktop and console. Ours is JavaScript, so an engine reaches us wherever it builds to the web.
  • Rooms where nearly all state is per-player. Hidden information works here, held in server logic that sends each player their own view, but if almost every field diverges you are writing a server either way.

If your game runs in a browser, the trade is usually in our favour. If it has to ship as a native competitive shooter, it is not.

Common questions

Is Multiplayer Agent cheaper than Photon?

For most browser games, yes, but the reason is the pricing model rather than a discount. Photon bills for concurrent connections and bandwidth; we bill for monthly active players. A game with a large audience that plays in short bursts pays far less on a monthly-players meter than on a concurrency meter.

Can I migrate an existing Photon game?

The networking layer has to be rewritten: the state models are different. In practice this is a smaller job than it sounds for a browser game, because you no longer write a server: you set fields on your own player and read shared state. Most of the migration is deleting code.

Do you support Unity?

Wherever Unity builds to the web, yes: a WebGL build reaches the same rooms through the same key, because the client SDK is JavaScript. There is no native C# binding yet, so a desktop or console build is Photon's answer for now, not ours.

Try it on your own game

The free tier does not expire and asks for no card. Add one script tag and have two people playing in about a minute.