Self-host LevelChat

Your servers. Your video. Your numbers.

Production-grade WebRTC infrastructure on your own server. SDK in 10 lines, install in one. Free forever in Community mode; $25 per server per month for the full feature set.

17

services bundled

< 5 min

install on a fresh box

$25

per server per month

Ed25519

signed license blobs

The one-liner

Paste this on any Linux box.

The installer detects your OS (Ubuntu / Debian / RHEL / Alpine), installs Docker if missing, generates random secrets for every datastore, computes a stable instance fingerprint, and brings up the full stack. By default it boots in Community mode— no card needed.

What you need: a 4 vCPU / 8 GB box (Hetzner CPX31 €13.10/mo or equivalent), root access, internet egress on 443. Tested on Ubuntu 22.04 / 24.04, Debian 12, Rocky 9, Alpine 3.20.

Prefer to read it first? View install.sh on GitHub — open source, ~360 lines, no obfuscation.

Pricing

Free until you outgrow it.

Run forever in Community mode, no card. Buy a license the day you need to publish a 6th participant. Pay per server, not per seat.

Community

Freeforever

For evaluation, dev, and small internal demos.

Install in Community mode
  • 5 participants per room (hard cap)
  • 1 concurrent room
  • No recording, no broadcast, no E2EE
  • Watermark on every tile
  • Single server only — no clustering

License clause prohibits commercial / production use beyond evaluation. See LCL v1.0 in the repo.

Recommended

Self-host node

$25per server / month

The full LevelChat. Per-node Ed25519 license, fingerprint-bound.

Buy a license
  • Unlimited participants per room
  • Unlimited concurrent rooms
  • Recording + broadcast + E2EE
  • No watermark, custom brand colors
  • Multi-node cluster (per-node license)
  • Ed25519-signed audit log

Annual: $240/server (20% off). Multi-node clusters scale linearly — 3-node cluster = $75/mo.

What the installer takes care of

Four things you don’t have to think about.

One line to install

Detects your OS, installs Docker, generates random secrets, brings up 17 services. No manual config files. No copy-paste secrets.

HTTPS out of the box

Auto Let’s Encrypt for any domain you point at the box. Or take the auto-provisioned `lc-<8hex>.lc-cloud.io` sub-domain — already-trusted certs from second one.

Cluster with one more line

Spin up a second box, paste a join token, the installer wires the WireGuard mesh, NATS replica, and SFU cascade. No SSH key shuffling.

Per-node Ed25519 license

Pay only for the boxes you actually run. Each server gets a fingerprint-bound JWT — copy a VM, license refuses to verify. No DRM theatre, just clean math.

Clustering

Add a second box. Paste a token. Done.

Mint a 24-hour join token from your leader’s admin (Cluster → Add node). Run the same one-liner on the new box with two extra env vars:

The worker auto-registers in cluster_nodes, joins the WireGuard mesh, attaches the NATS JetStream replica, and starts cascading SFU traffic. The leader’s UI surfaces the new node as pending license until you assign a per-node JWT to it.

Each node costs $25/mo regardless of size

Per-node fingerprint, no key sharing

SFU cascade promotes mid-call automatically

Source-available, paid for production

Your code stays your code.

LevelChat ships under the LevelChat Community License v1.0 (BSL-style). Source on GitHub, audit it, fork it, contribute upstream. Production use beyond Community mode requires a paid license — that’s how we keep building.