An Empirical Analysis of Mobile Energy Consumption Across User Configurations Wellington Oliveira University of Lisbon [email protected]
arXiv:2604.25587v1 [cs.SE] 28 Apr 2026
ABSTRACT Mobile devices have become ubiquitous tools for communication, entertainment, and productivity, yet battery autonomy remains a constraint. While energy-saving tips exist, they are often generic, anecdotal, or focused on software development rather than end-user behavior, leaving users to rely on grey literature or tacit knowledge to optimize their device energy consumption, lacking the academic rigor to ensure their effectiveness. This research aims to bridge the gap between technical energy analysis and practical user application by quantifying the energy consumption of different user-controlled parameters. Employing an automated monitoring framework, a series of user interface tests that simulate realistic usage patterns across popular applications (i.e., WhatsApp, Instagram, TikTok, and YouTube) was conducted. The objective is to have a systematic evaluation of the energy impact of user-controllable factors, including device settings, such as screen brightness, refresh rate, connectivity status, interface themes, and battery-saving profiles, combined with more app-specific variables (e.g., video resolution and message size). By analyzing over 12,000 data points, this paper quantifies the real-world impact of common settings, revealing the trade-offs between user experience and device autonomy.
KEYWORDS Mobile Energy Consumption, Automated Testing, Android Battery Analysis, Empirical Engineering, Mobile Apps
1
Bridging this gap requires a shift from theoretical power models to empirical, on-device measurements, reflecting realistic humandevice interaction. Instead of profiling isolated components or static device states, energy consumption must be quantified while users interact with applications. By automating these interactions and monitoring energy draw directly on the smartphone, it becomes possible to isolate and measure the precise impact of user-controlled variables (e.g., screen brightness, interface themes, display refresh rates, and media resolution) under realistic conditions. The primary objective of this research is to demystify mobile battery drain and develop empirically validated, user-centric recommendations that extend device autonomy. To achieve this, an automated monitoring framework was deployed using ebserver [7] to orchestrate user interface tests across globally popular applications, specifically WhatsApp, Instagram, TikTok, and YouTube, combined with a tool functionality, the Flaslight. By systematically combining both general device settings and app-specific configurations, 879 distinct experiments were conducted. The experiments resulted in a robust dataset of over 12,000 data points. Our subsequent statistical analysis challenges several common battery-saving assumptions, revealing, for instance, that Dark Theme resulted in marginal savings compared to the impact of screen brightness, and that reducing video resolution offers negligible battery benefits. To systematically explore these dynamics, this study addresses the following research questions: • RQ1: How significantly do general user settings impact the energy consumption of mobile applications? • RQ2: What is the real-world energetic cost of applicationspecific configurations and actions?
INTRODUCTION
Smartphones have evolved into the central hub for modern daily life, seamlessly supporting everything from high-definition entertainment to essential productivity, communication, and navigation. However, as hardware capabilities and application complexity continue to expand, device energy demands have also increased. Although battery technology and software constructs have seen incremental improvements, battery autonomy remains a hardware bottleneck and a persistent source of frustration for users [1, 2]. Therefore, understanding how everyday usage patterns influence energy consumption is needed to mitigate this constraint. Despite the universal desire to extend battery life [3], end-users are left to rely on generic, anecdotal, or scientifically unverified advice. While there is a body of academic literature addressing mobile energy consumption, it is overwhelmingly targeted at software developers, focusing on code-level optimizations [4–6]. This creates a challenge: technical research rarely translates into practical, actionable guidance for the user. They end up struggling to determine which specific settings or application behaviors minimize energy drain compared to those that offer negligible benefits.
The remainder of this paper is organized as follows: Section 2 presents the related work. Section 3 details the experimental methodology. Section 4 presents the data analysis and answers to the research questions. Section 5 acknowledges the limitations and threats to validity of this study. Finally, Section 6 concludes the paper and outlines directions for future work.
2
RELATED WORK
The literature on mobile energy consumption can be divided into three main areas: technical characterization, developer-side optimization, and user-centric analysis.
2.1
Technical Characterization
Research in this area focuses on component-level power modeling and typically relies on hardware-based measurement. Tools such as the Monsoon Power Monitor [8] provide high-precision readings directly from the power line. Studies like AndroWatts [9] and
EASE 2026, Tue 9 - Fri 12 June 2026, Glasgow, United Kingdom
large-scale OLED profiling [10] utilize these methods to characterize device component behavior. While highly accurate, hardware setups are complex, expensive, and often require physical device alterations that prevent realistic, everyday usage simulations.
2.2
Developer-Side Optimization
To overcome hardware limitations and scale testing, researchers use software-based methods relying on Android’s internal subsystems (e.g., batterystats1 or the BatteryManager API2 ) to estimate consumption based on CPU, screen, and network metrics. Developerfocused tools like GreenSource[11] and E-MANaFA [12] leverage these software metrics to evaluate and optimize application source code. However, these works prioritize developer implementation choices rather than the user-configurable settings.
2.3
User-Centric Analysis
Recent literature has shifted toward understanding the end-user’s role in energy drain. Ferreira et al.[13] analyzed charging habits, while systems like Serenus[14] predict real-time energy usage to reduce user battery anxiety and inform users about the actual energy consumed during their usage. Nevertheless, a gap remains between user intent and capability; Zaragoza et al. [3] highlighted a critical awareness-action gap, showing that while users value energy efficiency, they lack the knowledge to optimize software usage effectively without specific feedback. To provide actionable advice, recommendations must be based on usage rather than technical metrics. Souza et al.[15] proposed a system for settings like brightness, relying on static states (e.g., screen on or off) rather than dynamic application workflows. Aiming to help users optimize their battery usage, the present work integrates user interface automation tools3 to simulate realistic user behaviors like scrolling, typing, and video playback. By wrapping these tests in an extended version of ebserver [7], it is possible to control device parameters and quantify energy drain under interactive conditions that accurately reflect daily user habits.
3
METHODOLOGY
This section details the system architecture and the automated workflow designed to execute the experimental scenarios across the selected mobile applications.
3.1
Architecture
Figure 1 illustrates the system architecture and the coordinated workflow of the experiments. The host machine is managed by ebserver, which parses the setup.json file (1). This file contains all the necessary instructions, including the sequence of tests to run and the specific parameter combinations for each execution. The configuration is highly extensible, allowing any number of general and app-specific variables to be defined for the test matrix. Beyond configuration, ebserver controls the entire execution workflow. It sets the communication via the Android Debug Bridge 1 https://developer.android.com/topic/performance/power/setup-battery-
historian#gather-data 2 https://developer.android.com/reference/android/os/BatteryManager 3 https://developer.android.com/training/testing/other-components/ui-automator
Wellington Oliveira
(adb) (2) to send commands to connect the device, install target applications, and trigger the experiments. It programmatically adjusts device-level settings, such as brightness, refresh rate, and interface theme, to match the test configuration. Before starting a run, all data is wiped from the device’s batterystats history. This eliminates any residual from previous executions, ensuring a clean baseline. On the device side, a Runner application acts as a wrapper to orchestrate the UI testing and controlled energy measurements. Within this application, app-specific UI tests are implemented using the UI Automator. Each test is tailor-made to simulate realistic user scenarios. To call these tests, adb parameters were used to specify the exact general and app-specific variables (3). Once a UI test completes, ebserver stops the monitoring process and proceeds to data collection before iterating to the next configuration. The data collection phase relies on adb dumpsys batterystats to generate a detailed log file for each execution. These logs contain a breakdown of resource utilization (CPU, GPU, memory) and finegrained energy consumption metrics. This includes both the overall energy drained by hardware components (e.g., screen, Wi-Fi) and the specific energy footprint of the target application. The logs are automatically retrieved, organized, and categorized on the host (4). The raw data moves to a pre-processing pipeline (5). Because the necessary metrics are scattered throughout the dumpsys output, regular expressions are used to parse the logs and extract the targeted energy values. Given that minor background OS processes or external factors can occasionally introduce noise into mobile environments, statistical outliers are filtered out from the dataset. The output of this pipeline is a structured CSV file dataset. In the final step (6), the dataset is analyzed to quantify the precise energy impact of each evaluated variable. This analysis, done using Jupyter Notebook, compares the energy footprints across different configuration combinations, enabling the extraction of statistically validated insights regarding user behavior and battery drain.
3.2
Target Applications and Use Cases
The selected applications were chosen as representative archetypes of the most common smartphone user behaviors, prioritizing global popularity and high usage rates. For instance, WhatsApp was selected to represent messaging apps; TikTok and Instagram represent media-heavy social networks, characterized by continuous scrolling; Finally, YouTube was selected as the benchmark for video streaming. Table 1 details the target applications, including their experimental aliases, popularity metrics, and the specific automated UI interactions designed for this study.
3.3
Experimental Control Variables
To isolate and measure the energy footprint of specific device operations, experiments were designed using strict control variables. These variables are divided into two categories: general variables and app-specific variables, as summarized in Table 2. General Variables: These are system-wide settings that directly impact device hardware, such as screen brightness, refresh rate, interface theme, and connectivity (Airplane Mode). These variables are independent of any specific application. Our framework allows for the selective exclusion of these variables when irrelevant (e.g., screen refresh rate is omitted when testing the Flashlight). Notably,
An Empirical Analysis of Mobile Energy Consumption Across User Configurations
EASE 2026, Tue 9 - Fri 12 June 2026, Glasgow, United Kingdom
Server / Host Runner setup
UI Tests
2
5
Extract metrics; Filter outliers
ebserver
adb commands
Ui Automator
1
4 3 dumpsys
Target Application
Analysis & Visualization
6
Figure 1: System Architecture Table 1: Applications and their characteristics Application
Short Form
Category
Reviews
Downloads
YouTube WhatsApp Instagram TikTok Flashlight
YT WPP IG TT LIGHT
Video Messaging Social Media Social Media Tool
150M+ 191M+ 148M+ 69M+ N/A
10B+ 5B+ 5B+ 1B+ N/A
the Power Saving mode acts as an overriding variable. While the system claims it applies several restrictions, only the following actually affected our test environment: (i) limiting CPU speed to 70%, (ii) disabling Always-On Display, (iii) forcing Dark Mode4 . App-Specific Variables: These parameters present how the user interacts with a specific application, controlling the exact workload on the app. A subset of variables that represent the most common real-world usage scenarios was selected for the experiments. Table 2: General and app-specific experimental variables Category / App
Variable
Settings
General
Theme Screen brightness (%) Refresh rate (Hz) Airplane mode Power saving mode
Light / Dark 0 / 50 / 100 30 / 60 / 120 On / Off On / Off
Flashlight Flashlight YouTube YouTube Instagram TikTok WhatsApp
Duration (s) Intensity (%) Video Resolution Duration (s) Duration (s) Duration (s) Message Size (chars)
15 / 30 / 60 0 / 10 / 25 / 50 / 100 240p / 720p / 1440p 15 / 30 15 / 30 15 / 30 100 / 200
UI Actions start video; select resolution; skip to two-thirds of video navigate to chat; type message; send message scroll posts; wait; like posts scroll posts; wait; pause start flashlight
application tests, with the exception of the Flashlight experiment, which only used duration and intensity due to its simplicity. • WhatsApp: The app is opened, navigated to a specific chat, and a message is sent. The app-specific variable is the message size (100 or 200 characters), utilizing predefined text snippets hardcoded into the automation script. • TikTok & Instagram: Both scripts simulate continuous scrolling. The TikTok script scrolls for a set duration, followed by a pause/play action midway. The Instagram script is similar but replaces the pause with a double-click (“like”) on the current post before resuming the scrolling loop. • YouTube: The script opens a specific video, sets the target resolution, skips to two-thirds of the video’s duration, and plays for the set time. The skip is needed to bypass different resolution segments that may have been pre-buffered. The video5 was chosen because its leverages the properties of OLED screens. Keeping the same video across all iterations eliminates confounding variables such as video compression quality, color palette, and audio bitrates.
3.5
Dataset Generation
To evaluate the energy impact across these scenarios, the total number of experimental configurations (𝐸) was calculated as the Cartesian product of the general variables (𝑆) and the app-specific variables (𝐶𝑎 ). |𝑆 | is defined by the formula: |𝑆 | = |𝑇 | × |𝐵| × |𝑅| × |𝑃 | × |𝐴|
3.4
Execution Scenarios
(1)
To simulate realistic behavior, distinct use cases were scripted for each application. All general variables were applied across the
Where 𝑇 represents interface themes (2), 𝐵 screen brightness levels (3), 𝑅 refresh rates (3), 𝑃 battery saving profile (2), and 𝐴 airplane mode (2). Therefore |𝑆 | = 2 × 3 × 3 × 2 × 2 = 72.
4 Different effects from Dark theme; it greatly reduced the OS graphical elements.
5 https://youtu.be/njX2bu-_Vw4
EASE 2026, Tue 9 - Fri 12 June 2026, Glasgow, United Kingdom
Given a set of target applications 𝐴, with 𝐶𝑎 representing the number of app-specific configurations tested for an application 𝑎 ∈ 𝐴. The total number of unique experimental configurations (𝐸) is defined as: ! ∑︁ 𝐸 = |𝑆 | × 𝐶𝑎 + 𝐸 𝑓 𝑙𝑎𝑠ℎ𝑙𝑖𝑔ℎ𝑡 (2)
Wellington Oliveira