Watcharr
Self-hosted watch-list and media tracking server
Watcharr is a self-hosted watched list and tracking application for movies, TV shows, anime, and games. It tracks viewing progress and ratings with data from TMDB and IGDB through a clean web interface.
Key features
- Movie and TV watch tracking
- Ratings and reviews
- TMDB and IGDB metadata
- Multi-user support
Pros & cons
Strengths
- Clean modern UI
- Tracks many media types
Trade-offs
- Tracking only, no playback
- Younger project
Watcharr replaces
Last reviewed Sep 13, 2026 · 804 words
Watcharr plays nothing. It is a diary: one Go binary with a SQLite file that records what you and your household have watched, are watching, and thought of it, with posters and metadata pulled from TMDB and IGDB. That is the whole product, and once you accept it the appeal is obvious. It replaces a Trakt account plus a Letterboxd account plus the games spreadsheet in about 5 minutes, on 256 MB of RAM, with no subscription and no third party holding 15 years of viewing history.
Setup is one container and one volume
The image is ghcr.io/sbondco/watcharr, it listens on port 3080, and the only thing to persist is /data, which holds the SQLite database and cached images. The first account you create becomes admin. A working TMDB key ships in the build, so films and TV work immediately; games need your own IGDB credentials (a free Twitch developer client ID and secret) set as environment variables. Put it behind your reverse proxy with HTTPS and you are finished, which is why the catalogue rates it Easy and why I would not bother with bare-metal.
Multi-user is real: each person has a private list, ratings and a public profile you can toggle. The admin controls whether registration is open and can create accounts by hand, which is the correct setting for a family server.
Logging in with your Jellyfin account is the killer feature
Watcharr can authenticate against a Jellyfin server, so household members use the credentials they already have and there is no second password to forget. It can also pull watched status from Jellyfin, so a series you finished on the TV shows up as watched without manual entry. This is the thing that makes a tracker survive contact with a household: nobody maintains a diary by hand for more than 3 weeks.
Imports cover the obvious exits from hosted services: Trakt, Letterboxd CSV, TV Time, MyAnimeList and Ryot. The Letterboxd CSV path brings ratings and watch dates across; review text survives where the export contained it, and anything TMDB cannot match lands in a list for you to fix by hand.
What it tracks well and what it barely touches
Films and TV are first-class, down to per-episode status and season progress. Anime works through TMDB's anime entries, which is fine for popular series and patchy for older or obscure titles. Games are a genuine bonus rather than an afterthought, with IGDB covers and platforms, but there is no playtime and no launcher integration. Books, podcasts, music and fitness are absent, and that is the line between Watcharr and its bigger sibling.
Ratings are a 10-point scale with a short review box, tags exist, and the stats page gives you totals by year and genre. There are no lists beyond the built-in states (planned, watching, finished, held, dropped), so a "Halloween marathon" shortlist has to be a tag.
Ryot is the safer pick if you want everything in one place
Ryot sits in the same slot and tracks more media types, adds fitness and measurement logging, supports more metadata providers and has a larger contributor base. It also weighs more: a PostgreSQL dependency and a busier interface. Watcharr is the better choice when films, TV and games are the whole story and you value a clean interface over breadth. If you already know you want to log books and podcasts too, start with Ryot rather than migrating later; the Ryot import exists but stats and custom fields do not round-trip.
A younger project also means faster churn. Watcharr started in 2023, so expect the occasional breaking schema change and read the release notes before pulling latest. Back up /data before each upgrade; the SQLite file is small enough that a copy is a reflex.
Where it fits in a media stack
It does not need to know where your files are, so it runs happily on the same box as your media server or on a 1-vCPU VPS. The pairing that makes sense is Jellyfin for playback and watched-status sync, Watcharr for ratings and the "have we seen this" question, and a request tool for the pipeline in front. Watcharr does not talk to the *arr apps and does not request anything; treat it as a read-mostly view.
What I'd do
Run the container behind Caddy, close registration after creating accounts for the household, turn on Jellyfin login and watched-status sync, and import your Letterboxd and Trakt exports on day one. If your household wants books or podcasts tracked as well, skip it and go to Ryot. For everyone else, this is the tracker that gets used because it asks nothing of you after setup.
Compare Watcharr
2 head-to-head comparisons.
Similar media servers apps
Jellyfin
Media ServersFree software media system for streaming your library
Replaces Plex, Emby
qBittorrent
Media ServersBittorrent client that aims to be a good alternative to all other
Replaces µTorrent
SRS
Media ServersA simple, high efficiency and real-time video server, supports RTMP,
Navidrome
Media ServersModern music streaming server for your collection
Replaces Spotify
Kodi
Media ServersOpen-source home theater and media center
Replaces Plex
Koel
Media ServersPersonal music streaming server with an elegant interface
Replaces Spotify