Jellyfin organizes media files you already have and streams them from your own server to compatible devices. It can replace parts of a Plex or Emby media-management workflow. It does not include Netflix’s catalog, provide commercial subscriptions or supply movies for you. This guide establishes a small localhost and home-network setup using official documentation checked on October 13, 2026. AltStack has not installed a server on every supported platform; operating-system packages, permissions and playback capabilities can differ.

1. Pricing: free software, separately funded hardware and media

Jellyfin’s core server is free and open source under GPL-2.0. The project states that it has no premium licenses or paid feature tier. You can use the server and web client without a Jellyfin software subscription. Donations are optional. Check each separately distributed client’s store listing before purchasing it; a compatible third-party application can have its own terms.

Running a server still uses a computer, storage, electricity and network capacity. You also remain responsible for lawful access to the media you add. Start on hardware you already own and test one file before buying a dedicated server. A free media server removes a software subscription for that task; it does not remove operational costs or grant rights to a paid streaming library.

2. Prepare a small library before installing

Choose an always-available computer for the first test and place a few lawful media files in a stable folder. A sleeping laptop or disconnected external drive will make the library unavailable. Keep originals backed up separately. Separate Movies, Shows and Music rather than putting every type of file into one mixed folder. Jellyfin’s documentation recommends specific library types for more dependable metadata.

For movies, use a separate folder with a recognizable title and year, for example Movies/Example Film (2024)/Example Film (2024).mp4. For episodes, use a series folder, a Season 01 folder and a filename identifying S01E01. These are naming examples, not supplied content. Avoid renaming a large collection before you know how your first few files appear. The server process must be able to read the folder you plan to add.

3. Install the server package for your operating system

Use Jellyfin’s official downloads and installation pages. On Windows, download and run the current installer. The documentation’s optional service installation is not its recommended starting route; begin with the normal application unless you specifically need service operation. Once running, open http://localhost:8096 on that same computer to reach the web setup.

On macOS, download the correct DMG, drag the application into Applications, start it and use the menu-bar icon’s Launch option. Check the documented Apple Silicon and macOS-version requirements when choosing a build. For Debian or Ubuntu, follow the official repository installation instructions, including verification if using its installation script. Other Linux and container users should follow their platform’s dedicated page. Do not paste an old universal command into a different operating system. This guide’s practical workflow begins after the documented server package is running locally.

4. Complete the wizard with an administrator and local access

In the setup wizard, choose the interface language, create an administrator username and use a unique strong password. Add your first media library or skip that step temporarily if the folders are not ready. Set the preferred metadata language and region so the server knows which descriptions to request.

Keep this first installation limited to your own computer and trusted home network. Leave automatic port mapping disabled; the official wizard warns about its UPnP security implications. Do not add a router port-forwarding rule for this beginner exercise. Remote access from outside your home is a separate deployment decision requiring authentication, network and HTTPS planning. Finishing the wizard should give you a working local sign-in, not an internet-exposed server. Record the administrator credentials in your password manager and confirm you can sign in again after closing the browser.

5. Add one library and let the scan finish

After signing in, open Admin, then Dashboard, then Server and Libraries. Select Add Media Library, choose its content type, provide a display name and select the folder containing those files. A library can contain more than one path, but start with one so a missing item is easy to trace. Save the library and allow its scan to finish.

Open the resulting library and compare it with your sample folder. A movie should appear as the intended title, and episodes should sit under the correct series and season. If a folder is absent in the path picker, confirm the server account’s read permission instead of granting broad access to your whole drive. Choosing a folder in your personal file manager does not prove that the separate server process can read it. Fix the specific path and rescan before adding more libraries.

6. Play a file and check the real experience

Open one media item in the web interface and start playback. Try pause, seeking, the audio track you need and any included subtitles. Resume the item after returning to the library. A useful first success is one file that opens correctly, sounds right and resumes predictably; a populated poster grid alone does not establish playback compatibility.

Different clients support different containers, codecs and subtitle formats. Jellyfin may send a file directly or transcode it into a format the player can handle. Transcoding consumes server resources and can expose weaknesses in older hardware. Begin with a normal-resolution sample. If a browser struggles, compare the same file in an appropriate client from Jellyfin’s official client directory before concluding that the library itself is damaged. Keep a note of which file and player combination worked.

7. Connect a second device on the home network

Choose a compatible application from the official Jellyfin client directory or use a browser on another trusted device. While it is connected to the same home network, enter the server computer’s local address with port 8096, such as http://192.168.1.20:8096. That address is an example; use the actual local address shown by your computer’s network settings. Localhost on a phone refers to the phone itself, not to your media server.

Sign in with a normal viewing account once you have created one. If the second device cannot connect, check that the server is running, both devices share the intended LAN and the operating-system firewall allows the required local traffic. Do not solve a LAN connection problem by exposing the server publicly. Guest Wi-Fi can intentionally isolate devices; test from the trusted home network instead.

8. Give viewers only the permissions they need

Use the server’s user-management settings to create separate accounts for household viewers. Keep the administrator for maintenance. Review allowed libraries, playback settings and any media-deletion permission before sharing an account. The official user documentation explains that allowing a user to manage the server grants broad administrative access.

For a viewing-only account, keep that management option off and avoid enabling file deletion unless it is intentional. Deleting media through an authorized account can remove files from storage, so a playback account should not automatically have that privilege. Test the new account in a separate browser session: check that the intended libraries appear and administrative screens do not. Jellyfin accounts belong to your server; they are not a cloud account that follows you automatically between unrelated servers.

9. Back up configuration before updates

Back up server data and configuration, and keep a separate backup of the media files. On versions with the built-in backup feature introduced in Jellyfin 10.11, open Dashboard, then Backups, then Create Backup. Choose the required metadata-related options, allow sufficient disk space and save the resulting archive somewhere outside the server’s only disk. That feature is not a backup of every original movie or music file.

For a manual backup, follow the platform-specific official instructions and stop Jellyfin before copying its data and configuration directories. Record the server version with the backup. Jellyfin applies database migrations when upgraded and does not provide a simple downgrade mechanism; restoring an older version may require its matching backup. Update during a quiet period, preserve the previous backup and verify sign-in, libraries and playback afterward. Do not discover your only backup is missing during an attempted rollback.

10. Fix missing media and playback problems methodically

For an empty library, check the configured path, drive availability, server read permissions and naming before recreating the entire server. The project’s FAQ identifies permissions and organization as common causes. For a wrong match, correct a small sample’s title and year and consult the relevant media-naming documentation. Rescan and check that correction before applying it to hundreds of files.

For stuttering, compare server load, playback format and client capability. Consult the official transcoding guidance before enabling hardware acceleration; support depends on the actual hardware and installation. Metadata providers can receive requests for library descriptions and artwork, so review library options for a privacy-sensitive collection. Keep the first system on localhost or your trusted LAN, retain lawful originals and finish by checking the ordinary viewing account, a second device and your dated backup.

Official instructions and sources

Jellyfin purpose and no premium software tierServer GPL software licenseOfficial installation platformsWindows installation and updatesmacOS installation and updatesLinux installation and verificationSetup wizard and port-mapping caveatAdding media librariesMovie organizationTV series and episode organizationCompatible client applicationsUser and media-deletion permissionsBackups and upgrade migrationsMissing-media troubleshooting

Original AltStack guide by Sushil Kumar Sah. Installation steps follow provider documentation; they do not imply testing on every supported device.