PAST (Pixel and Screen Tester) is an Android app for inspecting a phone: its display, its touch screen, its hardware and its sensors, turning what it finds into a report you can keep or hand to a buyer. It is built by an independent developer (m.i.n.a.r.). This page explains, in plain language, what the app touches and what it does with it. The short version: PAST has no server backend, no account, no analytics and no advertising SDK. Every result stays on your device, and the only feature that uses the internet is the speed test.
PAST asks for an unusual number of permissions for an app this private, and the reason is simply what it does: you cannot test a microphone without opening the microphone. Every one of them is listed below with the single feature it exists for, and every runtime permission is requested when you start that feature, never at launch.
Exactly one feature in PAST reaches the internet: the speed test, which downloads and uploads a block of data against Cloudflare’s public measurement endpoints to time your connection. It runs only when you press its button, it needs no account, and it is the only thing in the app that consumes your data allowance. Nothing about you or your device is sent with it, and no result is uploaded anywhere.
The network scanner, the port scanner and Wake on LAN talk to devices on your own Wi-Fi and to nothing else. They open short TCP connections and send small UDP queries (mDNS, SSDP, NetBIOS, and a reverse DNS lookup to your router) to work out what is on the network and what it is called, and where a device publishes a description of itself over HTTP they read that page to learn its maker and model. All of that traffic stays inside your home network, and none of what they find leaves your phone. On Android 16 and later this needs the local network permission, which is requested the first time you open the scanner.
There is no analytics SDK, no crash reporting service, no remote configuration and no advertising identifier anywhere in PAST. The developer receives nothing when you use the app.
Used by the microphone test, which draws a live level meter, and by the self check, which plays a tone through the speaker and listens for it to prove both work. Audio is read from the buffer, measured, and discarded frame by frame. Nothing is ever written to a file, kept in memory beyond the measurement, or transmitted.
Used by the camera test, which opens each physical lens in turn and counts the frames arriving so a sensor that is dead or frozen can be spotted. Frames reach the on-screen viewfinder and a frame counter and go no further: no photo is taken, saved or sent.
Used by the GPS test, the satellite sky tool and the Wi-Fi test. Android puts the list of satellites behind the location permission, because which satellites a receiver can see is itself locating information. To make the receiver listen at all, Android also requires an active location request, so PAST opens one and throws the resulting fix away unread: it is never shown, never stored and never sent. One number is derived from it in memory and immediately discarded, the magnetic declination at your position, which is what lets the sky chart point at true north rather than magnetic north. The Wi-Fi test needs the same permission for a different reason: Android puts the list of networks in range behind it, because the set of networks around a phone locates it. PAST reads how many there are, on which bands and how strong the best one is, never their names, and stores none of it.
Used by one test: Bluetooth, which scans for devices in range because an adapter that reports
itself switched on proves nothing about the antenna. PAST counts what answers and reads the
strongest signal level. It never reads a device’s name or address, never pairs, never
connects, and keeps nothing when the test closes. The permission is declared
neverForLocation, which tells Android the scan must not be used to work out where
the phone is.
Used by the infrared blaster test, on the few phones that have one. It drives the emitter so you can see it flicker through another phone’s camera, which is the only way to tell a working diode from a phone that merely declares having one. It transmits and reads nothing back: the hardware has no receiver to read with.
Used by the connection info page, the Wi-Fi analyser and the network scanner: link speed, standard, frequency, and the list of nearby networks with their channels. The multicast lock is needed so Wi-Fi does not silently drop the SSDP and mDNS replies the scanner is waiting for. Nothing is uploaded.
Used by the mobile network test and the radio cells tool to read signal strength, network type and the identifiers of the serving and neighbouring cells. PAST does not read your phone number, your IMEI, your call log or your messages, and does not have the permissions that would allow it to. Denying this leaves a shorter page rather than a broken one.
Used by one test: the hardware step counter, to prove the sensor hub still counts. The number it reports is read and displayed. No activity is tracked, logged or stored.
Used by the NFC test, which reads any tag you hold against the phone to prove the antenna works. Only the technology list of the tag is shown; its contents are not read, kept or sent.
Used by the fingerprint and face test to open the system prompt. The prompt belongs to Android, runs in the system process, and hands back nothing but whether it accepted. PAST never sees a fingerprint or a face, and could not if it wanted to.
Vibration drives the haptics test and the self check. The location extra commands permission lets the satellite tool clear the receiver’s cached aiding data so a cold start can be timed honestly; it sends a command to the GNSS hardware and reads nothing back.
These are stored locally to make the app work, and never leave your phone:
The verdict of every check you run, the date of the last inspection and the last figure each measuring tool produced are kept in the app’s own private preferences.
The dead and stuck pixels you mark are stored as normalised coordinates in the same private storage. It is the one thing in PAST that cannot be recreated by running the tests again, which is why clearing results asks for confirmation.
Theme, AMOLED mode, haptics and the other preferences, plus any Wake on LAN targets you add with their names and hardware addresses.
The storage speed tool writes about 600 MB of meaningless filler into the app’s own cache and deletes it as soon as the measurement ends: a 96 MB file that is timed, plus ballast whose only job is to push that file out of the system’s memory cache, because otherwise the read speed would be measuring RAM instead of the storage chip. The contents are random bytes and zeroes. Nothing is read from your existing files, and nothing survives the run.
The report can be exported as a PNG image. It is written to a private folder inside the app’s cache and handed to whatever app you pick through Android’s share sheet. It goes nowhere unless you send it somewhere, and PAST never uploads it.
None of the above is included in Android’s automatic backup, so your results never reach Google Drive and are not carried across in a device-to-device transfer. That is a deliberate choice rather than an oversight: a report describes ONE piece of hardware, and restoring last phone’s dead pixels onto a new one would be a lie about the new one. The practical consequence is that a new phone starts empty, including your theme and other preferences.
The optional one-time unlock is sold through Google Play Billing. The payment is handled entirely by Google: PAST never sees your name, your address or your payment details, and stores only a local flag recording that the unlock is active. Google’s handling of the transaction is covered by Google’s own privacy policy.
PAST is not directed at children and does not knowingly collect personal data from anyone, of any age. The app has no account system and no server to collect anything with, so there is no mechanism by which it could.
Everything described above lives in your device’s local storage. "Clear results" inside the app deletes the verdicts, the defect map and the stored tool figures. Uninstalling PAST, or clearing its app data from Android settings, permanently deletes all of it. There is nothing on our end to delete, because nothing is stored on our end.
If this policy changes, the "last updated" date above will change accordingly. Meaningful changes will also be reflected in the app’s release notes.
Questions about this policy or how PAST handles data: reach out at minar.tastic@gmail.com.