---
title: "Migrate content"
manual: "TYPO3 Explained"
version: "13.4"
permalink: "https://docs.typo3.org/permalink/t3coreapi:migratecontent@13.4"
source: "Administration/Upgrade/MigrateContent/Index.rst"
rendered: "2026-09-18T05:52:58+00:00"
---

# Migrate content {#migrate-content}

Maybe you have already done a lot of work on your TYPO3 installation and even
built more than one homepage with it. Now you want to copy parts of one
homepage to another installation.

This method won't copy any of your installed extensions. You have to take care
of moving them yourself. Records stored on root level (such as sys_file) records
don't get exported automatically.

## Prerequisites {#prerequisites}

If the menu entries **Export** and **Import** are missing
from your page tree's context menu check that the system extension
`impexp` is loaded and installed.

On composer based installations it can be required via

**typo3_root$**

```bash
composer req typo3/cms-impexp
```

## Export your data {#export-your-data}

### Via CLI command {#via-cli-command}

Exporting a TYPO3 page tree without php time limit is possible via
[Symfony Console Commands (cli)](https://docs.typo3.org/permalink/t3coreapi:symfony-console-commands-cli@13.4).

**Composer based installation**

```bash
vendor/bin/typo3 impexp:export [options] [--] [<filename>]
```

> [!NOTE]
> If your TYPO3 installation is not based on composer you can run the command
> with `typo3/sysext/core/bin/typo3 impexp:export` instead.

and exports the entire TYPO3 page tree - or parts of it - to a data file of
format XML or T3D, which can be used for import into any TYPO3 instance.

The export can be fine-tuned through the complete set of options also
available in the export view of the TYPO3 backend:
You can see the complete list of options by calling the help for the command:

**typo3_root$**

```bash
vendor/bin/typo3 help impexp:export
```

### Manual export from the TYPO3 backend {#manual-export-from-the-typo3-backend}

1.  Go to the export module

    On the page tree left click on the page from where you want to start the
    export. Select **More options ...**:

    ![Select "More options..." from the context menu of the page tree](../../../Images/ManualScreenshots/ImportExport/ContextMenuMore.png)

    Then select **Export** from the context menu.

    ![Select Then select "Export"](../../../Images/ManualScreenshots/ImportExport/ContextMenuExport.png)
1.  Select the tables to be exported

    You can select the tables manually, from which
    you want to export the entries correlated with the selected page. It
    is also possible to include static relations to tables already present
    in the target installation.

    ![Select the tables to be exported](../../../Images/ManualScreenshots/ImportExport/ExportDialog.png)
1.  Choose number of levels to be exported

    If you want to save all your data, including subpages,
    select 'Infinite' from the **Levels** select box and hit the
    **Update** Button at the end of the dialog.

    ![Select the page levels to be exported](../../../Images/ManualScreenshots/ImportExport/ExportDialogInfiniteLevels.png)
1.  Check the included records

    All included pages can be seen at the top of the dialog. Below the
    dialog there is a detailed list of all data to be exported. It is
    possible to exclude single records here. With some data types it
    is possible to make them manually editable.

    When the relation to records are lost these will be marked with an
    orange exclamation mark. Reasons for lost relations include records
    stored outside the page tree to be exported and excluded tables.

    ![Check the exported data](../../../Images/ManualScreenshots/ImportExport/CheckExport.png)
1.  Save or export the data

    You can save the exported data to your server or download it in the
    tab **File & Preset**.

    ![Download the export data](../../../Images/ManualScreenshots/ImportExport/DownloadExport.png)

## Import your data {#import-your-data}

> [!NOTE]
> Make sure all needed extensions are installed and the database scheme
> is up to date before starting the import. Otherwise the data related
> to non-existing tables will not get imported.

### Via CLI command {#via-cli-command-1}

Importing a TYPO3 page tree without php time limit is possible via
[Symfony Console Commands (cli)](https://docs.typo3.org/permalink/t3coreapi:symfony-console-commands-cli@13.4).

**Composer based installation**

```bash
vendor/bin/typo3 impexp:import [options] [--] [<filename>]
```

> [!NOTE]
> If your TYPO3 installation is not based on composer you can run the command
> with `typo3/sysext/core/bin/typo3 impexp:import` instead.

The import can be fine-tuned through the complete set of options also
available in the import view of the TYPO3 backend. You can see the complete
list of options by calling the help for the command:

**typo3_root$**

```bash
vendor/bin/typo3 help impexp:import
```

### Manual import from the TYPO3 backend {#manual-import-from-the-typo3-backend}

1.  Upload the export file

    Upload the file to your destination TYPO3 installation. Just like the
    export module you find the import module in the page tree context menu
    **More options... -> Import**. Choose the page whose subpage
    the imported page should be as starting point for the import. If you
    want to import the data at root-level, choose the

    ![Upload the export data](../../../Images/ManualScreenshots/ImportExport/UploadImport.png)
1.  Preview the data do be imported

    A tree with the records to be imported gets displayed
    automatically. If you change some options you can reload
    this display with the **preview** button.

    ![Preview the data](../../../Images/ManualScreenshots/ImportExport/ImportPreview.png)
1.  Import

    Click the import button.

## Importing data from old TYPO3 versions {#importing-data-from-old-typo3-versions}

The data structure for content exports has hardly changed since the early
ages of TYPO3. It is possible to export content from TYPO3 installations
that are 15 and more years old into modern TYPO3 Installations.

The following shows the export dialog of TYPO3 installation of version
3.8.0. It is often more feasible to use the Import / Export tool than to
attempt to update very old TYPO3 installations.

![Export module of TYPO3 3.8.0 (year 2005)](../../../Images/ManualScreenshots/ImportExport/ImpExpV3.8.png)
