How to Bulk Install Apps on Windows 11 with One Winget Script (2026 Guide)§

A new Windows PC should feel exciting. Instead, it usually means an evening of downloading installers, unchecking bundled-toolbox offers, and clicking Next forty times. Winget — the package manager built into Windows 10 and 11 — fixes this: every app installs from one command. And with the NexaTools Winget Bulk Install Script Generator, you can turn your entire app list into a single ready-to-run script in about 30 seconds.

What is a winget bulk install script?§

A winget bulk install script is a plain .ps1 (PowerShell) or .bat (batch) file that runs winget install for every app on your list, one after another, with the right flags to skip prompts:

winget install --id Google.Chrome -e --accept-package-agreements --accept-source-agreements

Chain 15 of those together with logging and you have a new-PC setup script you can reuse on every machine you touch — your laptop, the family desktop, or a fleet of fresh Windows 11 installs.

The 3-step method (no scripting knowledge needed)§

  1. Paste your app list into the Winget Script Generator — one app per line. Winget IDs (7zip.7zip), plain names (discord), and even Microsoft Store Product IDs (9WZDNCRFJBMP) all work.
  2. Pick your options — silent install, machine-wide scope, exact ID matching. The generator applies the flags exactly as the official winget CLI expects.
  3. Download install-apps.ps1 or install-apps.bat, right-click → Run with PowerShell, and walk away. Every app installs unattended, and the script prints a success/fail summary at the end.

Everything is generated locally in your browser — your app list is never uploaded anywhere.

Which flags actually matter?§

Flag What it does Use it when
-e / --exact Matches the ID exactly instead of fuzzily Always — avoids installing the wrong package
--accept-package-agreements --accept-source-agreements Skips license prompts Always, or the script stalls waiting for input
-h / --silent Runs the installer silently Unattended setups; some legacy installers ignore it
--scope machine Installs for all users Deployment scripts run as Administrator
-s msstore Pulls from the Microsoft Store source Store-only apps like widgets and legacy UWP apps

Preset packs: the 60-second new PC§

The generator ships with curated starter packs — Essentials (7-Zip, PowerToys, VLC, Notepad++), Browsers, Developer (Git, VS Code, Python, Node, Docker), Media, Gaming (Steam, Discord), and Security. Click a pack, tweak the list, download. That's the whole setup.

Going further§

  • Debloat at the same time: pair the script with the Windows Setup & Debloat Script Generator to remove preinstalled apps and lock down telemetry in the same pass.
  • Need offline installers instead? For LTSC or machines without the Store, the Microsoft Store Link Generator pulls direct .msixbundle/.appx download links from Microsoft's CDN.
  • Update everything later: because every app is winget-tracked, winget upgrade --all --include-unknown updates your entire setup in one command.
  • Move between PCs: winget export -o my-apps.json saves your installed list; import it anywhere with winget import -i my-apps.json.

FAQ§

Is winget safe? Yes — packages come from signed manifests for winget-source apps and from the Microsoft Store for msstore-source apps. Stick to exact IDs (-e) to avoid look-alikes.

Do I need admin rights? Not for most apps. Winget defaults to per-user installs; only use --scope machine (elevated) for system-wide deployment.

PowerShell blocks my .ps1 file — why? Windows execution policy protects downloaded scripts. Run Set-ExecutionPolicy -Scope CurrentUser RemoteSigned, or use the generated .bat file instead, which runs without that friction.

Does it work on Windows 10? Yes — winget runs on Windows 10 1709+ and all Windows 11 builds. Install it from the Store (Microsoft.DesktopAppInstaller) if it's missing.

Setting up a PC should take one script, not one evening. Generate yours free at the Winget Bulk Install Script Generator — no signup, no uploads, no limits.