> For the complete documentation index, see [llms.txt](https://docs.umbraco.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.umbraco.com/umbraco-deploy/deployment-workflow/content-transfer.md).

# Transfer Items

Once all code and metadata are in sync between your environments, it's time to transfer your content and media. This is done from the Umbraco Backoffice.

Transfers are flexible, which means you have complete control over which items you want to transfer. You can transfer it all in one go, a few at a time, or transfer only a single item.

Transferring items will overwrite the same item on the target environment if it already exists. A transfer will transfer the items that you select in the "source" environment to the "target" environment exactly the same as it was in the "source".

{% hint style="warning" %}
Transfers will only work if you've **deployed all changes to your metadata beforehand**. Please refer to our documentation on [how to deploy metadata](/umbraco-deploy/deployment-workflow/deploying-changes.md) to learn more.
{% endhint %}

## Transfer Queue

The first step when transferring items from your environment is to add them to the Transfer Queue. You can add items to the Transfer queue from the following sections:

* Content from the **Content** section.
* Elements from the **Library section**.
* Media from the **Media** section.
* Forms from the **Forms** section ([additional configuration is required](#umbraco-forms)).
* Members and Member Groups from the **Members** section ([additional configuration is required](#transfer-members-and-member-groups)).

Choose between two methods when adding items to the Transfer Queue:

* **Option 1:** Add a specific item, specify variants, and include/exclude subitems.
* **Option 2:** Add everything from a specific section (Content, Media, Library, or Forms).

### Add items to the queue

The steps below take you through the options available when choosing **Option 1**:&#x20;

1. Click on the ellipsis node next to **the root item** in the tree.
   1. For **Option 2**, click on the ellipses next to the tree title (Content, Media, Elements, or Forms).
2. Choose **Add to Transfer Queue**.
3. Select the culture variants you want to add.
   1. Only languages for which you have permission to access will be selectable.
4. Choose to either publish the content directly after transferring or set a specific date and time.
5. Choose whether or not to include any subitems.

<figure><img src="/files/EF3EzqQxihGMgC0rmics" alt="Queue for transfer window"><figcaption><p>Queue for transfer window</p></figcaption></figure>

6. Click **Submit** to add the content to the Transfer Queue.

### Transfer queued items

Once you have items in your Transfer Queue, a notification icon is added to the Environment name in the top-right corner. The number is increased depending on how many different items are queued.

1. Open the **Deploy Overview** by clicking on the **Environment name**.

<figure><img src="/files/OP1WIy6tXLeVPstdvX7C" alt=""><figcaption></figcaption></figure>

2. Review the items added to the Transfer Queue.
   1. You will be able to see which items are currently ready to be transferred - this will include both content and media that you've *queued for transfer*.
   2. Hover an item to get the **Remove** option, or use the Refresh and Clear queue options found via the arrow at the bottom.
3. Click **Transfer to \[Environment name]** to transfer the items to the next environment.

<figure><img src="/files/vPr35EyRzuH2V9oQLCqe" alt="Transfer queue"><figcaption><p>Transfer queue</p></figcaption></figure>

The transfer can take a few minutes, depending on the number of items being transferred to the next environment. You can follow the process from the Deploy Overview.

When the transfer is done, close the Deploy Overview and verify that the items are now available on the next environment.

## [Transfer Members and Member Groups](https://docs.umbraco.com/umbraco-deploy/deploy-settings#allowmembersdeploymentoperations-and-transfermembergroupsascontent)

To be able to transfer Members and Member groups, make sure that `AllowMembersDeploymentOperations` is configured to `transfer` and `TransferMemberGroupsAsContent` is set to `true`. This needs to be done in the `appSettings.json` file

```json
"Umbraco": {
    "Deploy": {
        "Settings": {
            "AllowMembersDeploymentOperations": "Transfer",
            "TransferMemberGroupsAsContent": true,
        }
    }
  }
```

Once the settings have been configured, Members can be transferred as described [using steps above](#add-items-to-the-transfer-queue).

## Transfer Forms

For Deploy to handle Umbraco Forms data as content, you will need to ensure that the `transferFormsAsContent` setting in the configuration is set to `true`. See details in the [Configuration](/umbraco-deploy/getting-started/deploy-settings.md) article.

{% hint style="info" %}
This does not include entries submitted via the forms.
{% endhint %}

## Schema Mismatches

Sometimes, a content transfer might not be possible. For example, if you add a new property to the HomePage Document type and you don’t have that property in both environments, you’ll get an error with a hint on how to fix this.

![Schema mismatch](/files/WoQjKcIWQ1M6UGsbF7KJ)

If you are seeing this type of issue when trying to transfer content, head over to our article about [Schema Mismatch errors](/umbraco-deploy/troubleshooting.md), where you can read about how to resolve the issues.


---

# 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://docs.umbraco.com/umbraco-deploy/deployment-workflow/content-transfer.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.
