RDS License Server with 2022 and 2025 Per User CALs Query

Sekela Margaret 40 Reputation points
2026-05-29T08:32:06.61+00:00

I upgraded an RDS License Server from Windows Server 2022 to Windows Server 2025 and installed Windows Server 2025 Per User CALs.

The license server now contains two installed key packs:

  • Windows Server 2022 RDS Per User CALs
  • Windows Server 2025 RDS Per User CALs

I know newer CALs can be used against older session hosts, but older CALs cannot be used for newer hosts

Some of the 2022 CALS were being used - about 175 or so when I imported the 2025 license pack.

In a DEV environment I rebuilt the RDS licensing database so that only the 2025 CAL pack remained, but I am unsure whether this is advisable or supported in PROD.

Questions:

  1. Is it supported/recommended to leave both 2022 and 2025 CAL packs installed on the same Windows Server 2025 License Server?
  2. If Both Packs remain installed
  • Wow does the licensing allocation work?
  • Will the older 2022 CAL pack eventually expire or become inactive automatically?
  1. Is there any impact or risk in removing older CAL packs that are already in use?
  2. If older CAL packs should be removed, what is the Microsoft-supported method to do this? (Microsoft Clearinghouse? Manage CALs Wizard (I didn't see this option)? vs rebuilding the licensing database?)

Thanks.

Windows for business | Windows Server | Devices and deployment | Set up, install, or upgrade

Answer accepted by question author
VPHAN 44,940 Reputation points Independent Advisor
2026-05-29T09:11:13.1166667+00:00

Hi Sekela Margaret,

Keeping both Windows Server 2022 and 2025 RDS Per User CAL packs on your Windows Server 2025 License Server is a fully supported and standard configuration during infrastructure migrations. Allocation is handled dynamically by the license server based on the operating system of the Session Host requesting the license. A Windows Server 2022 host will consume your older 2022 CALs first and automatically utilize your newer 2025 CALs once the older pool depletes, as newer licenses are natively backward compatible. Conversely, a Windows Server 2025 host strictly requires the 2025 CALs and will ignore the older pack.

The retail or volume CAL packs themselves are perpetual and do not automatically expire. Furthermore, because you are using Per User CALs rather than Per Device CALs, the server merely tracks allocation for reporting purposes without enforcing strict expiration leases or hard-blocking connections. Due to this tracking behavior, removing the 2022 CAL pack poses absolutely no risk of dropping your active user sessions. The license server will simply clear the legacy tracking data, and the next time those users initiate an RDP connection, they will be seamlessly allocated a new 2025 CAL from your updated pool.

If you decide to remove the older pack in production, you must avoid rebuilding the database by renaming or deleting the C:\Windows\System32\lserver\TLSLic.edb file. This file serves as the core repository for all your RDS licensing data, and deleting it acts as a total wipe that will destroy your newly installed 2025 CALs and force a manual reactivation of the server. Instead, the Microsoft-supported administrative method is to remove the specific pack surgically using Windows Management Instrumentation. You can open an elevated PowerShell prompt and run the Get-WmiObject command against the Win32_TSLicenseKeyPack class to view all installed packs and locate the specific KeyPackId for your 2022 licenses. Once identified, you use the wmic utility to invoke the UninstallLicenseKeyPackWithId method against that exact ID, safely stripping out the old keys while leaving your 2025 CALs and server activation untouched.

Hope this answer has brought you some useful information. If it did, please hit “accept answer”. Should you have any questions, feel free to leave a comment.

VPHAN

Was this answer helpful?

1 person found this answer helpful.

0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.