> 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/crosswatch/main-dashboard/tools/import-export.md).

# Import / Export

Import media data into CrossWatch or export it for other services.

Use **Import** to bring existing watch history, ratings and watchlists from other trackers into the CW Tracker. Use **Export** to convert data available in CW into formats that can be used by other services.

### Import

<figure><img src="https://565675962-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3rh5THg1PdhVsBt3GALo%2Fuploads%2Fakpt97V9yWO2xxAOIQKg%2Fimage.png?alt=media&amp;token=b1a2761d-6948-4b4c-a58a-a4282984b140" alt=""><figcaption></figcaption></figure>

The Import tab allows you to import existing tracker exports directly into CW.

Supported sources include:

1. Trakt
2. Letterboxd
3. Simkl
4. IMDb
5. TV Time
6. Yamtrack
7. Generic CSV or JSON files

CrossWatch can also automatically detect supported export formats.

Before importing, make sure the **CW Tracker** is configured under Connections. Imported data is written to the selected CW Tracker profile.

#### Importing data

1. Open **Tools**, then **Import / Export**.
2. Select the **Import** tab.
3. Select the source, or leave it on **Auto detect**.
4. Select the target CrossWatch Tracker profile.
5. Choose the export file.
6. Select which data you want to include.
7. Click **Preview file**.

Nothing is imported during the preview.

CW analyses the file and shows the detected items before anything is written to your tracker.

You can import:

**History**, watched movies, shows, seasons and episodes

**Ratings**, ratings contained in the source export

**Watchlist**, items saved to your watchlist

The preview can be filtered by media type, feature, title, year, ID and import status.

#### Preview status

Each item receives a status before import.

**Ready**, the item can be imported

**In tracker**, the item already exists in the target profile

**Duplicate**, the same item occurs more than once in the uploaded file

**Missing IDs**, CW could not find enough information to identify the item

**Invalid**, required information such as a watched date or rating is missing

**Unsupported**, the item or feature cannot currently be imported

By default, CrossWatch imports items marked as Ready.

Enable **Include existing** if you also want to process items that are already present in the CW Tracker. This can be useful when restoring or merging data.

You can import all ready items or manually select individual rows from the preview.

When you are satisfied with the preview, click **Import**.

#### Recover Plex history

Use [Recover Plex history](/crosswatch/main-dashboard/tools/import-export/recover-plex-history.md) for retained Plex watch events whose movies or episodes are no longer in your libraries.

### Export

<figure><img src="https://565675962-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3rh5THg1PdhVsBt3GALo%2Fuploads%2FalhngR7IWJsn9z6ZD4V9%2Fimage.png?alt=media&amp;token=2b45d141-6c31-49e8-b51a-7cca47d96c95" alt=""><figcaption></figcaption></figure>

The Export tab lets you export data available in CW to formats understood by other media services.

Select the source provider and, when applicable, the provider instance. You can then choose which data you want to export.

Available features include:

**Watchlist**

**History**

**Ratings**

**History & Ratings**

You can further filter the export by media type or search for specific titles, years or IDs.

Click **Preview** to inspect the matching items before creating the export.

By default, **All filtered** exports every item matching the current filters. Disable it if you only want to export selected rows.

Select the required export format and click **Export** to create the file.

Some formats only support specific features or media types. CW automatically adjusts the available options based on the selected export format.

#### Export to Trakt

Export movie data in Trakt's CSV format. You do not need a Trakt connection.

First sync the source provider if you need its latest data. CW exports saved provider data.

1. Open **Tools** → **Import / Export** → **Export**.
2. Select the source provider and instance.
3. Select **Trakt CSV (movies)** as the format.
4. Select **Watchlist**, **History**, **Ratings**, or **History & Ratings**.
5. Review the preview, then select **Export**.

**History & Ratings** excludes your watchlist. Export the watchlist separately.

Only movies with valid IMDb IDs are supported. CW excludes TV items and movies without IMDb IDs. The preview shows the excluded-item count and reason.

{% hint style="info" %}
Other identifier types have not been verified with Trakt's importer.
{% endhint %}

#### Import the export in Trakt

1. Open [Trakt's CSV importer](https://app.trakt.tv/settings/data?source=trakt-csv).
2. Upload the downloaded CSV file.
3. If CW downloads a ZIP, extract it first.
4. Upload numbered CSV files individually, in order.
5. Wait for each Trakt import to finish.
6. Import the watchlist last.

Never upload the ZIP itself. Do not combine its CSV files.

Importing history can remove items from Trakt's watchlist. Importing the watchlist last restores it.

#### Dates, ratings, and rewatches

CW retains watch and rating timestamps, normalized to UTC. Dates without a timezone use UTC.

A missing watch date exports as `unknown`. CW never substitutes the rating date.

Ratings must be whole numbers from `1` through `10`. CW skips invalid dates, invalid ratings, and rating rows without ratings. The preview reports each skipped row.

Ratings without a saved date leave `rated_at` blank. Trakt assigns the rating date.

CW includes original watchlist timestamps when available. Otherwise, it uses the export time and reports this in the preview.

{% hint style="warning" %}
Trakt currently assigns its import time to watchlist entries. It ignores supplied watchlist dates.
{% endhint %}

Enable **Include rewatches** to export individual watch events. This requires a source that retains separate watch events.

Each CSV contains one row per IMDb ID. CW creates separate files when repeated watches require them. Import every file in order to retain each watch timestamp.

Disabling **Include rewatches** exports the latest watch only.

{% hint style="warning" %}
Do not use repeated imports as a lossless synchronization method. Reimporting can recreate watchlist entries with new dates.
{% endhint %}


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://wiki.crosswatch.app/crosswatch/main-dashboard/tools/import-export.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
