NODED.CLOUD/Blog/Replace Restream: Self-Hosted Multistreaming on a VPS

Replace Restream: Self-Hosted Multistreaming on a VPS

30 Jul 2026 · Mario Marin

Twitch dropped the last multistreaming penalty in March 2026. One Docker command on a VPS billed from €0.0056/hr now replaces your Restream subscription — here's how.

For years the standard advice on multistreaming was "pay Restream and don't think about it." That advice made sense when Twitch exclusivity clauses made simulcasting contractually awkward and the self-hosted alternative meant compiling nginx modules on a Saturday. Neither is true anymore. The platform rules changed, and datarhei Restreamer packed the entire relay stack — ingest, web UI, fan-out — into one Docker container.

What's left is a hosting problem, and hosting problems are our department. Here's how we'd run a self-hosted Restream alternative on our streaming VPS, with real commands, real numbers, and an honest section at the end about when the managed service is still the right call.

Why multistream in 2026: the rules finally caught up

Two things changed. In October 2023, Twitch dropped its exclusivity requirements — Affiliates and Partners can simulcast to any platform, no special contract needed. The remaining awkwardness was the combined-chat rule: Twitch's simulcasting guidelines prohibited showing a merged cross-platform chat on stream, which made multistreaming feel like a compliance exercise.

That's gone too — in practice. In February 2026, Twitch's CEO announced the company would stop enforcing the combined-chat restrictions, so as of March 2026 there's no penalty for displaying a unified Twitch-plus-YouTube-plus-Kick chat overlay (the written guidelines haven't been formally rewritten yet, but enforcement — and the penalties — have stopped). Two rules of etiquette survive: the Twitch experience has to be at least as good as your other destinations, and you can't tell Twitch viewers to leave for your concurrent stream elsewhere. Both are trivially satisfied by, well, streaming normally.

Kick's terms permit simulcasting and the platform is openly friendly to it, while YouTube doesn't restrict it at all. So the question is no longer "am I allowed to multistream to Twitch, YouTube and Kick" — it's "what's the cheapest reliable way to fan one stream out to three ingests." Our live-streaming use-case page covers the general architecture; this post is the specific recipe.

The cost math: managed service vs. a box you own

Restream's paid plans start at $19/mo for Standard, which streams to 3 channels at once (8 channels needs the $239/mo Business plan), and full HD 1080p starts on the $49/mo Professional plan (restream.io/pricing, read 2 November 2026). The free tier streams to 2 channels at 720p with a permanent watermark. None of this is unreasonable for a managed service; it's just a lot of money for what is, mechanically, one FFmpeg process copying packets.

Here's the same job, self-hosted:

OptionCostDestination capResolution cap
Restream Standard$19/mo31080p from Professional ($49/mo)
NODED streaming VPS€9.99/moNone — it's your boxWhatever the platforms accept
NODED hourly VPS, 20 h/mo≈ €0.11–€0.14/moNoneWhatever the platforms accept

The €9.99/mo streaming VPS is unmetered with no per-VM bandwidth ceiling, and you run Restreamer on it with the same one-line Docker command below. That's the always-on option: the ingest URL never changes, and it costs less than the managed service's entry tier while removing every cap.

The occasional streamer: worked hourly math

If you stream five evenings a month, four hours each, an always-on box is overkill. Our KVM VPS starts at €0.0056/hr — pay per hour, billed by the hour. The arithmetic for a 20-hour month:

  • 20 hours × €0.0056/hr = €0.11
  • Deploy time is about a minute per session — but because a started hour is billed as a full hour, the few minutes of setup push each 4-hour session to 5 billed hours: 25 hours × €0.0056/hr = €0.14 for the month
  • A 3 h 47 m stream bills as 4 hours, because a started hour is billed as a full hour

Eleven to fourteen cents a month. The coffee in the title is, frankly, the expensive option. The trade-off is that you destroy the box between sessions, so you script the setup — which, as you're about to see, is one Docker command — and your ingest IP changes each time. If re-pasting an IP into OBS twice a week annoys you, take the €9.99 box and keep the change from your $19.

Step-by-step: Restreamer on a VPS in about five minutes

1. Deploy the VPS

Pick the location closest to you — we run VPS in Bucharest, Sofia, Warsaw, Amsterdam, Frankfurt, Vienna and Ashburn — so the first hop from your home connection stays short. Choose an Ubuntu image, deploy, and you're at a root shell in about a minute. Card, PayPal, bank transfer or crypto via CoinGate (Bitcoin and other coins) all work. Every box sits behind 100 Gbps of included, always-on Layer 3/4 DDoS protection, which matters more than it sounds: a public RTMP ingest port is a target, and yours is about to be public.

2. Run Restreamer

datarhei Restreamer is Apache-2.0 licensed, ships as a single container, and gives you RTMP and SRT ingest, a web UI, an HLS server and multi-destination RTMP push. Install Docker (apt install docker.io on Ubuntu), then run the one-liner from the official docs:

docker run -d --restart=always --name restreamer -v /opt/restreamer/config:/core/config -v /opt/restreamer/data:/core/data -p 8080:8080 -p 8181:8181 -p 1935:1935 -p 1936:1936 -p 6000:6000/udp datarhei/restreamer:latest

