Abstract teal and amber illustration of two streams merging into one, representing Jellyseerr and Overseerr merging into the unified Seerr project

Jellyseerr

Jellyseerr

Jellyseerr was the Jellyfin- and Emby-focused fork of Overseerr: a self-hosted request page where anyone on your media server can search a shared catalog, hit request, and have it routed to your existing media management tools instead of asking you to add it by hand. As of February 10, 2026, that’s technically past tense. Jellyseerr and Overseerr merged their codebases into a single project called Seerr, and neither original name gets updates anymore. Here’s what Jellyseerr actually did, how it differed from Overseerr, and what installing “Jellyseerr” means today, because it isn’t quite what the name implies anymore.

Jellyseerr’s default port is 5055, the same one Seerr, the project it merged into, still uses today.

License: MIT, confirmed directly from the LICENSE file in the seerr-team/seerr GitHub repository, the same repository that github.com/fallenbagel/jellyseerr now redirects to. Free for any use, including commercial, unchanged since the project’s 2022 fork from Overseerr; the file still carries the original 2020 copyright notice from Overseerr’s creator, sct.

Quick facts: forked from Overseerr in 2022 by a contributor known as fallenbagel, initially to add Jellyfin support · merged with Overseerr into Seerr on February 10, 2026 · official docs moved to docs.seerr.dev · current Docker image ghcr.io/seerr-team/seerr:latest, mirrored on Docker Hub as seerr/seerr · legacy fallenbagel/jellyseerr image on Docker Hub is frozen, last pushed roughly 7 months ago · latest stable release v3.3.0 (June 2026) · default web UI port 5055.

Jellyseerr itself isn’t maintained anymore. An existing Jellyseerr instance migrates to Seerr automatically the first time it starts on the new image, no manual database steps required. If you’re setting this up for the first time in 2026, there’s no reason to hunt down the old fallenbagel/jellyseerr image; the docker-compose below already points at the current one.

What Jellyseerr was, and why it’s now Seerr

Overseerr shipped in 2020 as a request manager built for Plex, and only Plex: users browse a shared catalog, hit request, and an admin (or the users themselves, depending on permissions) approves it before it reaches Sonarr or Radarr. In 2022, a contributor known as fallenbagel forked that codebase specifically to add Jellyfin support, since Overseerr’s maintainer had no plans to support anything else. The fork kept growing from there: Emby support, PostgreSQL as an alternative to SQLite, per-user and per-tag blocklists, custom request rules by genre or user. By 2025, Jellyseerr had pulled meaningfully ahead of Overseerr on features.

That’s roughly when the two projects started talking. On February 10, 2026, the Jellyseerr and Overseerr teams announced they’d merged into a single team and a single codebase, called Seerr, combining Overseerr’s original design with everything Jellyseerr had added since 2022. The GitHub repository at fallenbagel/jellyseerr now redirects to seerr-team/seerr; the same happened to Overseerr’s repository. Both original names are frozen, but fallenbagel is listed among Seerr’s active contributors, which makes this a consolidation rather than an abandonment.

Installing Jellyseerr today (Docker)

The docker-compose below is Seerr’s own current reference configuration from its Docker installation guide, the one to use whether you think of this as installing Jellyseerr or installing Seerr. They’re the same container now.

services:
  seerr:
    image: ghcr.io/seerr-team/seerr:latest
    container_name: seerr
    init: true
    environment:
      - LOG_LEVEL=info
      - TZ=Etc/UTC
    ports:
      - 5055:5055
    volumes:
      - ./seerr/config:/app/config
    restart: unless-stopped
  1. Save the file as docker-compose.yml and run docker compose up -d.
  2. The container runs as a non-root node user (UID 1000) by default, so ./seerr/config needs to be owned by UID 1000 on the host, or it won’t start. Migrating an existing folder usually means running chown -R 1000:1000 ./seerr/config first.
  3. The image no longer bundles its own init process, which is why init: true is in the compose file above. Without it, zombie processes can build up inside the container over time.
  4. Open http://your-server-ip:5055 and connect it to whichever of Jellyfin, Plex, or Emby you’re already running, plus Sonarr and/or Radarr.
docker compose up -d
docker compose logs -f seerr

Before you start: Jellyseerr, like Seerr, isn’t a standalone media app. It needs an existing Jellyfin, Plex, or Emby server to attach to, and it only becomes useful once Sonarr and/or Radarr are configured too, since it routes your request to your existing media management tools rather than fetching anything itself. Set those up first if you haven’t. Point it only at your own, legally acquired media library.

