Per-user vs per-machine install: which should your Windows app use?
What changes when an installer targets the current user instead of all users, from the install folder and admin prompt to shortcuts, updates and uninstall, and how to choose for your app.
Updated October 31, 2026 · 3 min read
Every Windows installer makes one decision before anything else: does the app belong to the machine or to the person using it? Chrome, VS Code and most Electron apps default to the person. Office, Adobe products and most games pick the machine. The choice affects the folder, the admin prompt, the shortcuts, updates and uninstall. Here is what each means and how to choose.
What a per-machine install does
Also called "all users" or "for everyone on this computer".
- Installs into
C:\Program Files\My App(orProgram Files (x86)for 32-bit apps). - Needs administrator rights: Windows shows the User Account Control prompt, and the installer runs elevated.
- Writes its uninstall entry under
HKEY_LOCAL_MACHINE, so the app appears in Windows Settings for every account. - Puts shortcuts in the shared Start Menu and the public Desktop, visible to all users.
- One copy on disk, however many people use the machine.
- Program Files is read-only for standard users, which protects the app from tampering and from itself: it must keep settings and data in
%APPDATA%, not next to the.exe.
What a per-user install does
Also called "current user" or "just me".
- Installs into
C:\Users<name>\AppData\Local\Programs\My App. - Needs no administrator rights, so there is no prompt. On a managed work laptop where the user isn't an admin, this is the only kind of install that works without IT.
- Writes its uninstall entry under
HKEY_CURRENT_USER; the app shows in Settings only for that account. - Shortcuts go in that user's Start Menu and Desktop.
- Each user who wants the app installs their own copy.
- The folder is writable by the user, which is why self-updating apps prefer it: the app can replace its own files without elevation.
How to choose
Pick per machine when:
- the app is shared equipment software: a lab tool, a point-of-sale app, a game on a family PC;
- you want the protection of a read-only install folder;
- IT departments deploy it centrally for every account (they usually run installers as system anyway);
- the app installs a Windows service or a driver, which per-user installs can't do.
Pick per user when:
- your users may not be administrators (corporate laptops, school machines);
- the app updates itself, or updates often;
- it is a personal productivity app, like most Electron and web-technology apps;
- you want the quietest possible install: download, run, no prompt.
When in doubt for a consumer desktop app, per machine is the long-standing convention and what people expect from a Setup.exe. When in doubt for an app aimed at knowledge workers on company machines, per user removes the one obstacle that stops them installing it.
Things that catch people out
- Mixing scopes. Installing per user on top of a per-machine install of the same app leaves two copies. Keep the scope the same across versions, or detect and remove the old one in your release notes.
- Data next to the exe. Works per user, fails per machine, because Program Files is read-only. Always use
%APPDATA%or%LOCALAPPDATA%for settings and saves. - Start-up entries. "Launch at start-up" writes to the current user's Run key in both scopes, since start-up is a per-user notion in Windows.
- Silent installs. A per-machine installer run silently from a non-elevated prompt fails quietly. Deployment tools run it as system; scripts must run elevated. Per-user installers run silently without any of that. See silent installs.
Setting it in ExeTup
The installer flow has one switch: Install for all users or for the current user only. It sets the folder, the elevation request, the registry view and the shortcut locations together, so they are always consistent. The preview shows the resulting folder path on the folder page.
FAQ
Can one installer offer both choices?
Some installers add a page asking "all users or just me". ExeTup builds one scope per installer, which keeps silent installs predictable; ship two installers if you need both.
Does per-user mean less secure?
The install folder is writable by the user, so a program running as that user could modify the app. For most desktop apps that is an acceptable trade for update-without-elevation; for security-sensitive software, per machine is the safer choice.
Where do per-user installs appear in Windows Settings?
Under Apps, for the account that installed them. Other accounts on the machine don't see them.
Can a standard user install a per-machine app?
Only by entering an administrator's password at the UAC prompt. If they can't, choose per user.
Related guides
- How to make a Setup.exe for your Windows app (no code)What a Setup.exe actually does, the three ways to make one, and how to turn an app folder into a professional installer in minutes without writing an installer script.
- Silent install for a Setup.exe: the /S switch, custom folders and deploymentHow to run an NSIS-based Setup.exe silently with /S, choose the folder with /D=, uninstall silently, and roll the installer out with Intune, PDQ or a script.
- Create a Windows installer for an Electron appPackage an Electron app with Electron Packager or Forge, then turn the output folder into a Setup.exe with a wizard, shortcuts and an uninstaller, no electron-builder configuration needed.