Services
Custom software developmentUmbraco developmentWeb developmentCRM developmentERP developmentAI & LLM integration.NET development & modernizationE-commerce developmentIntegrations & automationCloud & DevOpsMaintenance, support & project rescueDedicated teams & white-label
Our Work
Case studiesProducts
About Blog Contact
Umbraco

Umbraco 17 explained: what's new in the LTS release, what changed since 13 and what comes next

Umbraco 17 is the LTS release on .NET 10, supported until November 27, 2028. Here is what it added, what it inherited from 14 to 16, what the 17.x minors brought, the breaking changes and where 18, 19 and 21 fit.

Key takeaways

  • Umbraco 17 was released on November 27, 2025 as an LTS version on .NET 10, with support until November 27, 2027 and security fixes until November 27, 2028.
  • The 17.0 headline features are a load-balanced back office, UTC system dates, new Date Time property editors and entity flags in the content tree.
  • Coming from 13 you also get everything from 14 to 16: the Web Components back office, HybridCache, Tiptap, block-level variants and property-level permissions.
  • The 17.x minors keep adding features: modular deployments, website output caching, external-only members, AI-friendly Management API endpoints and many back-office improvements.
  • Umbraco 18 (June 25, 2026) is a short-term release with the new Library and Elements; the next LTS is Umbraco 21, planned for December 9, 2027.

Umbraco 17 is the current long-term support (LTS) version of Umbraco CMS. It was released on November 27, 2025, runs on .NET 10, gets bug and security fixes until November 27, 2027 and security fixes only until November 27, 2028. As of October 2026 the latest stable release is 17.7.1, with 17.8 in release candidate.

What makes Umbraco 17 matter is less any single feature than the fact that it is the first LTS built on the new back office that started in Umbraco 14. Below we go through what 17.0 added, what it inherited from 14, 15 and 16, what the 17.x minor releases brought over the past year, the breaking changes developers hit, and what Umbraco 18 and the roadmap add on top. If you are deciding whether to move from 13, read our Umbraco 13 vs 17 comparison. If you are on Umbraco 8, see the Umbraco 8 to 17 migration guide.

Umbraco 17 at a glance

Umbraco 17
Release type LTS (long-term support)
Released November 27, 2025
Runtime .NET 10 (Microsoft LTS)
Support phase ends November 27, 2027
End of life November 27, 2028
Latest stable (October 2026) 17.7.1, released October 6, 2026
Minor release rhythm About every six weeks
Upgrade from Umbraco 13 directly (closest LTS), or any 14 to 16 version
Back office Web Components, Lit and TypeScript (since 14)
Rich text editor Tiptap

Umbraco ships a major version roughly every six months. LTS majors are aligned with .NET LTS releases, which is why 13 shipped on .NET 8 and 17 on .NET 10. Add-ons such as Forms, Deploy, Workflow, Engage, Commerce and UI Builder follow the same version numbers and support timeline.

What’s new in Umbraco 17.0

Umbraco called 17 the culmination of the two-year rebuild that began with the new back office in 14. The 17.0 release itself is focused on infrastructure and data correctness rather than a big editor-facing feature.

A back office that can be load balanced

Before 17, only the public website could run across several servers. In 17 the entire back office can run on multiple servers behind a load balancer. The release notes show the work behind it: isolated caches that are invalidated across servers, distributed background jobs so scheduled work runs once, and configurable temporary file locations so media uploads work when requests hit different servers. Later 17.x releases added performance fixes and configurable SignalR transport settings so deployments can run without sticky sessions.

On Umbraco Cloud this was not available at launch. Cloud load balancing arrived in July 2026 and requires Umbraco CMS 17.5.0 or later, a Professional or Enterprise plan on a dedicated server, Production runtime mode and Models Builder set to Nothing.

UTC system dates and new date pickers

All system dates (creation, update, publish and log dates) are now stored and exposed in UTC. A migration converts existing server-local dates when you upgrade, and it can be disabled through the SystemDateMigration:Enabled setting if you need to control the timing. Editors get new Date Time property editors with date, time and time zone selection, limited to the time zones you configure. The existing date/time editor was changed to an “unspecified” kind, which is a breaking change for code that reads those values.

Entity flags in the tree

Tree items can now show small overlay icons, for example to mark items with a special state. The feature was introduced as “signs” during the 17 betas and renamed to flags (FlagProviders) before release, so if you find older blog posts using the first name, it is the same thing.