Connecting to Jellyfin, Plex, and Emby

This was the feature that separated Jellyseerr from Overseerr in the first place. Overseerr only ever spoke to Plex; Jellyseerr added full authentication and library scanning for Jellyfin and Emby, while keeping Plex support too, so one instance can sit in front of whichever server is actually running. Pick one media server per instance during the setup wizard; it pulls in existing Jellyfin, Plex, or Emby accounts so people don’t need a separate login just for requests. Still deciding between the media servers themselves? Our Jellyfin vs Plex comparison covers the cost and feature gap that opened up between them in 2026.

Jellyseerr vs Overseerr: what actually differed

Before the merge, the two projects diverged mainly on media server support and on how much administrative control they gave you over requests.

JellyseerrOverseerr
Plex supportYesYes (only option)
Jellyfin / Emby supportYesNo
Database optionsSQLite or PostgreSQLSQLite only
Blocklists (movies/series/tags)YesNo
Custom per-user/tag request rulesYesNo
Status in 2026Merged into SeerrMerged into Seerr

That table describes a split that no longer exists as two separate projects. Everything in the Jellyseerr column shipped into Seerr, and Overseerr’s simpler, Plex-only interface is still there for anyone who never touches Jellyfin or Emby. In 2026, the fork you’d have picked doesn’t matter anymore, only the features do: Jellyfin/Emby support, PostgreSQL, blocklists, whatever Jellyseerr added that Overseerr lacked. Seerr includes all of it regardless of which name brought you here.

  • Full Jellyfin, Emby, and Plex support from one instance, instead of Overseerr’s Plex-only limitation
  • PostgreSQL support alongside SQLite, useful once a library and its user base grow past a single-file database
  • Blocklists and per-user/per-tag request rules that Overseerr never had
  • Automatic migration to Seerr: existing Jellyseerr data moves over on first startup, no manual export or import
  • Still MIT-licensed and free after the merge, with no new paywall introduced
  • The Jellyseerr name and the fallenbagel/jellyseerr Docker image are frozen, so anything still pointing at them is out of date
  • Not a standalone app; it needs an existing Jellyfin, Plex, or Emby server plus Sonarr and/or Radarr to do anything useful
  • The container now runs as a non-root user by default, and folder ownership (UID 1000) trips up migrations from older setups
  • Some third-party install methods are still catching up to the rename; Seerr’s own docs flag the Snap package specifically as unmaintained for now

Hardware: Seerr, like Jellyseerr before it, is a lightweight Node.js app. It doesn’t transcode or store media itself, so a spare 1-2 CPU cores and well under 1GB of RAM is typically enough, in line with what Overseerr itself documented for years. The heavy lifting still happens on whichever box runs Jellyfin, Plex, or Emby, not here.

Reaching it from outside the house works like any other homelab service: a reverse proxy for a real HTTPS domain, or a private network tool like Tailscale if public exposure isn’t worth the hassle. If the rest of the stack still needs building, our Jellyfin and Emby fiches cover the media-server side, and Jellyfin vs Plex covers the bigger decision this app assumes is already made.

FAQ

Is Jellyseerr still maintained?

Not under that name. Jellyseerr and Overseerr merged into a single project called Seerr on February 10, 2026, and both original codebases are now frozen. Seerr is the actively maintained continuation, built by largely the same contributors, including Jellyseerr’s original creator.

Is Seerr the same thing as Jellyseerr?

Functionally, yes, plus everything Overseerr contributed too. Every feature Jellyseerr had, including Jellyfin and Emby support, blocklists, PostgreSQL, and custom request rules, shipped into Seerr, and an existing Jellyseerr instance migrates its data automatically the first time it starts on the new image.

Jellyseerr vs Overseerr: what was the real difference?

Mainly media server support. Overseerr only ever worked with Plex. Jellyseerr added full Jellyfin and Emby support on top of that, plus PostgreSQL, blocklists, and per-user request rules Overseerr didn’t have. Since the February 2026 merge, Seerr includes all of it no matter which name you used to run.

Do I need to do anything to migrate an existing Jellyseerr install?

Back up the config folder first, then point the same volume at ghcr.io/seerr-team/seerr:latest instead of fallenbagel/jellyseerr. Seerr detects the existing database and migrates it automatically on first startup; the only manual step is usually fixing folder ownership for the new non-root container.

A Jellyseerr container that’s already running doesn’t need an emergency migration; the frozen image keeps working until it’s moved on purpose. For a fresh install in 2026, there’s no real reason to reach for the old name at all, since Seerr is the same software, actively maintained, going forward.