|
| 1 | +--- |
| 2 | +title: Lower AD DS Domain and Forest Functional Levels in Windows Server |
| 3 | +description: Learn how to lower the domain or forest functional level in Active Directory Domain Services (AD DS) on Windows Server with PowerShell. |
| 4 | +ms.topic: how-to |
| 5 | +ms.author: roharwoo |
| 6 | +author: robinharwood |
| 7 | +ms.date: 07/03/2026 |
| 8 | +ai-usage: ai-assisted |
| 9 | + |
| 10 | +#customer intent: As an AD DS administrator, I want to lower the domain or forest functional level so that I can roll back to a supported earlier level. |
| 11 | +--- |
| 12 | +# Lower domain and forest functional levels in Active Directory Domain Services |
| 13 | + |
| 14 | +Functional levels determine the capabilities available in an Active Directory Domain Services (AD DS) domain or forest, and which Windows Server operating systems you can run on domain controllers. You raise a functional level to enable newer capabilities. Raising a level is no longer permanent, so you can lower a domain or forest back to a supported earlier level. You might need to lower the level if you raise it before your environment is ready, or if you need to add domain controllers that run an earlier version of Windows Server. |
| 15 | + |
| 16 | +This article shows how to lower domain and forest functional levels by using PowerShell. After you complete the steps, the domain or forest operates at the level you specify, provided it meets the prerequisites described in this article. |
| 17 | + |
| 18 | +## Prerequisites |
| 19 | + |
| 20 | +Before you lower a functional level, make sure your environment meets the prerequisites in this section. |
| 21 | + |
| 22 | +### Permissions and tools |
| 23 | + |
| 24 | +- To lower the domain functional level, you're a member of the Domain Admins group or have equivalent permissions. To lower the forest functional level, you're a member of the Enterprise Admins group or have equivalent permissions. |
| 25 | + |
| 26 | +- You have a computer with the AD DS Remote Server Administration Tools (RSAT) installed, including the Active Directory module for Windows PowerShell. |
| 27 | + |
| 28 | +### Supported rollback levels |
| 29 | + |
| 30 | +- If your forest or domain contains Windows Server 2022 or earlier domain controllers, the lowest level you can roll back to is Windows Server 2008. |
| 31 | + |
| 32 | +- If your forest or domain contains Windows Server 2025 domain controllers, the lowest level you can roll back to is Windows Server 2016. |
| 33 | + |
| 34 | +### Forest functional level prerequisites |
| 35 | + |
| 36 | +- Your forest doesn't use any forest-level features exclusive to the current functional level. After you enable a feature tied to a specific forest functional level, you can't roll back to a lower level. |
| 37 | + |
| 38 | +- You have access to the domain controller that holds the Schema Operations Master flexible single master operations (FSMO) role. |
| 39 | + |
| 40 | +### Domain functional level prerequisites |
| 41 | + |
| 42 | +- Your domain doesn't use any features exclusive to the current domain functional level. For details about the features each level supports, see [Active Directory Domain Services functional levels](../active-directory-functional-levels.md). |
| 43 | + |
| 44 | +- The target domain functional level isn't lower than the current forest functional level. |
| 45 | + |
| 46 | +- You have network connectivity to the domain controller that holds the Primary Domain Controller (PDC) emulator FSMO role. |
| 47 | + |
| 48 | +## Lower the forest functional level |
| 49 | + |
| 50 | +To lower the forest functional level by using PowerShell: |
| 51 | + |
| 52 | +1. Sign in to a computer with RSAT installed. |
| 53 | + |
| 54 | +1. Open PowerShell as an administrator. |
| 55 | + |
| 56 | +1. Run the following command to lower the forest functional level. Replace *`<forest>`* with the forest name and *`<level>`* with the forest functional level you want. For example, use `Windows2016Forest` to roll back to the Windows Server 2016 level. |
| 57 | + |
| 58 | + ```powershell |
| 59 | + Set-ADForestMode -Identity <forest> -ForestMode <level> |
| 60 | + ``` |
| 61 | + |
| 62 | +1. When PowerShell prompts you to confirm, enter **Y**. |
| 63 | + |
| 64 | +1. Run the following command to verify the change. |
| 65 | + |
| 66 | + ```powershell |
| 67 | + Get-ADForest | Select-Object ForestMode |
| 68 | + ``` |
| 69 | + |
| 70 | +1. Confirm that `ForestMode` shows the level you set. |
| 71 | + |
| 72 | +## Lower the domain functional level |
| 73 | + |
| 74 | +To lower the domain functional level by using PowerShell: |
| 75 | + |
| 76 | +1. Sign in to a computer with RSAT installed. |
| 77 | + |
| 78 | +1. Open PowerShell as an administrator. |
| 79 | + |
| 80 | +1. Run the following command to lower the domain functional level. Replace *`<domain>`* with the domain name and *`<level>`* with the domain functional level you want. For example, use `Windows2016Domain` to roll back to the Windows Server 2016 level. |
| 81 | + |
| 82 | + ```powershell |
| 83 | + Set-ADDomainMode -Identity <domain> -DomainMode <level> |
| 84 | + ``` |
| 85 | + |
| 86 | +1. When PowerShell prompts you to confirm, enter **Y**. |
| 87 | + |
| 88 | +1. Run the following command to verify the change. |
| 89 | + |
| 90 | + ```powershell |
| 91 | + Get-ADDomain | Select-Object DomainMode |
| 92 | + ``` |
| 93 | + |
| 94 | +1. Confirm that `DomainMode` shows the level you set. |
| 95 | + |
| 96 | +## Related content |
| 97 | + |
| 98 | +- [Raise domain and forest functional levels in Active Directory Domain Services](raise-domain-forest-functional-levels.md) |
| 99 | + |
| 100 | +- [Active Directory Domain Services functional levels](../active-directory-functional-levels.md) |
| 101 | + |
| 102 | +- [Set-ADDomainMode](/powershell/module/activedirectory/set-addomainmode) |
| 103 | + |
| 104 | +- [Set-ADForestMode](/powershell/module/activedirectory/set-adforestmode) |
0 commit comments