Version: 2021.1
.NET profile support
Understanding Automatic Memory Management

Stable scripting runtime: known limitations

Unity supports a modern .NET runtime. You may encounter the following issues when using the .NET runtime:

Code size

The stable scripting runtime comes with a larger .NET class library API than the legacy scripting runtime. This means the code size is frequently larger. This size increase may be significant, especially on size-constrained and Ahead-of-Time (AOT) platforms.

To mitigate code size increases:

  1. Choose the smallest .NET profile possible (see .NET profile support). The .NET Standard 2.0 profile is about half the size of the .NET 4.x profile, so use the .NET Standard 2.0 profile where possible.

  2. Enable Strip Engine Code in the Unity Editor Player settings (go to Edit > Project Settings, then select the Player category). This option statically analyzes the managed code in the Project, and removes any unused code.

    Note: This option is only available with the IL2CPP scripting backend.


  • 2018–03–15 Page amended
.NET profile support
Understanding Automatic Memory Management