For the complete documentation index, see llms.txt. This page is also available as Markdown.

Progress

Sync resume position (“Continue Watching”) between supported providers.

Progress syncs resume position.

It keeps “Continue Watching” aligned across supported providers.

It does not mark items watched.

Use History for watched state.

Tracking issue: https://github.com/cenodude/CrossWatch/issues/119

Supported pairs

The Advanced Playback Progress section appears only when both sides support progress sync.

Supported progress providers are:

  • Plex

  • Emby

  • Jellyfin

  • PublicMetaDB

  • CrossWatch local

What syncs

Progress syncs the position where playback stopped.

It does not treat a missing resume position as a clear request.

Watched history stays separate from progress sync.

Pair controls

Per pair, you can control:

  • Enable

  • Mode — one-way or two-way

  • Add / Update

  • Remove (clear)

Clear support depends on the destination provider.

Emby and Jellyfin support clears.

Plex does not support clears.

Advanced playback progress

These settings live on the pair.

Different pairs can use different progress rules.

Minimum seconds

Default: 60

Resume positions below this value are ignored.

A stop in the first minute does not sync with the default.

Use 0 to disable this filter.

Change threshold

Default: 30

CrossWatch writes progress only when the source and destination differ by at least this value.

This reduces noisy writes from small player timing differences.

Use 0 to consider every difference.

Ignore near complete

Default: 95 percent

Positions at or above this value do not sync as unfinished progress.

This lets History own the watched state.

Enable History if you rely on this setting.

Replay watched items

Default: disabled

By default, CrossWatch does not write unfinished progress over a watched destination item.

With this enabled, CrossWatch can mark the destination unwatched and restore the source resume point.

Use it only for deliberate rewatches.

Timestamp tolerance

Default: 30 seconds

Accepted range: 0 to 300 seconds

If the destination timestamp is newer than the source by more than this value, CrossWatch skips the write.

Increase it when minor clock drift blocks valid writes.

Change threshold examples

With a threshold of 30 seconds:

  • Source 20:00, destination 19:45 → no write

  • Source 20:00, destination 19:20 → write allowed

Recommended defaults:

  • Minimum seconds: 60

  • Change threshold: 30

  • Ignore near complete: 95

  • Replay watched items: disabled

  • Timestamp tolerance: 30

Progress vs Playback

Progress updates when the pair runs.

Playback reads the provider live.

The numbers can differ between those views.

That is normal.

Last updated

Was this helpful?