> For the complete documentation index, see [llms.txt](https://wiki.crosswatch.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.crosswatch.app/related-information/tracker-to-media-server.md).

# Tracker to Media Server

Tracker to media server syncing is tempting. It is usually the wrong direction for history and ratings.

{% hint style="warning" %}
Plex has no supported way to **backdate** a play.

If CrossWatch writes **History** into Plex, Plex records `watched_at` as **now**.

This affects history sync and **History** capture restores.

That matters because when you later syncs history back from Plex to a tracker, CrossWatch send those Plex timestamps back to the tracker as if they were the real watch dates. This can overwrite the user’s historical watch timeline.
{% endhint %}

### Why it is risky

#### Libraries change

Media servers rematch. Editions change. Specials move.

Pushed history and ratings can drift or vanish.

#### Trackers are a superset

A tracker knows everything you watched. Cinema counts. Streaming counts. Friends TVs count.

A media server only knows what is on disk. That is a subset.

Tracker to server writes history and ratings for items the server does not have. That creates weird outcomes.

Common failures:

* Ghost history appears later when you add the file.
* Flip-flops happen after rescans. History toggles.

### When it can make sense

Limit this to watchlists. Keep history and ratings server-driven.

Examples:

* Use a tracker watchlist to drive what you want to download next.
* Use a tracker list as a "to watch" queue in Plex/Jellyfin.

### What to do instead

Use these defaults:

* History: **Media server -> tracker**
* Ratings: **Media server -> tracker**
* Watchlist: start one-way. Move to two-way only after clean runs.

### Related topics

* [Best practices](/getting-started/best-practices.md) - recommended directions and defaults.
* [Trackers vs. Media Servers](/related-information/trackers-vs.-media-servers.md) - why the roles differ.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://wiki.crosswatch.app/related-information/tracker-to-media-server.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
