As a system admin, one of the common tasks I handle is activating Windows across multiple machines in an organization. If you’re managing a business network, activating each machine individually with a retail key would be a nightmare. That’s where KMS (Key Management Service) comes to the rescue.
In this post, I’ll break down what KMS is, how it works, and how I use it to activate Windows operating systems (and even Office) in a secure and centralized way.
✅ What is KMS (Key Management Service)?
KMS is a volume activation method developed by Microsoft that allows organizations to activate systems within their own network—without each machine contacting Microsoft directly.
So instead of typing a unique key on every PC, I just set up one KMS host server, and every client system talks to this server to get activated.
🔧 How Does KMS Work?
Here’s a simple breakdown:
- I install a KMS host key (GVLK – Generic Volume License Key) on a server.
- I activate the KMS host with Microsoft once using the internet.
- Windows clients (called KMS clients) find the KMS host via DNS or manual config.
- Clients automatically activate if the KMS host has received requests from at least:
- 25 Windows clients, or
- 5 Office clients.
Once that threshold is met, activation happens automatically for all future clients.
🛠️ Steps I Follow to Set Up KMS Server
- Choose a Server (Windows Server 2016/2019/2022/2025)
Install the Volume Activation Services role
Install-WindowsFeature -Name VolumeActivation -IncludeManagementTools



2. Install KMS Host Key: slmgr.vbs /ipk <KMS_Host_Key>
3. Activate with Microsoft: slmgr.vbs /ato
4. Configure DNS if needed:
Clients usually auto-discover the KMS host via DNS (a special SRV record). But I can also manually point them using: slmgr.vbs /skms <KMS_Host_Name>:1688
5. Enable KMS Port 1688 in Firewall.
🧪 Activating Windows Clients Using KMS
On a client machine (e.g., Windows 10, 11, or Server editions), here’s how I activate Windows:
- Install Generic Volume License Key (GVLK):
These are public keys provided by Microsoft for KMS activation (see below).slmgr.vbs /ipk <GVLK_Key>
- Point to the KMS Server (if DNS fails):
slmgr.vbs /skms kms.mydomain.local
- Activate Windows:
slmgr.vbs /ato
🔑 Common GVLK (KMS) Keys
Here are some useful GVLK keys I often use:
OS Version | GVLK (KMS Client Key) |
---|---|
Windows 11 Pro | W269N-WFGWX-YVC9B-4J6C9-T83GX |
Windows 10 Pro | W269N-WFGWX-YVC9B-4J6C9-T83GX |
Windows Server 2025 Standard | TVRH6-WHNXV-R9WG3-9XRFY-MY832 |
Windows Server 2022 Std | WX4NM-KYWYW-QJJR4-XV3QB-6VM33 |
Windows Server 2019 Std | N69G4-B89J2-4G8F4-WWYCC-J464C |
Windows Server 2016 Std | WC2BQ-8NRM3-FDDYY-2BFGV-KHKQY |
📌 You can find the full list of GVLK keys on the official Microsoft documentation:
https://learn.microsoft.com/en-us/windows-server/get-started/kmsclientkeys
📆 KMS Activation Validity
Once activated, KMS clients are valid for 180 days. They renew every 7 days automatically as long as they can reach the KMS host.
🔍 Checking Activation Status
To check the status of Windows activation: slmgr.vbs /dlv
Or use: slmgr.vbs /xpr
This tells me if the machine is permanently activated or when it expires.
🧯 Troubleshooting Tips
- Clients not activating? Check DNS SRV record for
_vlmcs._tcp
. - Threshold not met? Need at least 25 unique client requests for Windows.
- Port 1688 blocked? Ensure firewall allows inbound connections.
🧩 Bonus: Activating Office via KMS
I also use KMS to activate Microsoft Office by installing a KMS Host License Pack for Office and following similar steps.
🏁 Final Thoughts
Using KMS, I’ve saved countless hours by avoiding manual key entries and centralized Windows activation across my infrastructure. It’s efficient, scalable, and trusted by enterprises everywhere.
Let me know if you want a post about setting up Active Directory-based activation (ADBA) next—another cool method for domain-joined systems!