Port 8080 is the web UI and HLS output, 1935/1936 are RTMP ingest, and 6000/udp is SRT. Config and stream data persist under /opt/restreamer, so container upgrades don't eat your setup. On the hourly workflow, this command is your provisioning script — paste it into cloud-init or a shell script and a fresh box is streaming-ready a couple of minutes after you click deploy. (The €9.99 streaming VPS uses the same command — the software is yours to install either way.)

3. Point OBS at it

Open http://your-vps-ip:8080, set an admin password in the first-run wizard, and choose RTMP as the video source. The wizard hands you an ingest URL and stream key. In OBS: Settings → Stream → Custom, then paste the server URL and stream key the wizard shows you.

Standard platform settings apply — 6,000 kbps for 1080p60, keyframe interval 2 seconds. Sensible hygiene: firewall the UI port to your own IP once configured, and leave only the ingest ports open.

4. Add Twitch, YouTube and Kick outputs

In the Restreamer UI, each destination is a "publication service." Twitch and YouTube have ready-made entries — paste each platform's stream key and toggle them on. For Kick, add a custom RTMP target with Kick's ingest URL and your Kick stream key.

Under the hood each output is an FFmpeg process copying your stream to that platform's ingest, no re-encode, which is why the CPU on even the smallest VPS barely notices. Start streaming in OBS, watch three dashboards light up.

The bandwidth math, or why unmetered matters

This is the actual engineering argument for the relay-server pattern. Multistreaming from OBS directly (three simultaneous outputs) needs 3 × 6 Mbps = 18 Mbps of home upload, sustained, for hours. Most residential connections can't hold that, and the ones that can will still hiccup when someone else in the house opens a video call. With the VPS in the middle, your home connection carries one 6 Mbps stream; the fan-out to 18 Mbps happens in a datacenter where 18 Mbps is a rounding error.

Volume adds up faster than people expect. Three platforms at 6 Mbps for 40 hours a month is about 324 GB of egress; run a 24/7 restream and it's roughly 5.8 TB/month. On clouds that bill per-GB egress, that's a second invoice.

On our streaming VPS, traffic is unmetered with no per-VM bandwidth ceiling — the 18 Mbps fan-out, plus any viewers pulling HLS directly off Restreamer's built-in player, never becomes a line item. Even the entry plan, VPS I at €0.0056/hr, has unmetered traffic on a 100 Mbps port, more than five times the headroom this workload needs.

The part you can't see on a spec sheet: we run our own network, AS60982, connected through IP transit from one upstream carrier, so the location you picked in step 1 is what keeps the first hop from your home connection short. If you're an agency fanning out dozens of channels rather than one, that's when this outgrows a VPS and lands on dedicated bare metal with up to 200 Gbps of connectivity.

SRT: for when your uplink hates you

RTMP runs over TCP, and TCP on a lossy link means retransmission stalls — the stream freezes, then lurches. If you're streaming over LTE, hotel Wi-Fi, or DSL with jittery upstream, use the SRT ingest instead. That's why the Docker command exposes 6000/udp: Restreamer accepts SRT in and still pushes clean RTMP out, which turns your VPS into an SRT relay server. SRT retransmits lost packets within a configurable latency budget, so a bad first mile costs you a second of delay instead of a dropped frame.

OBS speaks SRT natively — swap the server URL for the SRT address Restreamer's wizard shows you, and set the latency to roughly four times your ping to the box. The unstable segment of the path gets absorbed at the relay; Twitch, YouTube and Kick only ever see a stream originating from a datacenter connection.

When to pick managed Restream instead

We'd be lousy engineers if we pretended one Docker container replaces a product team. Pay for Restream if you want cross-platform chat aggregated in one pane, per-destination titles and thumbnails managed from a dashboard, scheduled broadcasts of pre-uploaded video, or — most importantly — someone else on call when an ingest endpoint changes. Self-hosting means you patch the container, you manage the firewall, and you debug it when it breaks mid-stream. €0.14 a month does not include your time.

If streaming is your income and tooling downtime costs you money, $19/mo is cheap insurance. If you're a hobbyist, a weekend simulcaster, or anyone technical enough to have read this far without flinching — it's one command, one coffee-sized invoice, and no destination caps. Deploy a streaming VPS, paste the Docker one-liner, and keep the difference.

← All posts

Related services

Run this on NODED.CLOUD.

Keep reading

More from the NOC.

14 Aug 2026·Mario Marin

Archiving Twitch VODs on a Storage VPS

Twitch VODs expire fast: as little as 7 days by default, up to 60 for Partners. Here's how we set up an automated pull-and-archive pipeline onto a storage VPS so your back catalog of streams and clips never disappears.

Read post
28 Jul 2026·Mario Marin

Rust and Palworld Server Hosting

Rust and Palworld punish undersized boxes and lazy restart schedules. Here's how to size RAM per game, cap slots, and schedule restarts for memory-creep titles on a server you run yourself — with 100 Gbps DDoS protection included.

Read post

Like the way we run things? Spin up a server in 60 seconds.