If you’ve ever installed Unity you’ve probably noticed the long list of checkboxes for “modules” — Android Build Support, iOS Build Support, WebGL, Visual Studio integration, and more. Those modules are optional pieces that extend the Unity Editor so it can target platforms, include toolchains, or provide useful integrations. Picking the right set saves disk space, avoids headaches, and makes your build pipeline predictable. Here’s a practical guide to what the common modules do, how to install/remove them, and recommendations for different workflows.

1.- What is a Unity Module? #
A module is an optional add-on packaged with a Unity Editor installation. Modules add:
- Platform build support (so the Editor can compile to Android, iOS, WebGL, Windows, macOS, Linux, etc.)
- Native toolchains and SDKs (for example Android SDK/NDK, OpenJDK, or Xcode integration)
- IDE and debugging integration (Visual Studio, Visual Studio Code support)
- Optional packages like documentation or sample assets
Modules let Unity stay lean: you install only the runtime/tooling you need.
1.1.- How to install / uninstall modules #
The easiest way is Unity Hub:
- Open Unity Hub → Installs.
- Find the Editor version you want → click the three dots → Add Modules.
- Check the modules you need → Install.
To remove: same place → uncheck module → uninstall.
2.- Common modules #
- Windows Build Support (IL2CPP / Mono / .NET)
Allows you to build native Windows executables. IL2CPP is used for performance and platform compatibility in many releases. - macOS Build Support
Build macOS applications. On macOS you still often need Xcode for signing/notarization if you distribute outside the Editor. - Linux Build Support
Create standalone Linux builds (x86/x86_64). Handy for Linux deployments or servers. - Android Build Support
Includes Android SDK, NDK, OpenJDK (often optional checkbox). Required for APK/AAB builds and for connecting Android devices for testing. - iOS Build Support
Enables exporting Xcode projects. Note: actual iOS compilation and signing require Xcode on macOS. - WebGL Build Support
Build games that run in browsers (as WebAssembly / JavaScript). No native binary produced—great for small demos and web portals. - Visual Studio Editor Support
Integrates the Editor with an IDE for debugging, intellisense and attaching to the player. - Documentation
Offline docs and example projects; useful when you work offline or teach a class.
2.1.- What modules should you install? #
2.1.1.- Documentation & IDE #
You should always install the offline documentation & the recommended IDE support for your platform. If you are developing on a windows machine, that usually is Visual Studio Community
Even if you don’t use the recommended IDE, you should install it. Unity sometimes sends information to the IDE you are using, through the recommended IDE. If it’s not installed, some features won’t work.
2.1.2.- Windows build support #
If you are building for windows, it’s recommended to install Windows Build Support (IL2CPP)
This method of building, uses native c++ as an intermediary and helps with compatibility and performance.
2.1.3.- Android build support #
If you are building for an Android device, it’s recommended to install:
- Android Build Support
- OpenJDK
- Android SKD & NDK Tools
INFO
If you need to have installed Android Studio or any other Android tool on your computer, sometimes builds on Unity fail. If they do: uninstall anything Android related, install first the Android build support for Unity, and last install any Android related tools that you may need.
2.1.4.- Other platforms #
There are multiple “free” platforms on wich you can build to:
- Mac (Requires a Mac and a Apple Developer License)
- iOS (Requires a Mac and a Apple Developer License)
- Linux
- WebGL or Web Build Support
- (…)
There are also multiple licensed platforms on wich you can build to:
- Nintendo Switch
- Sony PlayStation
- Xbox
- (…)