Windows 10 and 11 ships with a set of pre-installed Microsoft Store applications (UWP/APPX apps). These are Calculator, Calendar, Mail, Cortana, Maps, News, OneNote, Groove Music, Camera, etc. These apps are automatically installed from the built-in package store in the Windows image into each user’s profile the first time they log in (provisioned apps). Most business users don’t use these built-in MS Store apps. So, to free up disk space and remove unused items from the Start menu, you can uninstall these native UWP apps.
Remove the Built-in Windows Store App from the Settings GUI
The user can remove a built-in universal application from their profile from the Settings panel. Navigate to Settings -> Apps -> Installed apps. Find the app in the list and click Uninstall.
This will only remove the native UWP app from the current user’s profile. When a new user logs in, this application is automatically installed from the system storage.
Also, some native pre-installed apps simply don’t have an Uninstall button (it is greyed out).
You can uninstall these built-in Windows system apps only from the PowerShell CLI.
Removing Preinstalled (Native) Windows App with PowerShell
There are two types of UWP apps on Windows:
- user applications (can be found in
C:\Program Files\WindowsApps\
) - system apps (
C:\Windows\SystemApps\
)
When a new user logs into Windows for the first time, some built-in user applications are installed in their profile (AppX provisioned packages). Each user can then install additional apps from the Microsoft Store or the APPX/MSIX packages.
You can use PowerShell to list the Microsoft Store applications that are installed for the current user:
Get-AppxPackage | select Name,NonRemovable,PackageUserInformation,PackageFullName
An app won’t appear in this list if you uninstall it via the Settings app GUI.
winget uninstall Microsoft.BingWeather_8wekyb3d8bbwe
List the installed Store apps for all users and export the results to a text file (for an easier search):
Get-AppxPackage -AllUsers | Format-List -Property Name, PackageFullName >c:\ps\all_installed_uwp_apps.txt
Search for an application by name and see the names and SIDs of users who have it installed (in this example, we’re searching for the Weather app):
Get-AppxPackage -AllUsers | select Name, PackageFullName, PackageUserInformation| where-object {$_.Name -like "*Weather*"} | FL
Note that some UWP apps have Staged status. This means that the application is stored in the Windows image and will be automatically installed the first time the new user account logs in.
To uninstall an app for the current user, copy the PackageFullName and specify it as a parameter of the Remove-AppxPackage command
Remove-AppxPackage Microsoft.BingWeather_4.53.60911.0_x64__8wekyb3d8bbwe
To remove an app for all users on a machine, add the AllUsers parameter:
Get-AppxPackage *BingWeather* -AllUsers| Remove-AppPackage –AllUsers -verbose
The previous command on Windows 11 removes the app from all user profiles and system storage. However, in Windows 10, such apps will remain in the system in a Staged state (and actually will remain on the drive in the C:\Program Files\WindowsApps directory).
List staged Store apps that are built into the Windows image and are automatically installed to all new users:
Get-AppxProvisionedPackage -online |select DisplayName,PackageName
To completely remove a specific provisioned app from a Windows image, use the Remove-AppxProvisionedPackage command:
Get-AppxProvisionedPackage -online | where-object {$_.PackageName -like "*Microsoft.ZuneVideo*"} | Remove-AppxProvisionedPackage -online –Verbose
This de-provisioned application is no longer automatically installed for new users.
How to Force Uninstall All Built-in UWP Apps on Windows
Of course, removing the built-in apps one by one is a tedious task. Use a simple PowerShell script to automatically remove pre-installed apps from a Windows image.
Get-AppXProvisionedPackage -online | Remove-AppxProvisionedPackage -online
Don’t uninstall system apps such as Microsoft.VCLibs, Microsoft.NET.Native.Framework, Microsoft.NET.Native.Runtime, Microsoft.WindowsStore.
Some UWP apps in Windows 10 and 11 implement various system control panels. For example, windows.immersivecontrolpanel
is a modern Settings panel, Microsoft.SecHealthUI
is a GUI interface for Windows Security (Defender), etc.
A list of essential system UWP apps in Windows that should not be uninstalled without a good reason can be obtained as follows:
Get-AppxPackage| ? { $_.SignatureKind -eq "System" }|select Name,InstallLocation
The list of unwanted applications will vary depending on which build of Windows you are using. In this example, I’m going to uninstall the built-in applications that I never used on Windows 11 23H2.
Open PowerShell ISE as an administrator, copy and paste the specified code, and run the script (F5).
$UWPAppstoRemove = @(
"Microsoft.BingNews",
"Microsoft.GamingApp",
"Microsoft.MicrosoftSolitaireCollection",
"Microsoft.WindowsCommunicationsApps",
"Microsoft.WindowsFeedbackHub",
"Microsoft.XboxGameOverlay",
"Microsoft.XboxGamingOverlay",
"Microsoft.XboxIdentityProvider",
"Microsoft.XboxSpeechToTextOverlay",
"Microsoft.YourPhone",
"Microsoft.ZuneMusic",
"Microsoft.ZuneVideo",
"MicrosoftTeams",
"Microsoft.OutlookForWindows",
"Microsoft.Windows.DevHome",
"Microsoft.MicrosoftOfficeHub",
"Microsoft.MicrosoftStickyNotes",
"Microsoft.People",
"Microsoft.ScreenSketch",
"microsoft.windowscommunicationsapps",
"Microsoft.WindowsFeedbackHub",
"Microsoft.WindowsMaps"
)
# Remove preinstalled Microsoft Store applications for all users and from the Windows image
foreach ($UWPApp in $UWPAppstoRemove) {
Get-AppxPackage -Name $UWPApp -AllUsers | Remove-AppxPackage -AllUsers -verbose
Get-AppXProvisionedPackage -Online | Where-Object DisplayName -eq $UWPApp | Remove-AppxProvisionedPackage -Online -verbose
}
As a result, all new accounts will be created without the built-in Windows apps (the creation of new user profiles will be faster). You can also create your own Windows installation image with the built-in apps removed.
3 comments
Get-AppXProvisionedPackage -online | Remove-AppxProvisionedPackage -online
Not work.
The name “Get-AppXProvisionedPackage” is not recognized as the name of a cmdlet, function, script file or executable program. Check your spelling, as well as the presence and the path is correct, then try again.
line: 1 char: 27
+ Get-AppXProvisionedPackage <<<< –Path K:\__W10_CONSTRUCTOR_x64__\Mount1 | Remove-AppxProvisionedPackage –Path K:\__W10_CONSTRUCTOR_x64__\Mount1
+ CategoryInfo : ObjectNotFound: (Get-AppXProvisionedPackage:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
Sorry,
Get-AppXProvisionedPackage –Path c:\offline | Remove-AppxProvisionedPackage –Path c:\offline
My long search has paid off! Thanks to you and this awesome website! I’ve tried so much advice on the web for removing UWP apps and they all fail — ’til I tried yours. Wow. Thank you and thank you and thank you again.