How to Install Multiple Windows Apps with WinGet
WinGet can search for, inspect, install, upgrade, export, and import supported Windows packages. For a multi-app setup, verify each exact package ID and publisher first, install one package manually, then use a PowerShell loop that records failures instead of assuming the whole batch succeeded.
Confirm WinGet and its sources
winget --version
winget source list
WinGet is delivered through Microsoft’s App Installer on supported Windows versions. If the command is unavailable, update App Installer and allow Windows time to register it for the signed-in user before using unofficial installers.
Search and inspect every package ID
winget search --name "PowerToys"
winget show --id Microsoft.PowerToys --exact --source winget
Read the displayed name, publisher, source, installer type, and available version. Product names are not reliable package IDs, and similarly named packages can exist.
Install one package before creating a batch
winget install --id Microsoft.PowerToys --exact --source winget
Review any agreement, administrator prompt, installer UI, or restart requirement. Do not add silent flags until you know the package supports unattended installation safely.
Install a verified list with a result log
$apps = @(
"Google.Chrome",
"SlackTechnologies.Slack",
"Zoom.Zoom",
"Notion.Notion",
"Microsoft.PowerToys"
)
$results = foreach ($app in $apps) {
Write-Host "Installing $app..."
winget install `
--id $app `
--exact `
--source winget `
--accept-source-agreements `
--accept-package-agreements
[PSCustomObject]@{
PackageId = $app
ExitCode = $LASTEXITCODE
Reviewed = $false
}
}
$results | Export-Csv "$env:USERPROFILE\Desktop\winget-install-results.csv" -NoTypeInformation
$results | Format-Table
Remove apps you do not need. Some packages still require administrator approval or user interaction. An exit code in the CSV is a prompt to review the console output and package individually, not a universal diagnosis.
Verify what actually installed
winget list --id Microsoft.PowerToys --exact
winget list
Open required applications and confirm their version. WinGet can report packages it recognizes, but it does not confirm application sign-in, configuration, licensing, or restored user data.
Upgrade with review
winget upgrade
Review the list before running a broad upgrade. For a controlled update:
winget upgrade --id Microsoft.PowerToys --exact --source winget
Use winget upgrade --all only when you are prepared for several installers and possible restarts.
Export a package list
winget export -o "$env:USERPROFILE\Desktop\MyApps.json" --accept-source-agreements
The export contains packages WinGet can match. Warnings about unmatched applications are important; the file is not a complete machine inventory or backup.
Review before importing on another PC
winget import -i "$env:USERPROFILE\Desktop\MyApps.json" --accept-source-agreements --accept-package-agreements
An import does not restore application settings, accounts, documents, license activation, browser profiles, or every program. Open the JSON first and remove software that does not belong on the destination device.
Troubleshoot one failed package at a time
winget source update
winget search "Application Name"
winget show --id Publisher.PackageName --exact
winget install --id Publisher.PackageName --exact --verbose-logs
Common causes include a changed ID, stale source metadata, an existing install that cannot be matched, an installer requiring elevation, architecture or OS incompatibility, and a publisher installer returning its own error.
Managed-device limits
Work or school policies may restrict package sources, installations, elevation, or Store components. Do not bypass those controls. Ask the administrator which packages and sources are approved.
Completion checklist
- Each package ID and publisher was reviewed.
- One package installed successfully before the batch.
- The batch results CSV contains no unreviewed failure.
- Required apps appear in
winget listand open correctly. - Restarts, licensing, and account sign-ins were handled separately.
Official Microsoft references
Related Guides
- How to Free Up Storage on a Windows Laptop — Use built-in Windows tools to review and remove unnecessary files.
- How to Use Windows Clipboard History — Enable a small Windows feature that speeds up repeated copy-and-paste work.
About the author
Tweaknook Editorial publishes practical guides and browser-based tools for everyday digital work. Product-dependent facts are checked against current primary documentation, with limitations and safer verification steps stated where relevant.