cpux does not sell your personal data, and nothing it reads about your hardware ever leaves your device. Three parts of the app do involve the internet, and all three are set out below: the advertising that pays for the app, the speed test you start yourself, and crash reporting, which is on from the moment you install.
#The short version
cpux is a device inspector. It reads hardware and operating system characteristics from your phone and displays them to you. None of those readings are ever uploaded, and there is no account and no sign-in.
The app makes network requests in three situations, and only three. The first is advertising. cpux is free, and ads supplied by Google AdMob are what pay for it; fetching one sends Google the information described under Advertising below. No reading the app takes from your device is part of that.
The second is when you tap "Run speed test" on the Network tab: that test measures your connection by transferring meaningless filler data to and from a measurement server, and sends nothing about you, your device, or anything the app has read.
The third is crash reporting, which is on from the moment you install and has no in-app switch. When the app crashes it sends a diagnostic report to Google's Firebase Crashlytics so the fault can be fixed. It carries the fault and nothing about your device beyond its model and Android version.
There is no other code path in cpux that opens a network connection. No screen, no timer, and no background task sends anything about your device anywhere.
#What the app reads
While you have cpux open, it reads the following from the Android platform and the Linux kernel:
- Processor: model, core layout, clock speeds, governor, instruction set features
- Graphics: renderer and vendor names, OpenGL ES and Vulkan versions, driver limits
- Memory and storage: total, used, and free capacity
- Battery: charge level, temperature, voltage, current, health, capacity
- Display: resolution, density, refresh rate, colour capabilities
- Sensors and cameras: the hardware inventory your device reports
- System: Android version, build identifiers, kernel version, security patch level
- Network: the active connection type, whether it is metered, and the IP addresses assigned to your device
- System configuration: animation speed, refresh-rate and battery saver settings, and whether developer options are unlocked — read so the Boost screen can tell you which of them is slowing the device down
#How that information is used
It is read on demand, held in memory for as long as the relevant screen is open, and discarded when you close the app. It is not written to a file, not logged, and not sent off the device.
cpux does not read your contacts, messages, photos, files, location, call history, installed applications, or anything else about you personally. It has not been granted permission to do so, and does not ask for it.
#Advertising
cpux shows advertisements supplied by Google AdMob, a service operated by Google LLC. They are what pays for the app: there is no subscription, no paid tier, no in-app purchase and no charge for any feature.
Filling an ad slot means the AdMob software development kit inside the app contacts Google's ad servers. That request necessarily carries your device's IP address, its model and Android version, the app's identifier and version, the language and region the device is set to, and technical details of the slot being filled. Google uses that to choose and measure the ad, to cap how often you see one, and to detect fraudulent and invalid traffic.
It may also carry your Android advertising ID: a resettable identifier that belongs to the device rather than to you, and which you can reset or delete at any time under Settings → Google → Ads. Deleting it stops personalised advertising across every app on the device.
None of the readings cpux takes from your device are attached to an ad request. No chipset, serial number, build fingerprint, sensor, camera, battery, benchmark or speed test result reaches Google or any advertiser through advertising, or through anything else.
Whether the ads you see are personalised depends on where you are and what you choose. In the European Economic Area, the United Kingdom and Switzerland the app asks before any personalised advertising, using Google's consent tool, and remembers your answer; declining leaves you with non-personalised ads, which are chosen from the context rather than from a profile. You can change that answer at any time from About.
What Google does with the information it receives is governed by its own privacy policy and by the Google advertising technology policies, which describe how data is used by partner sites and apps.
#The speed test
The speed test on the Network tab only runs when you start it. Nothing runs in the background, and no test happens when you open the app or the tab.
It works by requesting a stream of filler bytes and then sending a stream of filler bytes back, and timing both. Those bytes carry no information: they are zeros in one direction and random padding in the other. It also makes a few tiny requests to measure round-trip time, and one request that asks the server which of its locations answered.
The measurement server is speed.cloudflare.com, operated by Cloudflare, Inc. As happens with any website or app you connect to, that server necessarily sees your device's public IP address, the approximate location and internet provider it resolves to, and the timing of the requests. The app shows you all of it on screen after a run, because you should be able to see what the other side saw. Cloudflare's handling of that connection is governed by its own privacy policy.
Nothing that cpux reads about your device — no chipset, serial, build, sensor or battery information — is included in any request. Speed test results are stored only on your device, and are deleted when you clear the history or uninstall the app.
A speed test uses real data. The app tells you the ceiling before you start, defaults to the smaller test when you are on a metered connection, and reports exactly how many bytes the run spent.
#Crash reporting
cpux sends a report when it crashes, so that faults which only happen on particular devices or Android versions can be found and fixed. It is on from the moment you install and the app offers no way to turn it off. If you would rather send nothing at all, uninstalling is the way to stop it; there is no account to close and nothing is retained that could be linked back to you.
While it is off, nothing is collected and nothing is sent. The reporting library is disabled before any of the app's own code runs, not merely told to stay quiet afterwards.
While it is on, a crash sends the following to Firebase Crashlytics, a service operated by Google: the technical stack trace of the fault, your Android version, device model and manufacturer, the app version, how long the app had been running, and a randomly generated installation identifier that is not linked to you or to any account.
A crash report never includes any of the readings the app shows you. No chipset, serial number, build fingerprint, sensor, camera, battery, network or benchmark information is attached to it, and no speed test result.
You can turn it off again at any time from the same switch, and collection stops immediately. Reports already sent can be deleted on request using the contact address below. Uninstalling the app also stops any further reporting.
Google's handling of crash reports is governed by its own privacy policy and by the Firebase data processing terms.
#What is stored on your device
Two things, both small and both local. A number recording which version of these documents you accepted, so the app does not ask you again on every launch. And your recent benchmark and speed test results, so a new run can be compared with an old one.
Neither contains personal information, neither leaves your device, and both are removed when you uninstall the app. Result history can also be cleared at any time from the screen that shows it.
#Permissions
cpux requests only normal, install-time permissions, meaning Android grants them without a prompt and you can review them under App info → Permissions. It asks for no dangerous permission at all: not location, not storage, not the camera, not the microphone, not your contacts.
ACCESS_NETWORK_STATE lets the app report whether you are on Wi-Fi, mobile data, or Ethernet, and whether that connection is metered. INTERNET is used by advertising, by the speed test described above, and by crash reporting. AD_ID is declared by the Google Mobile Ads library and lets it read the resettable advertising ID your device already holds. That same library declares the Android Privacy Sandbox permissions ACCESS_ADSERVICES_AD_ID, ACCESS_ADSERVICES_ATTRIBUTION and ACCESS_ADSERVICES_TOPICS, which let advertising measurement run through the operating system instead of through cross-app tracking. Nothing else in the app opens a network connection.
Wi-Fi network names and mobile cell identifiers are deliberately not shown, because reading them would require location permission, and a device information app has no legitimate need for your location.
#Third parties
cpux carries one advertising library and no analytics. None of the readings the app shows you are sent to anyone, ever, by any of the parties below.
Three third-party services can receive anything at all, and only in the circumstances described above. Google AdMob receives an ad request whenever a slot is filled, carrying the technical and device-level information listed under Advertising. Cloudflare operates the public measurement endpoint the speed test transfers filler data against, and only while a test you started is running; it receives no data about your device. Google Firebase Crashlytics receives a diagnostic report when the app crashes.
The speed test and crash reporting are not used for advertising or profiling, and neither sends anything while you are simply using the app. Advertising is the only one of the three that runs without you asking for it, and it is limited to what an ad request needs.
#Children
cpux is a general-audience utility. It is not directed at children, it is not listed in a families programme, and it has no account, no user content and no messaging.
Because the app carries advertising, it is not built for use by children under the age at which they can consent to data processing where they live — 13 in the United States, and between 13 and 16 elsewhere. If you are below that age, please do not use cpux. Ads served to the app are configured so that Google treats them under its policies for general-audience apps.
#Changes to this policy
If this policy changes in substance, the app will ask you to review the updated version the next time you open it. The revision date at the top of this document always reflects the current version.
#Who is behind this app
cpux is built and maintained by an independent solo developer. There is no company, organisation, or other party involved, and nobody else has access to the app or to anything it reads.
#Contact
Questions about this policy can be sent to fireflexdevelopers@gmail.com.
This document is also shown inside the app, under About, and both copies are generated from the same source. See also the terms & conditions.