Why Jellyfin Needs Profiles
Jellyfin is the go‑to self‑hosted media server for many Android enthusiasts because it runs on cheap hardware, respects privacy and lets you stream your own collection to phones, tablets and TVs. The trade‑off is that, unlike commercial services such as Netflix or Disney+, Jellyfin only offers a single‑user experience by default. When several people share the same server, the following problems appear:
- Mixed watch history – the "Continue Watching" row shows what everyone has started, not just you.
- No personalised recommendations – the algorithm can’t tell which titles you prefer.
- Parental‑control chaos – you either lock the whole server or leave it wide open.
XDA‑Developer’s community member Michele tackled this gap by stitching together Jellyfin’s built‑in multi‑user support with a tiny third‑party plugin. The result is a set of Netflix‑style profiles that live entirely on your own hardware.
What You’ll Need
| Item | Reason |
|---|---|
| Jellyfin server (v10.9+ recommended) | Modern API endpoints used by the plugin. |
| Docker (optional) | Simplifies installation and keeps the server tidy. |
| A spare Raspberry Pi, old PC or NAS | Any device that can run Jellyfin 24/7. |
| Access to your router’s port‑forwarding | Required for remote Android access. |
| Basic Linux command‑line knowledge | The setup uses a few terminal commands. |
All of the above are free or already in most home labs, so there’s no extra cost.
Step‑by‑Step: Turning Jellyfin Into a Multi‑Profile Hub
1. Enable Jellyfin’s native multi‑user feature
- Open the Jellyfin web UI (usually
http://<IP>:8096). - Go to Dashboard → Users and click Add User.
- Create a separate account for each family member – you can give them a friendly display name and a password.
- For kids, toggle Enable parental controls and set a maximum allowed rating.
“Jellyfin already lets you create multiple users, but it doesn’t separate libraries or recommendations automatically.” – XDA article
2. Install the Profile Switcher plugin
The community‑maintained Jellyfin‑Profile‑Switcher plugin adds a small UI element that lets you jump between users without logging out each time.
# If you run Jellyfin in Docker, exec into the container first
docker exec -it jellyfin bash
# Download the latest release (replace URL with the current version)
wget https://github.com/ich777/jellyfin-profile-switcher/releases/download/v1.2.0/profile-switcher.zip -O /config/plugins/profile-switcher.zip
# Unzip and set correct permissions
unzip /config/plugins/profile-switcher.zip -d /config/plugins/
chmod -R 755 /config/plugins/ProfileSwitcher
# Restart Jellyfin to load the plugin
systemctl restart jellyfin
If you’re not using Docker, simply place the extracted folder into the plugins directory of your Jellyfin installation and restart the service.
3. Configure per‑profile libraries (optional but recommended)
To truly mimic Netflix, you may want each user to see only the content they’re allowed to watch.
- In the web UI, go to Dashboard → Libraries.
- Create a library for each genre or age group (e.g., Kids Movies, Family TV).
- Click the Edit icon for a library, scroll to Access, and tick the users who should see it.
- Save changes.
This step also prevents a teenager from stumbling onto adult‑rated titles that are hidden behind a child’s profile.
4. Set up automatic profile selection on Android
Most Android Jellyfin clients (the official app, Jellyfin Android, or third‑party players like VLC for Jellyfin) allow you to store login credentials. To make switching seamless:
- Open the app, log in with the primary account (the one you’ll use on the TV).
- Navigate to Settings → Advanced → Profile Switcher (the plugin adds this menu).
- Enable Show profile button on playback screen.
- Tap the new icon whenever you hand the device to someone else – the app will instantly swap to the selected user without a full sign‑out.
If you prefer a completely hands‑off approach, you can use a small Android shortcut (via Tasker or MacroDroid) that launches the Jellyfin app with a specific user token. The token can be extracted from the web UI under Dashboard → Users → Advanced → API Keys.
5. Test the experience
- Pick a profile, start a movie, then pause it.
- Switch to another profile using the button.
- Return to the first profile – the playback position should be remembered, and the Continue Watching row should now show the correct title for each user.
- Verify that each profile’s Recommendations tab only lists titles that the user has watched or liked.
If anything looks off, double‑check the library access settings and make sure the plugin version matches your Jellyfin build.
What This Means for UK Android Users
No extra subscription fees
Because everything runs locally, you avoid the recurring costs of Netflix, Disney+ or Amazon Prime. That’s a big win for families on a tight budget, especially when you already pay for broadband and possibly a home broadband‑router bundle.
Better data‑privacy
All watch‑history and recommendation data stays on your own NAS or Raspberry Pi. For GDPR‑concerned users, this is a clear advantage over cloud‑based services that harvest viewing habits for advertising.
Seamless integration with contract deals
Many UK mobile carriers bundle streaming perks (e.g., “Free Netflix with X‑Plan”). If you’ve already signed up for such a perk but still want a private library for home‑only titles, Jellyfin with profiles lets you keep both worlds separate – you can stream Netflix on your phone while the family TV runs the self‑hosted server.
Future‑proofing
The plugin is open‑source and actively maintained on GitHub. Should Jellyfin eventually ship native profile support, you can simply disable the plugin and migrate the existing users without losing any data.
Pros and Cons at a Glance
| ✅ Pros | ❌ Cons |
|---|---|
| Free, self‑hosted solution | Requires a bit of initial setup (terminal commands) |
| Individual watch histories and recommendations | No built‑in UI for creating new profiles – you must use the web dashboard |
| Per‑profile parental controls | Plugin updates must match Jellyfin version to avoid crashes |
| Works with any Android Jellyfin client | Slight performance hit on low‑end hardware when many users are active |
| Fully privacy‑focused, GDPR‑friendly | Not a “one‑click” feature for non‑technical users |
Bottom Line
If you’ve been frustrated by the single‑user nature of Jellyfin, adding the Profile Switcher plugin and configuring per‑user libraries gives you a Netflix‑like experience without leaving your own hardware. The process is straightforward for anyone comfortable with a little command‑line work, and the payoff – clean watch histories, personalised suggestions and safe kids’ sections – is well worth the effort. For UK Android users hunting the best value from their broadband and mobile contracts, a self‑hosted, profile‑enabled Jellyfin server can be the secret weapon that keeps everyone happy while keeping costs low.
Further reading
- Official Jellyfin documentation – Multi‑User Setup.
- GitHub repo for the Jellyfin‑Profile‑Switcher plugin.
- Android‑specific tips: using Tasker to auto‑login different profiles.
Happy streaming, and enjoy the newfound peace of mind that comes with a truly personal media library.