Jellyfin watch party with SyncPlay: set it up and stay in sync
Updated ยท 5 min read
You want to watch the same movie with someone in another room or another city, and have pause mean pause for everyone. Jellyfin has this built in. It's called SyncPlay, and a Jellyfin watch party takes about five minutes to set up the first time.
How SyncPlay works
SyncPlay is part of the Jellyfin server; there's no plugin to install. People gather in a group. One person creates it, others join, and from then on the group shares one play queue. When anyone presses play, pause or seeks, the server tells every member to do the same.
Each person still streams their own copy from your server, at the quality their device and connection allow. Jellyfin keeps track of how far each screen is, and the web app quietly corrects small drifts by speeding up playback slightly or skipping to the right moment. When someone's video stalls to buffer, the group waits and shows that they're buffering.
Everyone signs in with their own Jellyfin account. That means watch progress is saved per person, and each member needs access to the library the movie is in.
Which apps can join
SyncPlay is in Jellyfin's web app, in any modern browser, and in Jellyfin Media Player for Windows, Mac and Linux, which is built on the web app. Other apps vary: some have added it, some haven't, and support changes from version to version.
Before movie night, open the app each person will use and look for the SyncPlay button (an icon of a group of people). If it isn't there, a laptop with a browser plugged into the TV is the dependable fallback. Which Jellyfin app suits each device lists the main apps.
Start a watch party by hand
- Give everyone an account. Each person needs their own Jellyfin user with access to the library you'll watch from. Add users in Dashboard > Users.
- Set SyncPlay access. In Dashboard > Users, open each person and find SyncPlay access. Choose Allow user to create and join groups for the host, and at least Allow user to join groups for guests. Disabled for this user hides the feature for that person. Save each one.
- Create the group. The host signs in to the web app, clicks the SyncPlay button in the top bar, and chooses New group. The group is named after them.
- Join the group. Everyone else clicks SyncPlay and picks the host's group under Join a group. Each gets a note when someone joins.
- Press play. The host opens the movie or episode and plays it. Every member's screen starts it and follows from there.
- Leave when you're done. Click SyncPlay and choose Leave group, so the next thing you watch alone doesn't pull everyone along.
Tip: if the SyncPlay button says permission is required, the person's SyncPlay access is set to disabled. If the group can't play a title, check that every member can see that library.
Friends outside your home
SyncPlay only syncs people who can already reach your server. Inside your home, that's everyone on your Wi-Fi. For a friend across town, Jellyfin has to be reachable from the internet first, either through a private network like Tailscale (they install it and you share access) or a public HTTPS address. Jellyfin remote access, step by step covers both, and the HTTPS guide covers the certificate.
Two more settings matter for remote guests. In Dashboard > Users, their account needs Allow remote connections to this server ticked. And your home upload speed is shared by every remote stream: three friends at 8 Mbps each need about 24 Mbps of upload. Lower Jellyfin's limit for streams away from home if it buffers.
Staying in sync
- Prefer direct play. When Jellyfin has to convert a video for one viewer, that viewer starts later and drifts more. Pick a version everyone's device can play, or make sure the server's hardware transcoding is working.
- Pause before adding people. Let late arrivals join while the group is paused, then resume.
- Wire the big screens. A TV or laptop on Ethernet buffers less, and every buffer pauses the whole group.
- Use the sync settings sparingly. Under SyncPlay's settings, Sync Correction is what nudges each screen back in line. Jellyfin suggests turning it off only if playback stutters heavily.
- Keep subtitles in step. If a subtitle file is out of time, it's out for everyone. Fixing subtitle timing helps before the party starts.
Questions
Does Jellyfin have a watch party feature?
Yes. It's called SyncPlay and it's built into the server. One person creates a group, others join, and play, pause and seeking are shared by everyone in it.
Why can't I see the SyncPlay button?
Either your app doesn't support SyncPlay, or your account's SyncPlay access is disabled. Try the web app in a browser, and ask the server's administrator to check SyncPlay access in Dashboard, Users.
Can friends in another house join a Jellyfin watch party?
Yes, once they can reach your server from outside your home, through Tailscale or a public HTTPS address, and their account allows remote connections.
Does everyone need a Jellyfin account for SyncPlay?
Yes. Each person signs in with their own account, with SyncPlay access and access to the library being watched.
The one-click way: Reelhost
Reelhost's Watch together (Beta) starts a movie or episode on everyone's screen at once, after a countdown from 3. While it plays, a pause pauses everyone, a skip takes everyone there, and a screen more than two seconds behind is brought back. It turns on Jellyfin's SyncPlay for everyone too. Apps that follow along: Jellyfin in a browser, Jellyfin Media Player, the official Android app, the official Android TV, Google TV and Fire TV app, LG and Samsung TV apps (usually) and Kodi with Jellyfin for Kodi. Roku, Swiftfin, Infuse and Findroid can't be started remotely; open the title on them by hand. It's new and still being tested, and needs Complete or Yearly.
The check-up is free and changes nothing. Every fix is previewed, backed up and reversible.