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.

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.

Anime episode mapping

This shows when SIMKL can receive progress in the pair.

It translates anime episode numbering before progress is written to SIMKL, using the local Anime ID database.

It needs global Anime ID Mapping to be enabled first.

It can heavily increase API calls when extra anime ID and episode lookups are needed.

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.

Specials (Season 0)

Default: enabled

Includes Season 0 episodes.

Turn it off to skip them on both sides of the pair.

Only items in destination library

Default: disabled

Skips resume positions for movies and episodes that are not in your media server library.

It is explained in full further down this page.

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

  • Specials (Season 0): enabled

  • Only items in destination library: disabled

Skipping titles that are not in your library

This is what Only items in destination library does.

Trackers and other servers hold resume positions for titles you may not have.

Without this option, CrossWatch tries to write all of them and most of them fail.

With this option, CrossWatch checks your library first and leaves out what is not there.

Compatibility

This option applies only when the listed provider is the destination.

Feature
Plex
Emby
Jellyfin
Kodi

History

Yes

Yes

Yes

Yes

Ratings

Yes

No

No

Yes

Progress

Yes

Yes

Yes

Yes

Watchlist

No

Yes

Yes

No

In a two-way pair, it filters only the direction that writes to a supported destination.

You see it when

  • The destination is Plex, Emby, Jellyfin or Kodi.

  • Or the pair is two-way and one side is one of those.

Enabled

  • Interactive Sync only shows positions that can actually be written.

  • No write attempts for titles your server does not have.

  • Missing titles no longer fill up unresolved and blackbox.

  • A title you add to your library later gets its position on the next sync.

  • Adds a library check to every run, usually a few seconds.

Disabled (default)

  • Sync works as it always has.

  • Every position is attempted, including title matching when Strict ID matching is off.

  • Missing titles show as unresolved and get blackboxed after three failed runs.

Position changes are always synced. A title your server already has a resume position for is never skipped.

Only titles without a position on the destination are checked against your library.

Good to know

  • Skipped items show in Interactive Sync as Not in library. They are hidden by default, with a count you can click.

  • Only movies and episodes are checked.

  • Your Progress library whitelist still applies. A title in a library that is not whitelisted counts as not in the library.

  • Items without any usable ID are not checked. They sync the same way as before.

Progress vs Playback

Progress updates when the pair runs.

Playback reads the provider live.

The numbers can differ between those views.

That is normal.

Planning vs write scope

These settings affect planning for all supported progress pairs:

  • Minimum seconds

  • Change threshold

  • Ignore near complete

These settings mainly affect writes to Plex, Emby, and Jellyfin destinations:

  • Replay watched items

  • Timestamp tolerance

Only items in destination library affects planning for Plex, Emby, Jellyfin, and Kodi destinations.

It runs after every other progress filter, so it only sees positions that already passed them.

Nuvio, PublicMetaDB, and CrossWatch local use their own write rules.

Regression handling

When the source position is behind the destination, CrossWatch checks timestamps first.

Without usable timestamps, it does not move progress backward.

In two-way mode, the newest usable progress usually wins.

If timestamps are missing, the higher position wins.

Clear behavior

Progress does not clear just because the source has no resume position.

Clear behavior still depends on pair remove settings and provider support.

Progress clears are tombstone-driven.

That means a clear can take two runs:

  1. CrossWatch records that the source item disappeared.

  2. The next run treats that disappearance as real and applies the clear.

See Tombstones.

Additional write protection

Before writing to Plex, Emby, or Jellyfin, CrossWatch also skips when:

  • the item is actively playing on the destination

  • source and destination are the same provider instance

  • the source has no usable progress timestamp

  • the destination is newer than the allowed tolerance

  • the destination is watched and replay mode is off

  • the positions are already materially equal

These checks prevent scheduled syncs from overwriting newer destination activity.

Provider notes

  • Plex does not support clear

  • Plex timestamps can be delayed or missing

  • Emby clears by setting progress to 0

  • Jellyfin clears by setting progress to 0

  • Nuvio supports progress removal when pair removal is enabled

  • Replay watched items is implemented for Plex, Emby, and Jellyfin destinations

Last updated

Was this helpful?