Removes a named list of consumer Store apps — Xbox, Solitaire, Clipchamp, Phone Link, Sticky Notes, Maps and the rest — from a freshly imaged machine. The list is a plain array at the top of the script with the display name of each package in a comment, so trimming it to your own standard build takes a minute.
powershell
# - - - - - PowerShell - - - - - #
# Remove additional unwanted bloatware including Family and Get Started apps
#-----------------------------------------
$isadm = ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)
if (-not $isadm) {
Write-Host "<WRITE-LOG = ""*Please run this script as Administrator.*"">"
Write-Host "<WRITE-LOG = ""*If this was a remote execution please provide Administrator credentials.*"">"
Write-Error "Warning: Not running as Administrator."
} else {
$apps = @(
"Microsoft.3DBuilder",
"Microsoft.BingNews",
"Microsoft.BingSearch",
"Microsoft.MicrosoftSolitaireCollection",
"Microsoft.OfficeHub",
"Microsoft.SkypeApp",
"Microsoft.XboxApp",
"Microsoft.XboxGameOverlay",
"Microsoft.XboxGamingOverlay",
"Microsoft.XboxIdentityProvider",
"Microsoft.ZuneMusic",
"Microsoft.ZuneVideo",
"Clipchamp.Clipchamp", # Clipchamp video editor
"Microsoft.WindowsFeedbackHub", # Feedback Hub
"Microsoft.GetHelp", # Get Help app
"Microsoft.Getstarted", # Get Started app (onboarding)
"Microsoft.GamingApp", # Gaming services app
"Microsoft.MSPaint", # Paint 3D and classic Paint (MSPaint)
"Microsoft.YourPhone", # Phone Link app
"MicrosoftCorporationII.QuickAssist",# Quick Assist
"Microsoft.WindowsSoundRecorder", # Sound Recorder
"Microsoft.MicrosoftStickyNotes", # Sticky Notes
"Microsoft.MixedReality.Portal", # Mixed Reality Portal
"microsoft.windowscommunicationsapps", # Mail and Calendar app package name
"Microsoft.WindowsMaps", # Maps app
"MicrosoftCorporationII.MicrosoftFamily" # Microsoft Family app
)
foreach ($app in $apps) {
Get-AppxPackage -Name $app -ErrorAction SilentlyContinue | ForEach-Object {
try {
Remove-AppxPackage $_ -ErrorAction Stop
Write-Host "<WRITE-LOG = ""*Removed app: $($app)*"">"
} catch {
Write-Warning "Failed to remove app '$($app)': $_"
}
}
}
Write-Host "<WRITE-LOG = ""*Bloatware removal completed!*"">"
}Run it across your fleet
This script runs as-is on a single host. Paste it into ServerEngine to schedule it, run it on a whole server group in parallel, and keep the credentials out of the file — see the scripts documentation and the credential store.
More in Self-Healing & Repair
Clear the Windows Update Cache with PowerShell
2026-08-17Automate Disk Cleanup with PowerShell
2026-08-17Flush the DNS Cache with PowerShell
2026-08-17Clear a Stuck Print Queue with PowerShell
2026-08-17Delete Old Temp Files with PowerShell
2026-08-17Repair Windows System Files with DISM and SFC
2026-08-17Ready when you are.
Try ServerEngine free for 7 days.