unsubbed.co

Overr-Syncerr

Overr-Syncerr gives you webhook handler for subtitle management on your own infrastructure.

An honest review of a niche but genuinely useful self-hosted tool for Plex/Jellyfin homelab operators.

TL;DR

  • What it is: A MIT-licensed webhook handler that connects Overseerr/Jellyseerr issue reports to Bazarr’s subtitle synchronization engine, with Sonarr and Radarr in the middle [1][2].
  • Who it’s for: People running a shared Plex or Jellyfin server for friends and family who already have the full *arr stack (Overseerr/Jellyseerr + Sonarr/Radarr + Bazarr) and are tired of manually fixing subtitle sync complaints [1].
  • Cost: Free. MIT-licensed. Runs as a Docker container on whatever server already hosts your media stack [2].
  • Key strength: Closes the loop between a user’s “these subtitles are out of sync” complaint in Overseerr and the actual Bazarr sync operation — without giving your users access to Bazarr [1].
  • Key weakness: Completely useless unless you already run the full ecosystem it integrates with. This is a glue layer, not a standalone tool. And with 162 GitHub stars, it’s a one-developer project with all the support and longevity risk that implies [merged profile].

What is Overr-Syncerr

Overr-Syncerr is a webhook handler that lives inside your homelab’s media stack. When a user reports a subtitle issue through Overseerr or Jellyseerr, the webhook fires, Overr-Syncerr receives it, figures out what media is involved by querying Sonarr or Radarr, and then tells Bazarr to sync, translate, or adjust the offending subtitle. When the job is done, it automatically resolves the Overseerr/Jellyseerr issue and sends the user a reply [1][2].

The creator explains it plainly in the original Reddit post: “The idea for this script came from a need to make me less involved in the subtitle synchronization process, as up until now I would have to do it myself when someone from my friends and family would text me about ‘X subtitles for Y movie/series are out of sync.’” [1]

That’s the whole product in one sentence. It’s not a subtitle downloader, not a media server, not a request management UI. It’s the automation that connects pieces of your existing stack you already paid (in time) to set up.

Over time it expanded beyond subtitle sync. The current feature set includes per-user audio track preferences, per-user subtitle preferences, Plex media labeling, GPT-powered subtitle translation, and Kometa (Plex Meta Manager) integration [2]. The author describes it as a learning project — their first Docker container, their introduction to PowerShell — that kept growing as their homelab needs grew [2].

The project is hosted on GitHub at https://github.com/gssariev/overr-syncerr and has documentation at https://docs.overrsyncerr.info. As of this review it has 162 GitHub stars — small, but the kind of small where the people who need it know they need it [merged profile].


Why People Choose It

Overr-Syncerr serves one class of person: the homelab operator running a shared media server for a friend group or family. If that’s not you, stop reading.

If it is you, the pitch is compelling. Bazarr has an auto-sync-on-download feature, but the creator explicitly notes it “hasn’t been consistent” [1]. Subtitle scores in Bazarr can be tuned high to catch most bad subs, but outliers slip through. When they do, the options before Overr-Syncerr were: train your users to fix subtitles themselves (requires Bazarr access), fix it yourself when they message you, or just let them suffer.

The Reddit r/bazarr post announcing the tool got traction specifically because it solves a problem that people in that community recognize immediately [1]. The complaint is universal among multi-user Plex/Jellyfin operators: subtitle quality is the most common support request, and Bazarr’s UI isn’t something you want to hand to your aunt.

The expansion into audio preferences is the second compelling use case. Multilingual households watching the same library — one user wants English audio, another wants Spanish, someone else wants the original Japanese with English subtitles — previously required either manual Plex profile management or accepting that the wrong track would often get selected at playback. Overr-Syncerr’s per-user preference system applies the right track automatically once media becomes available [2].

There’s no direct competitor that does this same thing. This is a gap in the ecosystem that the major *arr tools don’t address.


Features

Subtitle management:

  • Sync subtitles on demand via Overseerr/Jellyseerr issue reports — no Bazarr access needed for end users [1][2]
  • Translate subtitles via Google Translate or OpenAI GPT (API key required for GPT) [2][merged profile]
  • Manual adjustment requests passed to Bazarr [2]
  • Bulk sync: “All Episodes” option syncs every subtitle in a season for a given language [1][2]
  • Support for 4K Bazarr instances and hearing-impaired (HI) subtitle variants [1][2]
  • Configurable “synced keyword list” — you define which words in an issue report trigger subtitle sync vs. other subtitle problems (encoding errors, wrong language, etc.) [1]
  • Uses first audio track as sync reference [1]

