# Upgrade Umbraco Engage

This article shows how to upgrade Umbraco Engage to the latest version.

When upgrading Umbraco Engage, you can consult the [version specific upgrade](/umbraco-engage/upgrading/version-specific-upgrade-notes.md) notes to learn about potential breaking changes and common pitfalls.

{% hint style="warning" %}
Before you upgrade, it is recommended that your site and database be backed up.
{% endhint %}

## Get the latest version of Umbraco Engage

To upgrade to the latest version of Umbraco Engage you can use:

* NuGet
* Visual Studio

### NuGet

1. Install the latest version using the `dotnet add package Umbraco.Engage` command.
   * You can also specify version: `dotnet add package Umbraco.Engage --version <VERSION>`.
2. Run `dotnet restore` to install the package.

### Visual Studio

1. Go to `Tools` -> `NuGet Package Manager` -> `Manage NuGet Packages for Solution...` in Visual Studio.
2. Select **Umbraco.Engage**.
3. Select the latest version from the Version drop-down and click **Install**.

When the task completes, open the **.csproj** file to make sure the package reference is updated:

```xml
<ItemGroup>
  <PackageReference Include="Umbraco.Engage" Version="xx.x.x" />
</ItemGroup>
```

If you are using one or more of the below sub-packages, they also need to be upgraded as well:

| Sub-package                   | Description                                                                              |
| ----------------------------- | ---------------------------------------------------------------------------------------- |
| Umbraco.Engage.Core           | Core Engage functionality that doesn't require any infrastructure-specific dependencies. |
| Umbraco.Engage.Infrastructure | Infrastructure-specific project containing implementations of core Engage functionality. |
| Umbraco.Engage.Web            | The core Engage logic that requires a web context.                                       |
| Umbraco.Engage.Data           | The data connectivity layer for Engage.                                                  |
| Umbraco.Engage.Common         | The shared utility library for Engage.                                                   |
| Umbraco.Engage.StaticAssets   | The Static Assets library for Engage.                                                    |
| Umbraco.Engage.Forms          | A package that extends Umbraco Engage with Umbraco Forms.                                |
| Umbraco.Engage.Headless       | A package that adds headless functionality to Umbraco Engage.                            |
| Umbraco.Engage.Commerce       | A package that extends Umbraco Engage with Umbraco Commerce.                             |


---

# Agent Instructions: 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:

```
GET https://docs.umbraco.com/umbraco-engage/upgrading/upgrade-umbraco-engage.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
