Umbraco is a popular open-source content management system (CMS) that powers thousands of websites around the world. This guide will explain the steps necessary for upgrading Umbraco from v8 to v11, enabling you to take advantage of its functionality, enhancements, and performance. Bear in mind that upgrading from Umbraco v8 to v11 includes a major paradigm shift in the Umbraco stack, including many breaking changes.

As technology evolves, it’s crucial to stay up to date with the latest versions to ensure security, performance, and access to new features. In addition older versions of Umbraco are only officially supported for a limited time. With all the talk about Umbraco v7 “end of life” occurring in September 2023, it is easy to forget that v8 will be following suit shortly thereafter.

Preparation

Before initiating the upgrade process, it’s essential to make necessary preparations to ensure a smooth transition. Start by taking a full backup of your Umbraco instance, including the files and database. This backup will serve as a safety net in case anything goes wrong during the upgrade process. Additionally, review your custom code, templates, and packages to identify any incompatibilities with Umbraco 11, making the necessary adjustments or updates beforehand.

Upgrade steps

  1. Upgrade to intermediate versions: Since v11 is a significant upgrade from v8, it’s necessary to upgrade in steps, moving through the intermediate versions. There is no direct upgrade path from v8 to v11. Begin by upgrading to the latest 8.x release (currently v8.18.8), ensuring that your website is running smoothly without any issues. This step allows you to address any compatibility problems within the v8 ecosystem before moving forward.
  2. Upgrade from v8 to v10: (It is not necessary or even recommended to upgrade from v8 to v9 first.)  With the latest v8 successfully installed, it’s time to begin the upgrade to Umbraco v10. This “upgrade” is actually a migration from v8 to v10, and not strictly an upgrade. The Umbraco upgrader code will update the Umbraco database for you, but it is necessary to refactor your custom code and packages to align with the changes introduced in Umbraco 10. Umbraco v10 runs on .NET Core 6.0.5, instead of the .NET Framework. There are major differences between these two versions of .NET, so the code migration may be a significant undertaking, depending on how much customization was done during the site’s implementation.
  3. Test and Validate: Ensure that all customizations, templates, and packages are compatible and functioning correctly. Perform thorough testing of your website’s functionality, including content editing, data retrieval, and any integrations or extensions you rely on.
  4. Final upgrade to v11: Finally, after successfully upgrading to v10, it’s time to perform the last upgrade to Umbraco v11. There are fewer breaking changes between v10 and v11, so this upgrade should be much simpler. Ensure that all third-party packages, custom code, and templates are compatible with Umbraco v11. Perform comprehensive testing to validate that your website retains full functionality, including any integrations or custom features.

Post-upgrade tasks

After completing the upgrade process, there are a few essential post-upgrade tasks to consider. First, review and reapply any customizations or modifications made to the Umbraco backoffice to ensure they remain intact. Second, retest your website’s performance and functionality under realistic conditions to ensure a seamless, responsive user experience. Lastly, keep an eye out for any post-upgrade issues and address them promptly to maintain the stability and security of your Umbraco installation.

Conclusion

Upgrading Umbraco from v8 to v11 is a significant step towards enhancing your website’s security, performance, and access to new features. By carefully preparing, following this upgrade guide, and conducting thorough testing, you can smoothly transition your Umbraco installation to the latest version.