# Guide: Updating to CryoSPARC v4

### Upgrading from v3 to v4[​](https://beta.cryosparc.com/docs/installing-upgrading#upgrading-from-v3-to-v4) <a href="#upgrading-from-v3-to-v4" id="upgrading-from-v3-to-v4"></a>

All CryoSPARC projects, jobs and Live Sessions created in CryoSPARC v3 are forwards compatible with v4. You can upgrade an existing CryoSPARC v3 instance to CryoSPARC v4 using the same process outlined here [Software Updates and Patches](/setup-configuration-and-management/software-updates.md#installing-automatic-updates)

{% hint style="danger" %}
Because CryoSPARC v4.0+ relies on a newer version of MongoDB, after upgrading it will not be possible to downgrade to a CryoSPARC version below v3.4.0.
{% endhint %}

1. ⚠️ [Make a backup of your database](https://guide.cryosparc.com/setup-configuration-and-management/management-and-monitoring/cryosparcm#cryosparcm-backup)
2. `cryosparcm update`

{% hint style="info" %}
This command will update to the latest version of CryoSPARC.

To update to a specific version, add e.g.,`--version=v4.0.0`
{% endhint %}

### Downgrading from v4[​](https://beta.cryosparc.com/docs/installing-upgrading#downgrading) <a href="#downgrading" id="downgrading"></a>

CryoSPARC v4.0+ relies on a newer version of MongoDB, v3.6, than CryoSPARC v3.3, which relies on MongoDB 3.4. Therefore, after upgrading to CryoSPARC v4.0, it will no longer be possible to downgrade to a version of CryoSPARC that relies on a version of MongoDB older than v3.6.

CryoSPARC v3.4.0 was created to allow downgrades from a v4 version of CryoSPARC to a v3 version, where necessary. CryoSPARC v3.4.0 is a carbon copy of CryoSPARC v3.3.2+220824, the most recent pre-v4.0 release of CryoSPARC, and includes support for MongoDB v3.6. It is possible to update to CryoSPARC v4.0 from v3.4.

1. ⚠️ [Make a backup of your database](https://guide.cryosparc.com/setup-configuration-and-management/management-and-monitoring/cryosparcm#cryosparcm-backup)
2. [Follow downgrade instructions from the guide](https://guide.cryosparc.com/setup-configuration-and-management/software-updates#update-or-roll-back-downgrade-to-a-specific-version) and specify: `--version=v3.4.0`

### Application & Port Changes[​](https://beta.cryosparc.com/docs/installing-upgrading#port-changes) <a href="#port-changes" id="port-changes"></a>

The new web application replaces the legacy web application at the main (base) port of your CryoSPARC instance. In v4+, the legacy web application is not started by default during `cryosparcm start`, but can be turned on by running `cryosparcm start app_legacy`.

You can still access the legacy web application via these ports:

| Application        | Port Number                  |
| ------------------ | ---------------------------- |
| New application    | `BASE_PORT` (e.g 39000)      |
| Legacy application | `BASE_PORT + 7` (e.g. 39007) |

[<br>](https://beta.cryosparc.com/docs/intro)


---

# 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://guide.cryosparc.com/setup-configuration-and-management/software-system-guides/guide-updating-to-cryosparc-v4.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.
