CrossWatch - self-hosted sync engine

Hi all, I build CrossWatch, a self-hosted sync engine. CrossWatch is a synchronization engine that keeps your TRAKT in sync with Plex, Jellyfin, Emby, Simkl and Mdblist in. It runs locally with a clean web UI to link accounts, configure sync pairs, run them manually or on schedule, and track stats/history.

CrossWatch provides:

  • One brain for all your media syncs.
  • Multi-server (Plex, Jellyfin, Emby) and multi-tracker (TRAKT, SIMKL, Mdblist) in one tool.
  • Sync between media servers: Plex, Jellyfin, Emby - Sync between trackers: SIMKL, TRAKT - or Sync from/to media servers and trackers.
    • Also great for backups or to keep your media servers in sync.
  • Beautiful UI, rich debug logs, and lots of sensible toggles.
  • Simple and advanced scheduling for real freedom.
  • Unified, visual Watchlist across providers — filter, search, bulk remove, etc.
  • Back-to-the-Future (Fallback GUID)
    • Revives old items that left your library but still hide in your server DB, hello, ancient Plex memories that are now in your TRAKT account.
  • Intelligent Webhooks
  • Watcher
  • Watchlist Auto-Remove
    • Clears items automatically from your TRAKT Watchlist after a verified finish
  • Analyzer
    • Finds items stuck between providers.

    • Shows Issues: N per your sync pairs with concrete fix hints.

If this kind of setup is useful for you then try it out here.

4 Likes

I’ve been using it for a while now to sync my watchlist bidirectionally, and compared to many other tools, it works perfectly here and is a true two-way sync. Is there a way to configure the watchlist to sync two-way and then use one-way (Plex to Trakt) for everything else? @pvdberg

Been using this for a couple weeks to sync my watch list to Plex. Works great and super helpful - thanks.

Absolutely you just create two or more pairs. One for watchlist in two-way and the other pairs in one-way with history and ratings feature enabled.

However, my advice would be: one sync from plex to trakt for history (one time) and then disable the pair and switch over to webhook or watcher for realtime updates.

1 Like

Thank you. Its getting better every update.

Thank you. The Emby webhook is essentially the Jellyfin webhook, and I was hoping it would just work. Problem is: I don’t have Emby Premiere, so I can’t live-test it. Realistically, I’ll probably remove the Emby webhook later anyway, Watcher is smarter and does the job better cause i can control it.

Thanks for testing, really appreciate it.

Version 0.4.4 released. This release is all about the new CrossWatch Tracker A built-in snapshot provider that stores your Watchlist, History and Ratings locally and lets you backup & restore them into your other services. Perfect for easy backup and restoring your Trakt items.

2 Likes