Common questions about running your own 5Stack instance. If you're a player looking for how a 5Stack site works rather than how to host one, every instance has an in-app Help & FAQ page that covers that side.
Yes. It's free and open source, and you host it yourself, so there's no per-seat or per-match cost from the project. You pay for whatever infrastructure you choose to run it on.
It's built and maintained by one developer. Sponsoring is what keeps the CS2 plugin updates, GPU rendering work, and the roadmap moving.
No. 5Stack is self-hosted only, and there's no SaaS tier or managed offering. 5stack.gg is the maintainer's own public instance, which is the easiest way to see the software running before you install it.
One command brings up the whole stack:
git clone https://github.com/5stackgg/5stack-panel; cd 5stack-panel; ./install.shThat installs K3s (a lightweight Kubernetes distribution), the database, S3-compatible storage (MinIO by default), and the panel itself. See What is Installed? for the full inventory, and Configuration Options for the flags the installer accepts.
A Linux server with at least 3 GB of memory, and a domain you control. See Requirements for the details, but the two things that catch people out are:
- Ports.
80and443for routing, plus8585on every 5Stack server for the game server node connector. If you can't use 80/443, you can change them. - Subdomains. The panel needs several records pointing at it — the root
domain plus
api,ws,demos,search, andconsole. Deeply nested domains likeapi.deep.example.comare fine.
Game servers are created and destroyed constantly, and that's the problem Kubernetes is actually good at. The install uses K3s rather than a full distribution, so the footprint is much smaller than "Kubernetes" usually implies. The reasoning is written up in Why Kubernetes?.
Yes — see Custom Kubernetes.
Both are supported. See Reverse Proxy for the general case, and the Cloudflare guides for DNS & SSL, the Cloudflare proxy, and Cloudflare Tunnel if you'd rather not expose the host directly.
Not on the panel. You attach servers to it, in one of two ways:
- Game server nodes — a machine that creates CS2 servers on demand. Budget around 150 GB of disk per node for the game files and in-progress demo recordings, and note that how many servers a node can run depends on its hardware and available ports.
- Dedicated servers — a standalone server you manage yourself, registered with the panel.
You can mix both, and point at a third-party host. CS2 updates are applied automatically, and regions, Steam Relay, and LAN setups are all supported.
Only for the features that produce video — in-browser demo playback, live streaming, and highlight and clip rendering. Those run on a GPU node, which needs an NVIDIA GPU on a native Linux host (WSL will not work).
Everything else — matchmaking, tournaments, stats, the 2D and 3D replays, servers, chat — runs fine without one.
Demos and backups go to S3-compatible storage. The install ships MinIO running inside the cluster, but you can point it at any S3 provider instead — see Bring Your Own S3, including a Backblaze walkthrough.
Game server nodes support offline operation — see Offline Support.
Two separate things:
- The install itself:
git pullin the install directory, then./update.sh. See Updating. - The components (API, web, connector): these update from the update notice inside the panel, no shell needed.
If you edited anything under overlays/config or overlays/local-secrets,
you need to run the update to apply it.
Yes. Name, logo, favicon, login page, and the full color theme are configurable from the admin settings — see Branding & Theming. An instance should read as your platform, not as someone else's software with your logo pasted on.
In two places, and they're often confused:
- Panel plugins — your own web apps embedded as native panel pages. They inherit the panel session and design system, so there's no fork to maintain.
- Game plugins — your own CS2 server-side plugins running alongside 5Stack's, on either CounterStrikeSharp or SwiftlyS2.
There's also a GraphQL API if you want to build against your own data from outside.
Run the debug script first — it collects the state that any support conversation is going to ask for anyway. The Troubleshooting section covers the failures that come up most: login problems, updates not applying, and RCON commands failing.
Discord is the fastest route to a human, and the people running other 5Stack instances are in there. Bugs and feature requests belong on GitHub.