User preferences:

  • Per-user audio preferences: preferred language, codec, channel count — applied automatically when media becomes available [merged profile][2]
  • Per-user subtitle preferences: language, format, hearing-impaired or forced flags [2]

Automation and notifications:

  • Auto-reply and auto-resolve in Overseerr/Jellyseerr after sync completes [1][2]
  • Notifications respect the user’s display language setting in Overseerr/Jellyseerr [2]
  • Sonarr and Plex webhook support for labeling and preference-setting on TV episodes [2]

Plex extras:

  • Auto-label media in Plex with the requester’s username (based on Plex Requester Collections pattern) [1][2]
  • Kometa/Plex Meta Manager integration: apply overlays automatically once media is available [2]
  • Overseer Request Monitor for tracking preference application [merged profile]

What it doesn’t do:

  • Download subtitles (that’s Bazarr’s job)
  • Manage requests (that’s Overseerr/Jellyseerr)
  • Index media (that’s Sonarr/Radarr)
  • Work with Emby, Kodi, or Jellyfin media players directly

Pricing: SaaS vs Self-Hosted Math

This section is short because there’s nothing to compare. Overr-Syncerr is MIT-licensed and free. There is no cloud tier, no hosted version, no commercial license.

The cost is: whatever server you’re already running your media stack on, plus your time to configure it.

If you don’t already have Overseerr, Sonarr, Radarr, and Bazarr running, those have their own setup costs (all free and open source) but they’re prerequisites, not costs attributable to Overr-Syncerr.

The GPT translation feature requires an OpenAI API key. GPT-4o-mini translation of a subtitle file runs a fraction of a cent per file — not zero, but not meaningful at homelab scale.


Deployment Reality Check

Overr-Syncerr runs as a Docker container. The documentation lives at https://docs.overrsyncerr.info and covers the full setup [2].

What you actually need before you start:

  • A working Overseerr or Jellyseerr instance with webhook support enabled
  • Sonarr and Radarr with API access
  • Bazarr with API access (4K instance optional but supported)
  • Plex (required for labeling features; Jellyfin for request management only)
  • Docker on whatever machine hosts your stack

The setup flow:

  1. Deploy the Docker container with your API keys and URLs as environment variables
  2. Configure Overseerr/Jellyseerr to send webhooks to the Overr-Syncerr endpoint
  3. Generate the subtitle and audio preferences JSON files by running the script once
  4. Important: Enable the Overseer Request Monitor after generating preference JSONs, not before [merged profile README]

That last point is worth reading twice — the README flags it as critical. Enabling the monitor before the preferences exist means users get blank or incorrect settings applied.

Where things get complicated:

  • The per-user audio/subtitle preference system requires individual setup per user. It’s not fully automatic out of the box — users or the admin need to define preferences first.
  • The Kometa integration is documented but Kometa itself has its own learning curve. If you don’t already run it, that’s a separate project to tackle.
  • There’s no web UI for Overr-Syncerr itself. Configuration is environment variables and JSON files. Fine for a homelab operator, not for someone who prefers GUI-everything.

Realistic setup time for someone already running the *arr stack: 30–60 minutes for the basic subtitle sync workflow. Getting audio/subtitle preferences per user fully configured for a multi-user server could take an afternoon depending on user count.

Longevity risk: This is a one-developer project with 162 stars. The docs exist, it runs on Docker, and the MIT license means you can fork it. But if the developer stops maintaining it — which is the constant risk with single-maintainer homelab tools — you’re on your own. There’s a contributor table in the README with a few names beyond the original author, which helps, but this isn’t a project with a foundation or a company behind it [merged profile].


Pros and Cons

Pros

  • Solves a real, specific problem. The subtitle-complaint-to-Bazarr-sync loop is genuinely broken without something like this. If you’ve ever had to manually fix subtitles because a friend messaged you, you immediately understand the value [1].
  • No cost. MIT license, Docker container, zero SaaS bill. Runs on the server you already have [2].
  • Respects user boundaries. Your users get self-service subtitle sync without getting access to Bazarr’s full interface. That’s good ops hygiene [1].
  • Expands over time in useful directions. Per-user audio/subtitle preferences, GPT translation, Kometa integration — all additions that address real quality-of-life problems for shared server operators [2].
  • Auto-resolves Overseerr issues. The feedback loop back to the user (“your subtitle has been synced”) is a nice touch that makes the shared server feel professional [1][2].
  • Supports Jellyseerr, not just Overseerr. The Jellyfin ecosystem gets equal treatment [2].

