WatchState
Sync Plex, Jellyfin, and Emby watch progress across servers
1.5k stars 26 forks last commit first released MIT
Actively maintained
Last commit 20 Aug 2026.
WatchState is a self-hosted tool that keeps users’ watch progress and play state synchronized across Plex, Jellyfin, and Emby media servers. It supports one-way or many-to-many sync without relying on external third-party services.
Key Features
- Multi-user and sub-user support
- One-way or two-way (many-to-many) play-state synchronization between backends
- Webhook ingestion from supported media servers to update state in near real time
- Scheduled and on-demand imports to reconcile missed events
- Portable play-state backup/export
- Detection of unmatched/mismatched items across servers
- Metadata search and parity checks to compare backend reporting
- Checks for stale references to old or removed files
Use Cases
- Keep watch progress consistent between a local Jellyfin server and a remote Plex server
- Migrate or rebuild a media server while preserving watch history via backups/restore
- Audit libraries across multiple backends to find mismatches and stale references
WatchState is well-suited for homelab and multi-server media setups where consistency and data ownership are important, offering both automation (webhooks/scheduling) and manual control for synchronization and verification.
Categories:
Tags:
Tech Stack:
Similar to WatchState

Mealie
Self-hosted recipe manager, meal planner, and shopping list
Self-hosted recipe manager with URL imports, meal planning, shopping lists, cookbooks, and an API-first backend with a Vue web interface.

Koel
Web-based personal music streaming server
Koel is a web-based personal music streaming server with a modern player UI, multi-user support, playlists, library management, and optional mobile apps.
PG Back Web
Web UI for automated PostgreSQL backups and restores
Self-hosted web interface to schedule, monitor, encrypt, store, and restore PostgreSQL backups to local disk or S3-compatible storage.


PinePods
Self-hosted podcast server with multi-device sync and native clients
PinePods is a self-hosted podcast management server with multi-user support, gPodder sync, smart playlists, and apps for web, mobile, desktop, and CLI.

Movary
Self-hosted movie watch history tracking and rating app
Movary is a self-hosted web app to track, rate, and explore your movie watch history with statistics, integrations, and automatic scrobbling from media servers.

Pulsarr
Real-time Plex watchlist monitor and Sonarr/Radarr integrator
Monitors Plex watchlists in real time and automates requests to Sonarr and Radarr with routing rules, approvals, quotas, and notifications.

