Creuto is now an OpenAI Select Partner Read More

Custom Software Development

Angular 20 end of life: 28 November, and why 22 beats 21

Angular 20 end of life is 28 November 2026. Angular 21 support ends June 2027, Angular 22 runs to June 2028. Which to target and what breaks.

Angular 20 end of life: 28 November, and why 22 beats 21

Angular 20 end of life is 28 November 2026. After that date the Angular team publishes no more patches for version 20, security fixes included. The less obvious part: Angular 21, the natural next stop, loses support in June 2027, while Angular 22 is supported until June 2028. If you run an Angular 20 portal or admin app, this post sets out which target buys the most supported time per upgrade, what breaks on the way, and where paid extended support fits.

The dates below come from the angular.dev release schedule, as of 2 November 2026.

VersionReleasedActive supportLTS ends
Angular 2028 May 2025Ended 19 November 202528 November 2026
Angular 2119 November 2025Ended 3 June 2026June 2027
Angular 223 June 2026Until June 2027June 2028

What Angular 20 end of life actually stops

Angular 20 has been in long-term support since its active window closed on 19 November 2025. During LTS, angular.dev says "only critical fixes and security patches are released", and that stream is what ends on 28 November. The most recent release was 20.3.34 on 14 October 2026, according to endoflife.date.

