Tween Performance
January 15, 2024 ยท View on GitHub
This repository measures the performance of tween libraries published on Github, Asset Store, etc. using the Performance Testing API, and includes the results and the source code used.
Note
This repository does not contain the actual library source code, as it contains libraries that are not allowed to be redistributed. If you want to test yourself, please manually add the libraries required for testing.
Testing Environment
Measurements were taken on builds for macOS. Also, details regarding machines and versions are below.
MacBook Pro
OS: macOS Ventura 13.0
CPU: Apple M2
Memory: 24GB
Unity: 2022.3.7f1
Scripting Backend: IL2CPP
Libraries
- AuraTween (1.1.1)
- AnimeRx (1.3.2)
- AnimeTask (1.13.1)
- DOTween Pro (1.0.375)
- FastTweener (1.0.0)
- GoKit
- GoKitLite
- iTween (2.0.10)
- LeanTween (2.5.1)
- LitMotion (1.0.0)
- MagicTween (0.2.1)
- PrimeTween (1.1.5)
- unity-tweens (3.2.0)
- UrMotion (1.0.0)
- UTween (1.1.4)
- Uween (1.0.0)
- ZestKit
Tween 64,000 float tweens
Note
Libraries that do not support tweening of custom properties are excluded from the benchmark.
Startup

| Library | Time |
|---|---|
| GoKit | 3,322.77ms |
| UTween | 698.83ms |
| GoKitLite | 389.22ms |
| ZestKit | 356.49ms |
| AnimeRx | 285.29ms |
| AnimeTask | 89.65ms |
| UnityTweens | 55ms |
| AuraTween | 54.87ms |
| DOTween | 45.05ms |
| MagicTween | 32.74ms |
| LeanTween | 22.66ms |
| FastTweener | 14.45ms |
| PrimeTween | 4.68ms |
| LitMotion | 3.54ms |
Update

| Library | Time |
|---|---|
| AnimeRx | 17.76ms |
| AnimeTask | 12.63ms |
| UTween | 10.4ms |
| UnityTweens | 4.99ms |
| ZestKit | 4.68ms |
| GoKit | 3.43ms |
| AuraTween | 3.39ms |
| DOTween | 3.26ms |
| LeanTween | 3.07ms |
| GoKitLite | 2.68ms |
| PrimeTween | 2.01ms |
| FastTweener | 1.12ms |
| MagicTween | 0.9ms |
| LitMotion | 0.62ms |
Tween 50,000 transform.position
Startup

| Library | Time |
|---|---|
| GoKit | 1,800.97ms |
| iTween | 631.87ms |
| UTween | 607.02ms |
| AnimeRx | 247.94ms |
| AnimeTask | 204.91ms |
| UrMotion | 204.24ms |
| Uween | 79.19ms |
| AuraTween | 34.75ms |
| DOTween | 33.25ms |
| UnityTweens | 32.85ms |
| MagicTween | 29.72ms |
| FastTweener | 25.93ms |
| ZestKit | 24.16ms |
| GoKitLite | 19.35ms |
| LeanTween | 19.07ms |
| PrimeTween | 6.38ms |
| LitMotion | 6.33ms |
Update

| Library | Time |
|---|---|
| iTween | 65.1ms |
| AnimeTask | 20.15ms |
| AnimeRx | 18.63ms |
| UrMotion | 18.51ms |
| Uween | 13.81ms |
| GoKit | 12.28ms |
| AuraTween | 10.6ms |
| UTween | 10.48ms |
| GoKitLite | 10.09ms |
| DOTween | 8.78ms |
| LeanTween | 7.3ms |
| PrimeTween | 7.1ms |
| UnityTweens | 7.01ms |
| FastTweener | 6.47ms |
| ZestKit | 6.32ms |
| MagicTween | 5.4ms |
| LitMotion | 4.68ms |
GC Allocation
Allocation per position tween creation

| Library | GC.Alloc |
|---|---|
| UTween | 5,541B |
| AnimeRx | 1,817B |
| AnimeTask | 1,547B |
| iTween | 1,379B |
| UnityTweens | 887B |
| AuraTween | 851B |
| DOTween | 732B |
| GoKit | 667B |
| FastTweener | 551B |
| UrMotion | 513B |
| LeanTween | 292B |
| GoKitLite | 269B |
| ZestKit | 188B |
| Uween | 113B |
| PrimeTween | 0B |
| MagicTween | 0B |
| LitMotion | 0B |