Mobile game battery consumption optimization

NOVASOLUTIONS.TECHNOLOGY is engaged in the development, support and maintenance of iOS, Android, PWA mobile applications. We have extensive experience and expertise in publishing mobile applications in popular markets like Google Play, App Store, Amazon, AppGallery and others.
Development and support of all types of mobile applications:
Information and entertainment mobile applications
News apps, games, reference guides, online catalogs, weather apps, fitness and health apps, travel apps, educational apps, social networks and messengers, quizzes, blogs and podcasts, forums, aggregators
E-commerce mobile applications
Online stores, B2B apps, marketplaces, online exchanges, cashback services, exchanges, dropshipping platforms, loyalty programs, food and goods delivery, payment systems.
Business process management mobile applications
CRM systems, ERP systems, project management, sales team tools, financial management, production management, logistics and delivery management, HR management, data monitoring systems
Electronic services mobile applications
Classified ads platforms, online schools, online cinemas, electronic service platforms, cashback platforms, video hosting, thematic portals, online booking and scheduling platforms, online trading platforms

These are just some of the types of mobile applications we work with, and each of them may have its own specific features and functionality, tailored to the specific needs and goals of the client.

Showing 1 of 1 servicesAll 1735 services
Mobile game battery consumption optimization
Medium
~2-3 business days
FAQ
Our competencies:
Development stages
Latest works
  • image_mobile-applications_feedme_467_0.webp
    Development of a mobile application for FEEDME
    756
  • image_mobile-applications_xoomer_471_0.webp
    Development of a mobile application for XOOMER
    624
  • image_mobile-applications_rhl_428_0.webp
    Development of a mobile application for RHL
    1052
  • image_mobile-applications_zippy_411_0.webp
    Development of a mobile application for ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Development of a mobile application for Affhome
    862
  • image_mobile-applications_flavors_409_0.webp
    Development of a mobile application for the FLAVORS company
    445

Mobile Game Battery Consumption Optimization

A game that drains the phone in an hour and a half gets one-star reviews — even if FPS is stable and there are no crashes. "Drains battery" reviews on App Store and Google Play directly impact install conversion. Meanwhile, energy consumption is a direct consequence of how efficiently computational resources are used.

Where Extra Consumption Comes From

Unlimited FPS. The most common mistake. Application.targetFrameRate = -1 (or no explicit setting) means Unity renders as fast as it can. On iPhone 15 Pro that's 120 FPS in a simple menu. Menu needs 30 FPS — the remaining 70% of CPU/GPU time is wasted and heats the device.

Particles and effects in the background. An animated menu background with 500 particles runs constantly, even when the user is looking at a push notification. No pause on lost focus — no savings.

GPS, accelerometer, other sensors. If the game requests Input.location or Input.gyro without necessity and the developer forgot to disable — sensors are polled constantly. On Android that's several mW extra.

Network requests without batching. Small HTTP requests every 5–10 seconds (analytics, heartbeat, synchronization) keep the radio module active. Radio is one of the most power-hungry components of the phone.

FPS Management by Context

The right strategy — different targets for different states:

// Gameplay: maximum quality
Application.targetFrameRate = 60;

// Menu, pauses, dialogs
Application.targetFrameRate = 30;

// Background computations (loading, saving)
Application.targetFrameRate = 15;

On iOS also account for ProMotion displays (120 Hz on iPhone 13 Pro+). By default Unity runs at 60 FPS even on 120 Hz screens, but explicitly setting CADisplayLink.preferredFrameRateRange through Native Plugin is worth it if finer control is needed.

OnApplicationPause(true) — reduce FPS to minimum or stop rendering completely here.

Shader Efficiency

On mobile GPU, computation precision matters. Using half instead of float in shaders on Adreno and Mali gives real energy savings, because ALU on these chips is optimized for half-precision. For most game effects (color, UV, lighting) half precision is enough.

Complex fragment shaders with many texture samples are particularly expensive. Each tex2D is a memory access with latency that can stall the pipeline. Baking lightmaps instead of dynamic lighting reduces fragment shader load.

Network Request Batching

Instead of sending game analytics events one by one — buffer and send in batches once per minute. Firebase Analytics does this automatically. If using custom analytics over HTTP — explicit RequestQueue with timer.

On Android WorkManager with setRequiresBatteryNotLow(true) allows deferring non-critical requests until the device is charging.

Verify Results

iOS: Xcode Energy Organizer + MetricKit. MXCPUMetric and MXGPUMetric in didReceive give real consumption data from user reports (aggregated, no PII).

Android: Android Vitals in Play Console → Battery → Excessive wakeups. If the app wakes the device more than 10 times per hour in background — it's a Google flag that affects search visibility.

For local testing — adb shell dumpsys batterystats --reset before test and adb shell dumpsys batterystats after. Shows detailed breakdown by component.

Optimization timeline: three to five business days, depends on number of problem areas and presence of native plugins.