These docs are for MetaTana 2.0, coming soon
Add Trakt And Sync Watched State
Trakt keeps your watched history across devices. Connect it on the Sync page, then pull history from Trakt, push MetaTana's history to it, or both.
Step 1: Open Sync
Select Sync in the sidebar. Trakt has its own card there. Until the keys from Step 2 are saved, the card shows Add Trakt keys.

Step 2: Add Trakt API credentials
You need an app registered once at trakt.tv, under Settings › Your API Apps. The redirect URI for desktop installs is urn:ietf:wg:oauth:2.0:oob.
Select Add Trakt keys on the card, or open Settings › Providers › More › Trakt client keys, and paste the client ID. Trakt apps made since October 2026 have no client secret, and MetaTana doesn’t need one. If your app is older and has a secret, paste it too. On Docker you can set TRAKT_CLIENT_ID (and TRAKT_CLIENT_SECRET for an older app) instead.
Step 3: Connect
Select Connect on the Trakt card, or Add server or service and pick Trakt. The card shows Enter this code at Trakt with a code and a Trakt link. Open the link, enter the code, and approve the app. MetaTana waits for the approval, then the card shows Connected.
Step 4: Pick a direction
Decide which side to trust. For most setups, Trakt is the better source for watched history, because it sees what you watch on every device.
The Trakt card has Sync now, which pulls and pushes, and its ⋯ menu has Push watched history and Pull watched history for one direction at a time. Sync now at the top of Sync runs Trakt along with your servers. After that, Trakt syncs in the background every 15 minutes. Disconnect… on the card signs out; your watched history in Trakt is not deleted.
Step 5: Preview, then apply
Pull first, check a few titles in Library, then push. Activity lists each sync under Show › Sync.
Going deeper
- Media servers and watch state: Trakt: how each direction works, and how Trakt fits with media server sync