ECS has worse rendering performance than MonoBehaviour on Android

I have created 2 different URP projects and both are identical, the only difference is that one project uses ECS and the other uses MonoBehaviour.
Both projects simply spawn a lot of objects on the screen and have no physics. When playing on Unity Editor, the project built on ECS provides much better performance than MonoBehaviour, but when I run both on an Android device, MonoBehaviour has much better performance.
I checked Profiler and for projects built with ECS, Render performance is more expensive than Monobehaviour, but it’s clear that ECS is better when running on Editor but on Android devices, this is really strange.

Editor runs on a PC. This often means powerful CPU, GPU and no thermal throttling.
If your target platform is PC then great, if not - 100% ignore performance characteristics in the Editor. If Android is your target platform then only performance on this target device should interest you.

What you need to do is to run Profiler and understand the source of this lower performance difference

For one: Is it because of different CPU or GPU workload?
Because without knowing this one can’t make informed decisions.

1 Like