Cons

  • Zero standalone value. This tool requires Overseerr/Jellyseerr + Sonarr/Radarr + Bazarr + Plex. If you’re missing any of these, Overr-Syncerr does nothing [1][2].
  • Small project, real longevity risk. 162 stars and a single primary maintainer. The docs exist and the license is permissive, but “I learned PowerShell and Docker building this” [2] tells you this isn’t a hardened production service.
  • No web UI. Everything is environment variables and JSON. Fine for technical users, a barrier for anyone without comfort in a terminal.
  • Order-of-operations gotchas. The README flag about enabling Request Monitor only after preference JSONs exist [merged profile] suggests there are initialization edge cases that require care.
  • GPT translation costs money. Small costs, but the OpenAI dependency is a third-party service you’re now trusting with your subtitle content [merged profile].
  • Limited community coverage. No Trustpilot, no G2, no major blog reviews. The only substantive third-party content is the original Reddit announcement [1] and the official docs [2]. You’re buying on the promise of the feature list, not a stack of independent reviews.
  • Plex-centric. While Jellyseerr is supported for request management, the labeling, audio preference, and Kometa features are Plex-specific. Jellyfin-only setups get a subset of functionality [2].

Who Should Use This / Who Shouldn’t

Use Overr-Syncerr if:

  • You run a shared Plex server for friends or family who actively use Overseerr/Jellyseerr to request and report issues
  • You’re already running Bazarr and want to close the loop between user reports and subtitle fixes without granting Bazarr access
  • You have multilingual users and want their audio/subtitle preferences applied automatically rather than relying on Plex profiles or manual setup
  • You’re comfortable deploying a Docker container and editing environment variables

Skip it if:

  • You’re the only user of your media server. The issue-reporting workflow Overr-Syncerr sits on only makes sense at multiple users.
  • You don’t run Bazarr. There’s no path to subtitle synchronization without it.
  • Your media server runs on Jellyfin exclusively and you want the full feature set (labeling and audio preferences are Plex-only).
  • You need a maintained, community-backed tool — the 162-star single-maintainer profile is a real consideration if you’re building something you depend on.

Alternatives Worth Considering

There’s no direct equivalent to Overr-Syncerr — nothing else closes the Overseerr issue → Bazarr action loop. But depending on which part of the problem you’re trying to solve:

  • Bazarr’s native auto-sync. Bazarr will attempt to sync subtitles on download. The creator notes it “hasn’t been consistent” [1] — which is exactly why Overr-Syncerr exists — but it’s worth tuning Bazarr’s sync settings before adding another layer.
  • Manual Bazarr access for trusted users. If your users are technical, just give them limited Bazarr access. Overr-Syncerr is specifically valuable when you can’t or don’t want to do that.
  • Sub-Zero (Plex plugin). The older Plex Meta Manager / Kometa path for subtitle management. More complex and partially deprecated. Overr-Syncerr is explicitly designed to work alongside Kometa, not replace it [2].
  • Plex Requester Collections. Handles the Plex labeling feature that Overr-Syncerr borrowed from [1][2]. If labeling is all you want, this project does it without the full subtitle management stack.

Bottom Line

Overr-Syncerr is purpose-built for a problem that affects exactly one kind of person: the homelab operator running a multi-user media server whose friends keep complaining about subtitles. If that’s you, the tool is a clean solution that’s been expanded thoughtfully — per-user audio preferences and GPT translation are genuinely useful additions, not feature bloat. If that’s not you, move on.

The honest caveat is the project’s size. A 162-star, single-maintainer Docker script with solid documentation is useful today, but it’s not a bet-the-homelab dependency. Use it for what it is: a well-thought-out glue layer that saves you from being your household’s subtitle support desk. If the developer stops maintaining it, the MIT license means someone can fork it — or you can fix it yourself.


Sources

  1. gsariev (creator) — “Meet Overr-Syncerr: a script that help you sync subs via Overseerr”, r/bazarr, Reddit. https://www.reddit.com/r/bazarr/comments/1duj850/meet_overrsyncerr_a_script_that_help_you_sync/
  2. Official Overr-Syncerr Documentation — georgis-docs.gitbook.io (Introduction and feature list). https://georgis-docs.gitbook.io/overr-syncerr
  3. GitHub Repository and README — gssariev/overr-syncerr, MIT license, 162 stars. https://github.com/gssariev/overr-syncerr

Features

Integrations & APIs

  • Webhooks