End-of-support badges
A badge for any product we track, showing whether it is still supported and until when. Put it in a README, a wiki page, an internal status board or a handover document. It is rebuilt whenever the dates change, so it never goes stale.
Pick a product
Choose the product, then copy the badge in whichever form you need. The badge is free to use with or without a link; if you link it, link to the page for that product, which explains the dates and the options.
Every badge
Status as of 3 October 2026. The address of each badge is /badge/<id>.svg; the id is the one in the feed below.
SQL Server
-
SQL Server 2008 and 2008 R2
sql-2008 -
SQL Server 2012
sql-2012 -
SQL Server 2014
sql-2014 -
SQL Server 2016
sql-2016 -
SQL Server 2017
sql-2017 -
SQL Server 2019
sql-2019 -
SQL Server 2022
sql-2022 -
SQL Server 2025
sql-2025
.NET and .NET Framework
-
.NET Framework 3.5 SP1
netfx-35 -
.NET Framework 4.0, 4.5 and 4.5.1
netfx-40 -
.NET Framework 4.5.2, 4.6 and 4.6.1
netfx-461 -
.NET Framework 4.6.2
netfx-462 -
.NET Framework 4.7 to 4.8.1
netfx-48 -
.NET Core 2.1
netcore-21 -
.NET Core 3.1
netcore-31 -
.NET 5
net-5 -
.NET 6
net-6 -
.NET 7
net-7 -
.NET 8
net-8 -
.NET 9
net-9 -
.NET 10
net-10
Windows Server
-
Windows Server 2003
ws-2003 -
Windows Server 2008 and 2008 R2
ws-2008 -
Windows Server 2012 and 2012 R2
ws-2012 -
Windows Server 2016
ws-2016 -
Windows Server 2019
ws-2019 -
Windows Server 2022
ws-2022 -
Windows Server 2025
ws-2025
Microsoft Access and Office
-
Office and Access 2010
access-2010 -
Office and Access 2013
access-2013 -
Office and Access 2016
access-2016 -
Office and Access 2019
access-2019 -
Office and Access 2021
access-2021 -
Office and Access 2024
access-2024
PHP
Older web and desktop technologies
-
Visual Basic 6 (development environment)
vb6 -
Visual FoxPro 9
vfp-9 -
Silverlight 5
silverlight -
AngularJS 1.x
angularjs -
Internet Explorer 11 (desktop)
ie-11 -
Xamarin
xamarin -
Python 2.7
python-27 -
ASP.NET Web Forms
webforms -
Classic ASP
classic-asp
Web servers, frameworks and content management systems
-
Apache HTTP Server 2.2
apache-22 -
Apache HTTP Server 2.4
apache-24 -
Bootstrap 3
bootstrap-3 -
Bootstrap 4
bootstrap-4 -
Bootstrap 5
bootstrap-5 -
Vue 2
vue-2 -
Vue 3
vue-3 -
Drupal 7
drupal-7 -
Drupal 8
drupal-8 -
Drupal 9
drupal-9 -
Drupal 10 and 11
drupal-10 -
Joomla 3
joomla-3 -
Joomla 4
joomla-4 -
Joomla 5
joomla-5 -
Umbraco 7
umbraco-7 -
Umbraco 8
umbraco-8 -
Umbraco 13 (LTS)
umbraco-13
The data behind the badges
Everything the badges show is in one JSON file, free to read from a script or a dashboard.
https://www.codefirst.co.uk/end-of-life/feed.json lists every product with its release date, the end of mainstream support, the end of security fixes, the last date of any paid extension, its status on the day the file was generated, and the page and badge for it. One entry looks like this:
{
"id": "ws-2016",
"family": "windows-server",
"name": "Windows Server 2016",
"released": "2016-10-15",
"mainstreamEnd": "2022-01-11",
"end": "2027-01-12",
"paidEnd": "2030-01-12",
"status": "ending",
"note": null,
"page": "https://www.codefirst.co.uk/end-of-life/windows-server-2016/",
"badge": "https://www.codefirst.co.uk/badge/ws-2016.svg"
} The dates are taken from each vendor's lifecycle pages. Every time the site is published they are compared with endoflife.date, and the site will not publish while a date disagrees. The same dates feed the end-of-support pages, the calendar file, the free server check script and the website check.
Use the feed freely. If you publish something built on it, a link to the product page you quote lets readers see the dates in context, but it is not a condition.
How a badge keeps up to date
- It is a live image
- Your page embeds the badge from this site, so whatever it shows is current. Nothing needs changing on your side when a date passes.
- Status is worked out on publish
- Supported, ending within a year or ended is calculated on the day the site is built. The site is rebuilt at least weekly, and a badge is cached for one day.
- Dates only change on evidence
- A date changes only when the vendor changes it. We note the source of every date on the product pages.
- Nothing is tracked
- The badge is a plain SVG file. Loading it sets no cookie and sends us nothing about the page it is on or who is looking at it.
Showing a red badge somewhere that matters?
Tell us which version, what depends on it and how it is hosted. We will set out the upgrade route and what it is likely to involve.