Notion has become the default "workspace" app for a lot of teams. The desktop client is faster than the web version and supports global shortcuts and offline mode (partially). Here's how to install it silently for fresh-machine provisioning.
TL;DR
winget install --id Notion.Notion -e --silent --accept-package-agreements --accept-source-agreements
Notion installs per-user into %LOCALAPPDATA%\Programs\Notion. ~10 seconds. No admin required.
Note: silent install gets you to the login screen — there's no way to silently authenticate. Users sign in once on first launch and Notion remembers them.
What gets installed
| Field | Value |
|---|---|
| Package ID | Notion.Notion |
| Publisher | Notion Labs, Inc |
| Installer type | NSIS (Nullsoft) |
| License | Proprietary |
| Latest version | 7.18.0 |
| Homepage | notion.so/desktop |
| Default install path | %LOCALAPPDATA%\Programs\Notion |
The installer is an Electron wrapper around Notion's web app. About 350 MB on disk. All your actual workspace data stays in Notion's cloud — the desktop app is just a polished frontend.
Per-user is the default
Unlike most Win32 apps, Notion installs per-user by default — it lands in your local AppData, not Program Files. This means:
- ✅ No admin needed
- ✅ Each user gets their own install (handy on multi-user terminal servers)
- ❌ Can't install once for all users (mostly fine for desktops)
If you want a machine-wide install:
winget install --id Notion.Notion -e --scope machine --silent
This requires admin and installs to C:\Program Files\Notion.
Suppress the auto-launch
Notion's installer opens the app right after install (good for end-users, bad for scripts). Force the NSIS-level silent:
winget install --id Notion.Notion -e --override "/S"
Now the install finishes without launching Notion.
Specify version
Pin to a known-good version for compatibility:
winget install --id Notion.Notion -e --version 7.17.0 --silent
List versions:
winget show --id Notion.Notion --versions
Notion Calendar (separate package)
Notion's calendar product is a separate app:
winget install --id Notion.NotionCalendar -e --silent
Worth installing alongside Notion if your team uses both.
Verify
& "$env:LOCALAPPDATA\Programs\Notion\Notion.exe" --version
Or just check via winget:
winget list --id Notion.Notion
Upgrade silently
winget upgrade --id Notion.Notion -e --silent --accept-package-agreements --accept-source-agreements
Notion ships updates roughly every 2 weeks. The desktop app also self-updates on launch by default — winget upgrade is mostly redundant unless you've disabled the self-updater.
Uninstall silently
winget uninstall --id Notion.Notion --silent --disable-interactivity
Because Notion is per-user, this only removes your install — other users on the same machine keep their copies. Your workspace data stays safe in the cloud.
To also wipe local cache (logs, app state — does NOT touch cloud data):
winget uninstall --id Notion.Notion --silent
Remove-Item "$env:APPDATA\Notion" -Recurse -Force -ErrorAction SilentlyContinue
Remove-Item "$env:LOCALAPPDATA\Notion" -Recurse -Force -ErrorAction SilentlyContinue
In a productivity-stack script
# Install productivity essentials
$apps = @(
"Notion.Notion",
"SlackTechnologies.Slack",
"Zoom.Zoom",
"Google.Chrome",
"Bitwarden.Bitwarden"
)
foreach ($id in $apps) {
winget install --id $id -e --silent `
--accept-package-agreements --accept-source-agreements
}
Pre-sign-in via SSO
If your team uses Notion SSO (SAML/OIDC) through Google or Microsoft, the desktop app supports launching the SSO flow directly. Users still click through the auth prompt on first launch — there's no silent sign-in.
For full unattended sign-in, you'd need to script the OAuth handoff via a launcher — out of scope for winget, but possible with PowerShell + browser automation.
Common errors
"Notion is already installed" — winget detects the existing per-user install. To overlay:
winget install --id Notion.Notion -e --silent --force
Install succeeds but Notion won't launch — Electron apps sometimes corrupt on disk. Wipe local cache:
Remove-Item "$env:APPDATA\Notion" -Recurse -Force
Remove-Item "$env:LOCALAPPDATA\Notion" -Recurse -Force
winget uninstall --id Notion.Notion
winget install --id Notion.Notion -e --silent
0x80073D02 — Notion currently in use — close Notion (it minimises to tray, doesn't quit on window close). See package in use fix.
See also
- Notion on winget.tech → — full package details
- How to install Slack silently → — sibling productivity app
- Office bundle → — full team productivity stack
- Fresh Windows 11 setup → — full workflow