Nothing.
The app sends no personal data, usage data, device identifiers, location or analytics anywhere, and it shares nothing with anyone. It contains no advertising, no analytics library, no crash reporting service, no account system and no server of its own.
Every reading you take is saved in the app's private storage on your device, where other apps cannot read it. A reading holds what was measured: the signal strength and how much it moved, the band and channel, the link speed, and how quickly your router replied. It also holds when it was taken and for how long, the names you gave the spot and its place, your router's address on your local network (which is how Sonar tells one network from another), and the model of the phone or tablet that took it. If you have granted the location permission, the name of the Wi-Fi network and the hardware address of the access point are saved with it too.
The app also keeps a few settings on the device: the theme you chose, and the place your last reading was filed under.
None of this is uploaded, and the app opts out of Android's backup to Google's cloud. A reading you delete is gone from the device, and uninstalling the app deletes everything it stored.
If you export a survey as a PDF, an image or a CSV, Sonar writes the file to its private cache, replacing the export before it, and hands it to the app you pick in the Android share sheet, with permission to read that one file. From then on it is in your hands and that app's. Sonar itself never uploads it.
An export carries what the app shows about the readings in it, including the model of the device that took them and, where the app could read it, the name of the network. The CSV also carries the access point's hardware address when one was recorded.
Five permissions are declared. Four are granted by Android when the app is installed and never produce a prompt. The fifth, location, is optional, and the app only asks for it if you choose to see the networks around you. The meter, the measurement, the score, the comparison and the report all work without you granting anything.
| Permission | What it is for |
|---|---|
ACCESS_ | Reading the Wi-Fi link your device is already on: its signal strength, link rate, frequency and standard. |
ACCESS_ | Seeing whether Wi-Fi is the active network, and finding the address of your router. |
INTERNET | Timing how long your router takes to answer, during a measurement. This is a packet to your own router on your own network. Nothing is sent to the internet and nothing is sent to us. |
CHANGE_ | Asking Android for a list of the Wi-Fi networks in range, for the channel graph. |
ACCESS_ | Optional. Asked for only from the Networks tab, never when you open the app. See below. |
You may also see a permission named after the app itself, net.. AndroidX, Android's own support library, adds it so that no other app can send Sonar messages meant for its internal use. It grants nothing and never shows a prompt.
Android treats the names of Wi-Fi networks as location information, because a list of nearby networks can be used to work out roughly where a device is. It therefore hides the name of your own network, the identity of the access point you are connected to, and the whole list of networks in range from any app that has not been granted location access.
Sonar declares the permission so that you can choose to see those things. It never asks for it at launch and it is never needed for the meter, the measurement, the score, the comparison or the report. You are only asked if you open the Networks tab and choose to see the networks around you, and the app tells you what granting it unlocks before it asks.
Sonar does not use your location. It never reads GPS or any other location source, it records no coordinates, and it never asks for background location. The only location setting it looks at is whether the system location switch is on, because Android will not hand over network names while it is off. With the permission granted, the network name and the access point's hardware address are saved with each reading, on your device, as described above. If you decline, everything except the network names and the nearby list carries on working.
During a measurement the app sends small packets to your router, on your own local network, and times the replies. That is the whole of its network activity. It contacts no server of ours, because there is not one, and no third party. The Privacy policy and Send feedback buttons in the app open this website in your browser, and the app attaches nothing to them.
The feedback page on this website lets you write by email, and it may also carry a Google Form. What you type into the form goes to Google Forms and is stored there for the maker of the app to read, under Google's privacy policy. Your email address is only included if you type it.
If you write to sonar@halperk.net, or leave an address in the form, your message and your address are read by Alper Karadeniz to answer you. They are not shared with anyone or used for anything else, and they are deleted if you ask.
This site is hosted on GitHub Pages. It sets no cookies, runs no analytics and does no tracking. GitHub may log the requests it serves, including IP addresses, for security, under GitHub's privacy statement. The pages load a web font from Google Fonts, so your browser also makes a request to Google, under Google's privacy policy.
Sonar is meant for people aged 13 and over. It collects no data from anyone, including children.
If this policy ever changes, the change will be noted here with a new date. Any change that involved collecting data would also need a new version of the app.