Publish your game — playable in the browser
Made a game in Unity, Godot or Three.js? Export it as a web build (WebGL/HTML5), zip the folder so `index.html` sits at the root, and upload it from your browser. You get back a link that plays instantly — no download, no install, no approval queue. Every account gets 300 MB of free hosting.
Last updated:
What you get at the end
An instant-play link
One link you can share anywhere — a stranger clicks and is playing in seconds, no download.
An embeddable iframe
Drop the game into your own site, blog or campaign page with a single line of HTML.
A card that plays inside X
Share the play link on X and the card plays inline in the timeline (twitter:player).
See a real one: a game published on the platform
By engine
Any engine that exports a static folder with an index.html works. Here are the specifics.
UnitySupported — build for the WebGL platform▾
- Switch platform: File → Build Settings → WebGL → Switch Platform.
- Set compression: Project Settings → Player → WebGL → Compression Format = Brotli.
- Build. You get a folder containing index.html and a Build/ subdirectory.
- Zip that folder — index.html must sit at the archive root, or one folder deep. No deeper.
- Ship the build output only — not your project or source assets. The cap is 1,000 files.
If your Unity template already outputs .br files, you can skip the CLI's --precompress flag. Either way works.
GodotSupported — export for Web (HTML5)▾
- Project → Export → Add… → Web.
- Export into an empty folder and name the main file index.html. If you name it something else (say game.html), type that same name into the "Entry point" field when you upload.
- Zip every exported file together (.html, .wasm, .pck …) into one archive.
- Do not enable thread support (SharedArrayBuffer) — a build that depends on it will not run here.
We don't document Godot's internal export-preset options — check the official Godot docs for those.
Three.js · Babylon.js · HTML5Supported — any static folder with an index.html▾
- Build your project for production (e.g. npm run build).
- Make sure index.html is at the root of the output folder and all asset paths are relative.
- Zip the output folder and upload it.
If it runs on a plain static file server, it runs here — it is exactly the same thing.
Unreal EngineNot supported — Unreal dropped HTML5 export▾
- Unreal removed official HTML5 export in 4.24 (2019), so in practice there is no WebGL build to upload.
- Instead: publish a downloadable build on your project page, or add a trailer and screenshots.
Two ways to upload
From the browser
Easiest for a first upload — drag and drop.
- 1
Create the game page
A build attaches to a project, so you need one first. Takes a minute.
- 2
Export a web build from your engine
Unity: the WebGL platform. Godot: the Web export. Anything else: a static folder with index.html at the root.
- 3
Zip the folder
index.html must be at the archive root, or one folder deep. Up to 500 MB.
- 4
Drag it onto the upload page
Your quota is shown before you pick a file. We extract it and serve it from a CDN automatically.
- 5
Hit Publish
You get an instant play link and an embed snippet — ready to share.
From the CLI
For repeat deploys and CI.
- 1
Create an API key
At /profile/api-keys, granting the deploy scopes: webgl:upload, webgl:deploy, webgl:read, project:read. The key is shown exactly once.
- 2
Log the CLI in
The CLI validates the key against the server immediately.
tgn auth login tgn_k1_xxxxxxxx
- 3
Deploy the build
One command: package, upload, extract, activate. --precompress cuts the payload 3–5×.
tgn deploy ./Builds/WebGL --precompress
The limits
| Free quota | 300 MB per account |
|---|---|
| Max archive | 500 MB |
| After extraction | 1,000 files / 1 GB |
| Versions kept | 10 per game |
| Entry point | index.html at the root (overridable) |
| Rejected files | .exe .bat .cmd .sh .ps1 .dll .msi .com .scr .vbs |
Full hosting details and how it compares: Free WebGL hosting
Frequently asked questions
How do I upload a Unity game to the web?
Switch the platform to WebGL in Build Settings, set Compression Format = Brotli under Project Settings → Player, and hit Build. You get a folder with index.html and a Build/ subdirectory. Zip it and upload it from the publish page — or run tgn deploy from the CLI. Once published you have a link that plays in the browser instantly.
How do I upload a Godot game?
Use the Web (HTML5) export under Project → Export. Export into an empty folder and name the main file index.html (or change the "Entry point" field at upload time to match whatever you named it), then zip every exported file together and upload. Don't enable thread support — a build that relies on SharedArrayBuffer will not run.
Does it work with Unreal Engine?
No. Unreal removed official HTML5 export in version 4.24 back in 2019, so in practice there is no WebGL build to upload. If your game is on Unreal, publish a downloadable build on your project page instead.
What has to be inside the .zip?
Your whole web-build folder. The only hard rule is that index.html sits at the archive root or one folder deep — no deeper. Executables are rejected (.exe .bat .cmd .sh .ps1 .dll .msi .com .scr .vbs), and server-side scripting (Node, Python) isn't supported: static, client-side builds only.
What are the size limits?
The free quota is 300 MB per account (shared across all your games). A single archive can be up to 500 MB, and after extraction it may contain at most 1,000 files totalling 1 GB. Up to 10 versions are kept per game.
What do I get once it's published?
Three things immediately: a shareable instant-play link, an iframe snippet to embed the game on any site, and a card that plays inline when you share the link on X. You can upload a new version any time and roll back in one click.
Do you take a revenue share or ask for exclusivity?
No. We take no cut and ask for no exclusivity. Your game is yours — ship it on itch.io, Steam or your own site at the same time.
Further reading
- Game Designلماذا يعتبر "مستند تصميم اللعبة" (GDD) سر نجاح مشروعك الأول؟تعرف على كيفية عمل وثيقة تصميم الألعاب (GDD) كمخطط أساسي لمشاريع Unity، وتحويل آليات اللعب المجردة إلى كود C# قابل للتوسع وأنماط تصميم برمجية.
- GeneralWhat Is a WebGL Game? How Browser Games WorkA WebGL game is a full 3D game that runs inside your browser with no plugins or download. Learn what WebGL is, how it works, and why it powers instant play.
- Tools & ResourcesUpload Your WebGL Game With the TGN CLIShip faster from the terminal. Learn to package and upload your WebGL build to The Gaming Nest with the TGN CLI, plus versioning and update tips.
- Game DevelopmentFix Unity WebGL Not Loading: Common ErrorsYour Unity WebGL game won't load? Fix black screens, memory errors, compression and CORS issues with this practical checklist to get your browser build running.
- Game DevelopmentUnity vs Godot: Which to Learn as a BeginnerUnity or Godot for your first game? Compare cost, learning curve, 2D vs 3D, jobs, and WebGL export to pick the right beginner engine in 2026.
- Game DevelopmentReduce Unity WebGL Build Size & Load TimeBig WebGL builds scare players off. Learn to reduce Unity WebGL build size and load time with compression, texture and audio settings, and code stripping.