Skip to content
HOODIE
TECH4 MIN READ

Unity Mobile Optimization: How to Hit 60 FPS on Low-End Devices

At 60 FPS you get 16.67 milliseconds per frame. Here is where they go, and how to win them back on low-end phones.

AlexLead Developer ·
KEY TAKEAWAYS
  • At 60 FPS, everything must fit in 16.67 ms per frame, and less once phones heat up.
  • Profile on the cheapest device you support, never in the editor.
  • Batching, pooling and baked lighting are the biggest easy wins.
  • Budget each system, then hold the line.

Smoothness is a feature. Players can't name it, but they feel it the moment a game stutters. On mobile, where devices range from flagship to five-year-old budget phones, hitting a steady frame rate is one of the hardest and most valuable things a team can do.

Know your budget

Frame budget is simple maths: 1000 milliseconds divided by your target frame rate. Scripts, physics, animation, rendering and UI all share it. Try the calculator below with a typical mid-range breakdown, then switch on the optimizations.

INTERACTIVE · FRAME BUDGET
17.2 / 16.67 msOVER BUDGET
Scripts 4.6msRendering 6.8msLighting 2.4msPhysics 2.2msUI 1.2ms

Leave room for heat

Phones throttle when they get hot. A game that hits 60 FPS for the first five minutes can drop well below it after twenty. Aim to use around 65–70% of your budget at peak so the game stays smooth on a warm device and on a train in summer.

The biggest wins

Rendering

  • Reduce draw calls with the SRP Batcher, static batching and GPU instancing.
  • Use texture atlases and compressed formats like ASTC.
  • Bake lighting wherever you can; real-time lights are expensive on mobile.
  • Watch overdraw from stacked transparent particles and UI.

Scripts and memory

  • Pool frequently spawned objects instead of instantiating and destroying them.
  • Avoid per-frame allocations that trigger garbage collection spikes.
  • Cache component lookups instead of calling them every frame.
  • Move heavy work off the main thread with the Job System where possible.
Frame time before and after optimizationILLUSTRATIVE · MS AT 60 FPS
Before
16 ms
+ Object pooling
15.3 ms
+ Batching
12.8 ms
+ Baked lighting
11.6 ms
+ Simpler physics
10.7 ms
Profile on the worst phone you support. The editor will lie to you every time.
— Alex, Lead Developer
RELATED READHow AI Is Changing Mobile Game Development in 2026

Frequently asked questions

About 16.67 milliseconds. At 30 FPS a frame has 33.3 ms, and at 120 FPS it has 8.33 ms.

Common causes are garbage collection spikes from per-frame allocations, too many draw calls, expensive real-time lighting, and thermal throttling as the device heats up.

Fast action games benefit from 60 FPS. Slower games can target 30 FPS to save battery and reduce heat, but the frame rate should always be stable.

SOURCES & FURTHER READING
  1. 01Unity Manual ↗
  2. 02Android Developers: Optimize your game ↗
#Unity mobile optimization#60 FPS mobile#Unity performance#draw calls#garbage collection Unity
WRITTEN BYAlex, Lead Developer at Hoodie Games

Keep reading

View all articles →
AI · 5 MIN

How AI Is Changing Mobile Game Development in 2026

ECONOMY · 5 MIN

How to Master Your Mobile Game Economy: Sources, Sinks & Soft Currency

RETENTION · 5 MIN

Mobile Game Retention Benchmarks 2026: D1, D7, D30 and How to Beat Them

Building something? Let's talk.

hoodiegamescompany@gmail.com