Help · Getting started

How Coursier works

What happens between your viewers and your server, and why no port forwarding is needed.

Coursier gives the Jellyfin server you run at home a secure public address, such as https://cozy-premiere.watch.coursier.io. Anyone you invite opens that address and signs in with their Jellyfin account, from any network.

Why no port forwarding is needed

Normally, reaching a home server means opening a port on your router and pointing a domain at your home connection. Many internet providers make that impossible (carrier-grade NAT, shared or mobile connections), and it exposes your home network directly.

With Coursier, the plugin inside Jellyfin opens an encrypted connection outward to one of our relays, the same way a browser opens a website. Viewers connect to the relay, and the relay passes their requests through that tunnel. Nothing on your router changes, and nothing at home accepts connections from the internet.

The pieces

  • Your account at https://customer.coursier.io/portal: your plan, your servers, their addresses and usage.
  • The plugin, installed in Jellyfin like any other plugin. It keeps the tunnel open and shows its status under Dashboard → Coursier.
  • The relays, our servers in several regions. The plugin picks the one with the lowest latency from your home, and switches to another if it becomes unavailable.
  • Your address, under watch.coursier.io, or a domain you own on plans that include it.

What stays the same

  • Your media never leaves home except while it is being watched. We never store it.
  • Users, passwords, libraries and permissions are all managed in Jellyfin, as before.
  • At home, you keep using Jellyfin's local address as usual.

Ready? Set up in 5 minutes.

Still stuck? Contact support.