Privacy should be understandable.
We aim to minimize unnecessary data collection and explain each product’s boundaries. The details below describe the current beta of each app, the version offered for download.
Product details last checked against the current builds: 15 October 2026
This page is a plain-language overview, not a substitute for legal documents or legal advice.
This website
- No analytics, advertising pixels, session recording or third-party trackers.
- No accounts, forms or newsletter sign-up that send your data anywhere.
- No third-party scripts or fonts; everything is served from this site.
- The website itself sets no cookies. Your language choice is part of the address (/en or /id).
- The hosting provider may keep standard access logs, such as IP address, requested page or file and time, to operate and protect the site.
- If a third-party service is ever added, this page will say what it receives and why before it is enabled.
Heirst Clean
- Does not request Android’s internet permission, so the operating system does not let it send data anywhere. Image comparison runs on your phone.
- No Heirst server, analytics, telemetry, ad or tracker SDK, Google Play Services or Firebase. Cloud backup and device transfer are switched off.
- Reads your media library with the media permission you grant, and other files only in folders you pick.
| Permission | Why the app asks for it | Android name |
|---|---|---|
| Photos, videos and audio | Read the media library to find duplicate, similar, blurry and large media. | READ_MEDIA_IMAGES · READ_MEDIA_VIDEO · READ_MEDIA_AUDIO |
| Selected photos only (Android 14+) | Lets you share only some photos; results then say the rest is not visible. | READ_MEDIA_VISUAL_USER_SELECTED |
| Storage (older Android versions) | Storage access on older Android versions only. | READ_EXTERNAL_STORAGE · WRITE_EXTERNAL_STORAGE |
| Uninstall request | Opens Android’s own uninstall dialog, one app per confirmation. | REQUEST_DELETE_PACKAGES |
| Usage access (granted in Settings) | App sizes, when apps were last used, and the storage breakdown by type. Without it, app statistics run in a limited mode. | PACKAGE_USAGE_STATS |
| Media management (optional, Android 12+) | Avoids repeated confirmations when moving media to Trash. Never required. | MANAGE_MEDIA |
| Notifications and foreground service | Keeps a long scan running with a visible notification. Asked for when the first scan starts. | POST_NOTIFICATIONS · FOREGROUND_SERVICE · FOREGROUND_SERVICE_DATA_SYNC |
Deliberately not requested
- Internet (INTERNET)
- All-files access (MANAGE_EXTERNAL_STORAGE)
- The full list of installed apps (QUERY_ALL_PACKAGES)
- Clearing other apps’ cache (CLEAR_APP_CACHE)
- Killing background processes (KILL_BACKGROUND_PROCESSES)
- Accessibility services
- Photo location (ACCESS_MEDIA_LOCATION)
Heirst Secure
- No Heirst server, analytics, crash reporting, ad or tracker SDK, Google Play Services or Firebase, automatic blocklist download or HTTP call.
- Threat-signature and blocklist files are loaded by you; nothing is downloaded automatically.
- The optional DNS shield sends DNS lookups to the DNS server your device already uses. That is the only network traffic the app creates.
| Permission | Why the app asks for it | Android name |
|---|---|---|
| All installed apps | Needed to list and audit every installed app. | QUERY_ALL_PACKAGES |
| Internet, network and Wi-Fi state | Used only by the DNS shield to forward DNS lookups to your device’s DNS server. | INTERNET · ACCESS_NETWORK_STATE · ACCESS_WIFI_STATE |
| Storage (Android 12L and older) | File scanning on older Android versions; newer versions use the folder picker. | READ_EXTERNAL_STORAGE |
| Notifications and foreground service | Shows new-app warnings, and a notification while the DNS shield is on. | POST_NOTIFICATIONS · FOREGROUND_SERVICE · FOREGROUND_SERVICE_SPECIAL_USE |
| Uninstall request | Opens Android’s own uninstall dialog; you confirm every uninstall. | REQUEST_DELETE_PACKAGES |
| Run at startup | Keeps the periodic new-app check scheduled after the phone restarts. | RECEIVE_BOOT_COMPLETED |
| VPN (system consent dialog) | Required by Android to run the local DNS shield. Only one VPN can be active at a time. | — |
Limits of local processing
- Local-first does not mean that your operating system, file provider, DNS resolver, hosting platform or any service involved in a workflow you choose never processes data.
- No product is perfectly private or perfectly secure.