Set WinSystemLocale - PowerShell


Set-WinSystemLocale modifies the system display language and regional settings for Windows systems. This command enables users to customize the language and format preferences applied to various aspects of the operating system, such as the user interface, date and time formats, currency symbols, and more.


Set-WinSystemLocale [-Locale] <String> [-UpdateSystem | -UpdateBoot | -UpdateBoth]


  • -Locale (Required): Specifies the locale identifier (LCID) or language tag to set as the system locale. For example: en-US for English (United States) or fr-FR for French (France). A list of available locales can be found using Get-WinSystemLocale.
  • -UpdateSystem: Updates the system locale settings for the current user.
  • -UpdateBoot: Updates the boot loader locale settings.
  • -UpdateBoth: Updates both the system and boot loader locale settings. (Default)


Simple usage:

Set-WinSystemLocale -Locale en-US

Update both system and boot loader settings:

Set-WinSystemLocale -Locale sr-Latn-RS -UpdateBoth

Get current system locale and update boot loader:

$currentLocale = Get-WinSystemLocale

Set-WinSystemLocale -Locale $currentLocale -UpdateBoot

Common Issues

  • Incorrect locale identifier: Ensure the specified locale identifier is valid and supported by your Windows system.
  • Permission denied: Check user permissions. This command may require elevated privileges to modify system settings.
  • Location not found: The specified locale may not be installed on the system. Install the language pack or Windows Feature before setting the locale.


Set-WinSystemLocale can be used in conjunction with other PowerShell commands, such as Get-WinSystemLocale and Get-GPLanguages. For example:

Get-WinSystemLocale | Set-WinSystemLocale -UpdateBoth
  • Get-WinSystemLocale
  • Get-GPLanguages
  • Windows PowerShell Language Packs