Accessibility and documentation

Umbraco had editor workflows audited against WCAG by an external consultant and addressed most findings in 17 or scheduled them for 17.1, with remaining items documented in an Accessibility Conformance Report. The community docs team also revised more than 40 articles about the new back office.

Add-on changes that ship with 17

  • Umbraco Forms licensing. One-off licenses end with Forms 17. Licenses are now subscriptions with a key in appsettings.json instead of a .lic file, covering one production domain with its subdomains plus two development or test domains. On Umbraco Cloud, Forms is included.
  • Umbraco Workflow. Release Sets, which let editors group and schedule several items to publish together, are on by default in 17, with granular permissions for all Workflow features.
  • UI Builder. Interfaces built with it upgrade automatically from 17 onward.
  • Deploy and Engage. Deploy can now move Engage configuration (segments, personas, goals) between environments.
  • Umbraco Developer MCP. The Model Context Protocol server for developers reached its final release with full parity to the Management API, so AI coding assistants can work against a 17 site.

What Umbraco 17 inherits from 14, 15 and 16

If you come from Umbraco 13, most of the change you will notice comes from the three short-term releases in between. Here is the summary by audience.

Feature Since What it means for editors What it means for developers
New back office (Bellissima) 14 New UI built on the Umbraco UI Library, consistent menus Extensions are Web Components, usually Lit and TypeScript; AngularJS code does not run
Management API 14 None directly Back-office controllers replaced by a documented API; /umbraco/api routes removed
Block List and Block Grid only 14 Nested Content, Grid Layout and macros are gone Data must be converted to blocks; partial views replace macros
System.Text.Json 14 None Newtonsoft.Json removed; API output casing changes
HybridCache with lazy loading 15 Content is cached on demand instead of all at startup Published snapshot APIs removed; inject IPublishedContentCache instead
Block-level variants 15 Same block layout across languages, values vary per language Simpler multilingual block models
Client credentials for API users 15 None Supported server-to-server authentication
Tiptap rich text editor 15 default, 16 only Drag-and-drop toolbar, table designer, cleaner pastes from Word TinyMCE plugins must be rebuilt as Tiptap extensions
Property-level permissions 16 Fields can be hidden or read-only per user group, also inside blocks Not a security layer, per Umbraco
Document type inheritance, move properties between tabs 16 Content modelers get back familiar tools Fewer workarounds in the type editor

The Content Delivery API, Umbraco’s built-in headless JSON API, predates all of this: it arrived in Umbraco 12 in June 2023, so 13 sites may already use it. In 17 it is still opt-in. Enabling it looks like this:

// appsettings.json: enable the Content Delivery API
{
  "Umbraco": {
    "CMS": {
      "DeliveryApi": {
        "Enabled": true
      }
    }
  }
}

Make sure .AddDeliveryApi() is called on the Umbraco builder in Program.cs (the default project template includes it) and rebuild the DeliveryApiContentIndex afterwards. Content is then served from /umbraco/delivery/api/v2/content, with protected content excluded unless you enable member authentication.

Umbraco 17 release notes: highlights from 17.1 to 17.7

Because 17 is the LTS, Umbraco keeps adding non-breaking features to it in minor releases, and many of them also land in 18. Highlights from the GitHub release notes and Umbraco’s release posts:

  • 17.1 (January 2026): switching the preview environment inside the preview window, a show/hide password toggle on login, a Clear Clipboard action, folders (containers) for member types and a better log viewer search.
  • 17.2 (February 2026): descriptions on user groups, visual indicators in the tree for items with restricted access, a toggle for the diff display in rollback, configurable dictionary value search and Tiptap upgraded to v3.
  • 17.3 (April 2026): modular deployments, so the back office, website and Delivery API can be enabled or disabled independently.
  • 17.4 (May 2026): opt-in website output caching with automatic invalidation on publish; lightweight external-only members for sites that sign members in through Entra ID, Auth0 or Google; JSON Schema endpoints and a document patch endpoint in the Management API so AI tools can edit content more safely; and a standalone login page for front-end-only deployments.
  • 17.5 (June 2026): released together with 18.0, and the minimum version for Umbraco Cloud load balancing.
  • 17.6 (August 2026): configurable scheduled publishing intervals, Media URL providers with cache busting, Management API endpoints to sort children by a system field and fewer back-office startup requests.
  • 17.7 (September 2026): a shared progress dialog for bulk publish, move, copy and delete, card and table views in the document tree, collections that remember their view and filters, and pickers with separate browse and search tabs.

