Skip to content

Make a Windows installer for a Unity or Godot game

Build the Windows player, know which folders must ship and which must not, and turn the build folder into a Setup.exe with a Desktop shortcut and a clean uninstall for itch.io, your own site or direct sales.

Updated October 31, 2026 · 3 min read

Steam handles installation for games sold there. Everywhere else, on itch.io, on your own site, in a Humble bundle, a zip is what most indie games ship, and players who aren't used to zips get lost. An installer gives them a Desktop icon, a Start Menu entry and an uninstall button, and gives you a single Setup.exe to link. Here is how to make one from a Unity or Godot build.

Unity: build the Windows player

  1. Open File → Build Settings (or Build Profiles in Unity 6) and pick Windows, architecture x86_64.
  2. Set the company name, product name, version and icon under Player Settings. The icon becomes the .exe icon; keep a .ico version of it for the installer.
  3. Build into an empty folder.

The folder contains:

  • MyGame.exe, the player;
  • MyGame_Data/, your assets, scenes and resources;
  • UnityPlayer.dll and UnityCrashHandler64.exe;
  • MonoBleedingEdge/ for Mono builds, or GameAssembly.dll for IL2CPP builds.

Do not ship the MyGame_BurstDebugInformation_DoNotShip folder (the name says it), and don't ship .pdb files from development builds. Run the .exe from the folder once before packaging.

Godot: export the Windows build

  1. Project → Export, add a Windows Desktop preset.
  2. Set the icon, product name, version and company under Application. Godot needs rcedit configured in the editor settings to embed the icon; otherwise the .exe keeps the Godot icon, which the installer's shortcut icon can still override.
  3. Export to an empty folder. You get MyGame.exe and MyGame.pck (or a single .exe with the pack embedded, if you ticked that option), plus .dll files for GDExtensions if any.

Zip the build folder

Zip the contents of the build folder, keeping its structure. Everything in the zip is installed as is, so players get exactly the files you tested.

Build the installer

  1. Upload the zip to ExeTup. It picks MyGame.exe as the main program; confirm it (not the crash handler).
  2. Enter the game's name, version, your studio as publisher, and a licence if you have one.
  3. Choose the scope. All users installs into Program Files and asks for admin rights, the convention for games. Current user installs without a prompt, which suits machines where the player isn't an administrator.
  4. Keep 64-bit. Unity and Godot 4 no longer produce 32-bit builds by default, and modern Windows is 64-bit.
  5. Upload the .ico, enable the Desktop shortcut (players expect one) and "launch after install", then build.

Download Setup.exe, install it on a Windows machine, launch from the Desktop icon, and uninstall from Windows Settings.

Game-specific notes

  • Size. Game builds are large. Solid LZMA compression in the installer typically shrinks a Unity build by 30 to 60 percent, often more than a zip does. Check the upload limit on the pricing section before you build.
  • Save games. Unity's Application.persistentDataPath and Godot's user:// already point at the player's AppData, not the install folder, so saves survive uninstalls and reinstalls. Don't write saves next to the .exe; Program Files is read-only for normal users.
  • Updates. A new version is a new installer with a higher version number. Installing it over the old one replaces the files in place.
  • Mods and extra files. A readme, a soundtrack or a mod folder can be added in ExeTup's "Other files" step so they install alongside the game.
  • SmartScreen. Players downloading a new indie game will see the "Windows protected your PC" warning until the file earns a reputation. See what to do about it; a short note on your store page helps.

FAQ

Does itch.io need an installer?

No, itch.io accepts zips, and the itch app installs them. An installer is for players who download from the website directly, and for sales outside stores. Many developers upload both.

Can I include the Visual C++ redistributable?

The installer doesn't chain other installers. Unity builds normally run without it; if your game needs a specific redistributable, say so on the download page or install it from your game's first launch.

Will antivirus flag my game?

A standard installer that puts the game in Program Files behaves like any other program. Unsigned files from new publishers get extra scrutiny; code signing is the long-term answer.

What about Unreal Engine builds?

The same process. Package the project for Windows, zip the packaged folder with its .exe, and build the installer from it.

Related guides