Nothing switches off on the 29th. Your app keeps building and serving. What changes is the next vulnerability disclosed in an @angular/* package: there will be no upstream fix for version 20. And if a security review or a customer questionnaire asks whether every framework you ship is supported, the honest answer becomes no.

Angular moved to a yearly major, and that changes the maths

Until Angular 22, the framework shipped a new major every six months. From version 22, angular.dev lists "a major release every 12 months", and states that "all major releases are typically supported for 24 months": 12 months of active support, then 12 months of LTS.

That makes Angular 21 the last release of the old cadence. It arrived in November 2025 and its LTS ends in June 2027. Angular 22 arrived in June 2026 and is covered until June 2028. Angular 23 is expected around June 2027, so even a team that lands on 22 now has a full year before the next major appears.

Not every tracker has caught up. The policy text on endoflife.date, last updated 30 October 2026, still says Angular majors are "typically supported for 18 months" on a roughly six-month cycle, even though its own table already shows version 22 supported to 30 June 2028. A HeroDevs version history dated March 2026 also describes 18 months of support and expected version 22 around May 2026. Treat angular.dev as the primary source. If your compliance tooling reads the policy prose rather than the dates, it will undercount how long version 22 lasts.

Should you upgrade Angular 20 to 21 or 22?

For most teams, Angular 22 is the better target. Upgrading to 21 buys about seven months of patches, from 28 November 2026 to June 2027, and then you face the version 22 upgrade anyway. Going to 22 covers you until June 2028 for the same migration work.

That last point matters because you cannot jump straight from 20 to 22. The Angular docs say ng update works when "the version you want to update from is within one major version of the version you want to upgrade to", and that "if you want to update across multiple major versions, perform each update one major version at a time." So the version 21 migrations run either way. What you skip by targeting 22 is releasing, regression testing and signing off 21 as a production version: two ng update runs on one branch, one QA cycle, one deployment.

The strongest case for stopping at Angular 21

Angular 22 raises the platform floor. Per the Angular version compatibility table, 22.0 needs Node.js ^22.22.3 || ^24.15.0 || ^26.0.0 and TypeScript 6.0. Angular 21 still accepts Node.js 20.19 and runs on TypeScript 5.9. If your CI agents, Docker images or server-side rendering host still run Node 20, version 22 drags a runtime change into the same project. We covered which Node line to target separately.

If that runtime work cannot land in four weeks, Angular 21 is a legitimate holding position. It is in LTS today, it gets you past 28 November with the smaller change set, and it leaves Node for later. This is the wrong choice only if you treat 21 as the destination: put the version 22 upgrade on the plan for well before June 2027.

What changes between Angular 20 and Angular 22

Deprecated APIs are removed only in major releases, so each step is where your old code meets its deadline. These are the breaking changes most likely to touch a typical portal, taken from the Angular changelog for 21.0.0 and 22.0.0.

StepChangeWhat to check
20 to 21Angular no longer provides a zone-based change detection scheduler by default; provideZoneChangeDetection must be added, and an automated migration covers itBootstrap providers in the migration diff
20 to 21TypeScript below 5.9 no longer supported; moduleId and the interpolation component option removedToolchain versions, older components
21 to 22Components without a changeDetection setting are now OnPush by default; a migration adds ChangeDetectionStrategy.Eager where applicableViews that relied on default checking
21 to 22Router paramsInheritanceStrategy now defaults to 'always' instead of 'emptyOnly'Child routes that read parameters
21 to 22TypeScript below 6.0 unsupported; ComponentFactoryResolver and the Hammer.js integration removedDynamic component code, gesture handling

The OnPush default is the one to test hardest. A component that mutates an object in place and relies on the old default checking can stop re-rendering. The migration is meant to pin such components to Eager, but read its diff rather than trusting it, and exercise the screens it did not touch.

The router change is quieter. Child routes now inherit parameters from every parent by default, so a child that reads route params may see values it never saw before. Setting paramsInheritanceStrategy: 'emptyOnly' restores the old behaviour while you test.

Is there paid support for Angular 20 after end of life?

Yes, though the details need confirming. endoflife.date marks Angular 20 with commercial support and says it is available "for all deprecated versions of Angular" through HeroDevs' Never-Ending Support. On its Angular NES page, HeroDevs describes the product as patched replacement packages: you point package.json at @neverendingsupport/angular-* and rebuild.

HeroDevs' own pages disagree on coverage. The NES page headline says "Angular versions v4 - v19", while its version table on the same page marks version 20 as supported. The March 2026 history article says NES covers "Angular versions 4 through 18". The NES page also gives Angular 21's LTS end as 19 May 2027, where angular.dev says June 2027. Get version 20 coverage, pricing and response times in writing before you budget around it.

Paid support fits an app that is close to retirement or due for a rebuild, where two framework migrations would be wasted effort. It is the wrong choice for an app you will run on Angular for years: you pay to postpone the same two migrations, and they grow while you wait.

A plan for the four weeks before 28 November

  1. Inventory the platform: the Node.js version on CI, in Docker images and on any SSR host; your TypeScript version; and whether each third-party Angular library has a release that supports version 22.
  2. On a branch, run ng update to version 21 and commit the result on its own, so the diff is reviewable.
  3. Run ng update to version 22, then review the Eager migration and every route that reads parameters.
  4. If the Node.js or TypeScript move is blocked, release on 21 before 28 November and schedule version 22 before June 2027.

Some teams will reach step one and find the real question is not 21 or 22, but whether the portal should stay on Angular at all. That is a decision we help with. We do not build in Angular; we build browser-based platforms in React, Next.js and TypeScript, including the custom ERP that unified HR, CRM, inventory and finance for an industrial client. If your upgrade estimate is starting to look like a rebuild, our web app development team can scope the rebuild against the cost of staying, so you make the call on numbers rather than a deadline.

Frequently asked questions

Angular 20 reaches end of life on 28 November 2026, when its long-term support window closes, according to the release schedule on angular.dev. After that date the Angular team publishes no further patches for version 20, including security fixes, so any newly disclosed vulnerability in the framework stays unpatched upstream.

Most Angular 20 apps should target Angular 22, which is supported until June 2028, rather than stopping at Angular 21, whose support ends in June 2027. Stop at Angular 21 only if you cannot move your build and server runtime to a supported Node.js 22 or later line and TypeScript 6.0 before 28 November.

Angular's documentation says ng update works only when the target is within one major version of your current version, and that updates across several majors should run one major at a time. Moving from Angular 20 to 22 means running the version 21 update first, but you do not need to release version 21.

Angular 22, released on 3 June 2026, is in active support until June 2027 and long-term support until June 2028. It is the first release on Angular's 12-month major cadence, and angular.dev says majors are now typically supported for 24 months: 12 months active, then 12 months of critical and security fixes.

HeroDevs sells Never-Ending Support for Angular, a set of patched drop-in packages, and endoflife.date lists commercial support for Angular 20. HeroDevs' own pages disagree on which versions are covered, with ranges ending at 18 or 19, so confirm Angular 20 coverage, pricing and response times with the vendor in writing.

Written by

Akash Mohapatra

Akash Mohapatra

Co Founder & Director

2 Nov 2026

·

7 min read

Share

LET'S CONNECT

Connect with Creuto!

Ready to take the first step towards unlocking opportunities, realizing goals, and embracing innovation? We're here and eager to connect.