Along the way, unattended upgrade migrations started running as a background task with liveness and readiness health probes, recurring background jobs can be triggered on demand, and a SQL Server health check now detects untrusted constraints. For teams running Umbraco in containers, those operational changes are as useful as the editor features.

Breaking changes in Umbraco 17 worth knowing

The version-specific upgrade notes for 17 are short compared to 14, but a few items bite:

  • UTC migration. Stored system dates are converted on upgrade. Check any custom code or reports that assumed server local time.
  • Development mode moved to a package. InMemoryAuto Models Builder mode and Razor runtime compilation now require the Umbraco.Cms.DevelopmentMode.Backoffice package. Source-code Models Builder modes do not need it.
  • HTTPS by default. UseHttps now defaults to true, which can surprise local or proxy setups that terminate TLS elsewhere.
  • Management API calls need credentials. Custom back-office extensions that call the Management API with fetch must send cookies.
  • Tiptap import path. @umbraco-cms/backoffice/external/tiptap became @umbraco-cms/backoffice/tiptap.
  • Dependency updates. NPoco 6.1 and Swashbuckle 10 came in with 17, plus the move to .NET 10 itself.

The fetch change in a custom extension looks like this (illustrative):

// Illustrative: a back-office extension calling the Management API in Umbraco 17
const response = await fetch('/umbraco/management/api/v1/your-endpoint', {
  credentials: 'include', // required in 17 for authenticated Management API calls
});

In practice, most of the breaking change budget in a move to 17 comes from 14, not 17: rewriting AngularJS extensions, replacing Nested Content and Grid, and dealing with removed APIs. The Umbraco 8 to 17 guide covers that work in detail.

Package ecosystem readiness

By late 2026 the question is no longer whether packages support the new back office, but whether a specific package you depend on was ever rewritten for it. Check each package’s NuGet dependency ranges, not just its listing, and note the minimum 17.x minor it declares, because some extension points arrived in 17.x minors.

Our own recent packages show the pattern. umContentGenerator, which builds new pages from a Block Grid or Block List template page with AI text and images, supports Umbraco 17.3 up to 18.x on .NET 10. umContentTranslator translates content trees and dictionary items while keeping block structure intact, and supports Umbraco 17 and 18. umContactManager adds a Contacts section with a form block for Block List and Block Grid, and also targets 17 and 18. None of them has a 13 version, because they are built on the new back office extension model. One practical detail all three share: in the new back office a newly installed section stays hidden until you add it to a user group under Settings, Users, User groups, which is the most common “I installed it but cannot see it” support question.

Umbraco 17 in a real project

On the Jongeneel platform, an internal system for inspections, toolboxes and transport planning, we moved the solution from Umbraco 8 and .NET Framework to Umbraco 17 on .NET 10. The deprecated NuPicker plugin was replaced with Contentment, custom back-office plugins were kept working, Hangfire jobs and scheduled tasks were kept and extended, and xUnit and Moq tests guarded the business logic during the move. The platform now runs with Serilog and Sentry monitoring and Docker-based CI/CD, on a stack supported into 2028. The lesson matched what the release notes suggest: Umbraco 17 itself was not the hard part; the jump across the back-office rewrite and the runtime change was.

What Umbraco 18 added since

Umbraco 18 was released on June 25, 2026 as a short-term support (STS) release. Its support phase ends March 25, 2027 and it reaches end of life on June 25, 2027. The latest stable version in October 2026 is 18.2.1.

  • Library section and Elements. A new back-office section for reusable content that lives outside the document tree and has no URL. Element Types get an “allow in Library” option, and Elements support publishing, scheduling, rollback, permissions, reference tracking and an Element Picker. Umbraco calls this phase one.
  • Typed OpenAPI schemas for the Delivery API. Opt-in, generated per Document, Element and Media Type, useful for typed front-end clients.
  • Swashbuckle replaced by Microsoft.AspNetCore.OpenApi. The OpenAPI endpoint moves from /umbraco/swagger/{documentName}/swagger.json to /umbraco/openapi/{documentName}.json.
  • Breaking changes: UmbracoApiController removed in favor of [ApiController], ILocalizationService and IFileService split into smaller services, more async-only methods, IPublishedContent.Parent and .Children moved to extension methods, and media recycle bin protection on by default.

Umbraco 18 can only be upgraded to from 16.4 or later, and it drops the 13 to 17 migrations, so a 13 site has to land on 17 first. For most production sites, 17 remains the better target: you get most of the 17.x improvements without committing to another major upgrade within a year.

What comes next: Umbraco 19, 20 and 21

Version Type Release End of life
Umbraco 18 STS June 25, 2026 June 25, 2027
Umbraco 19 STS December 10, 2026 (planned) December 10, 2027
Umbraco 20 STS June 24, 2027 (planned) June 24, 2028
Umbraco 21 LTS December 9, 2027 (planned) December 9, 2030

Umbraco has said the next Elements phase, using Elements inside block editors for fully reusable blocks, is planned for Umbraco 19. Later Library plans mention tag management, document blueprints and translations. The Q2 2026 keynote also announced new search for the CMS, scheduled upgrades on Umbraco Cloud and Umbraco Automate, an open-source workflow automation add-on. Treat roadmap items as plans until they appear in release notes.

For teams that want as few major upgrades as possible, the rhythm is 13, then 17, then 21. Umbraco 17 overlaps with 21 by almost a year, which leaves time to plan that move in 2028.

Is Umbraco 17 the right version for you?

  • New project: start on 17, unless you specifically need Elements and accept the STS upgrade cadence.
  • Umbraco 13 site: plan the move to 17 before 13 reaches end of life on December 14, 2026. See the 13 vs 17 comparison for the decision factors.
  • Umbraco 14, 15 or 16 site: these are already out of support, and moving to 17 is usually much smaller because the back office is the same.
  • Umbraco 8 or older: this is a migration project, covered in the 8 to 17 guide.

If you want help estimating the work, our Umbraco upgrade team runs moves to 17 from 8, 10 and 13, and our Umbraco development team builds new sites and back-office extensions on 17.

OSKI Engineering TeamSenior .NET, Umbraco and AI engineers

Written by the engineers who build and support OSKI client projects, reviewed by our CTO before publishing.

FAQ

Questions readers ask

Anything missing? Send us your question and an engineer will answer, usually within one business day.

Contact us
When was Umbraco 17 released?+

Umbraco 17.0.0 was released on November 27, 2025. It is a long-term support (LTS) release and has received a minor release roughly every six weeks since, with 17.7.1 published on October 6, 2026 and 17.8 in release candidate.

How long is Umbraco 17 supported?+

Umbraco 17 is in its support phase until November 27, 2027, during which it gets bug and security fixes. It then enters a security-only phase and reaches end of life on November 27, 2028. Its runtime, .NET 10, is supported by Microsoft until November 2028.

What is new in Umbraco 17?+

The 17.0 release added a back office that can run on multiple load-balanced servers, UTC storage for system dates, new Date Time property editors with time zone support and entity flags in the tree. Later 17.x minors added modular deployments, website output caching, lightweight external-only members and Management API endpoints aimed at AI tools.

Should I use Umbraco 17 or Umbraco 18?+

For most production sites, use Umbraco 17. It is supported until late 2028, while Umbraco 18 is a short-term release that reaches end of life on June 25, 2027. Choose 18 only if you need its Library and Elements feature now and are ready to upgrade again within a year.

Can I upgrade from Umbraco 13 directly to 17?+

Yes. Umbraco's documentation says to upgrade to the closest LTS, and for 13 that is 17. You skip installing 14, 15 and 16, but their breaking changes still apply to your code, especially the move from AngularJS to the Web Components back office.

Where can I find the Umbraco 17 release notes?+

Umbraco publishes release notes for every version on GitHub in the umbraco/Umbraco-CMS repository and on releases.umbraco.com. Breaking changes for each major version are summarized in the version-specific upgrade pages on docs.umbraco.com.

Start a project

Tell us what you need to ship. We come back with a plan and a price.

A spec, a Figma file or three paragraphs is enough to start.

  1. First reply · from an engineer, not a sales rep
  2. 30-min call · with Roman, our CTO, to clarify scope
  3. After the call · a written proposal with plan, team and price
Roman Oleksuk
Roman Oleksuk, CTOPrefer to talk? Pick a slot in Roman's calendar
We reply from a human mailbox. No newsletters. Your brief stays under NDA on request. We use your details only to reply; see our privacy policy.