Guide

Are photo cleaner apps safe? What to check first

A cleaner asks for your whole gallery, which is fair: finding duplicates needs every photo. The question is what else it holds and what it does with the files. Here are the checks, all of them on the phone itself, and what a good answer looks like.

The short answer

The check Where to look A good answer
Which permissions it holds Settings, Apps, the app, Permissions Photos and videos, perhaps Music and audio (one permission, Files and media, on Android 11 and 12), notifications if it reminds you. Nothing it cannot explain.
All files access Settings, Apps, Special app access The cleaner is not among the apps allowed.
Accessibility service Settings, Accessibility The cleaner is not there, and never asks to be.
Internet The developer's own statement, and the app's data usage in Settings No internet permission at all, with a way to verify it, and a data usage of none.
Where removed files go Remove one photo and look Android's trash, with a Restore button, not gone for good.
Who confirms Remove one photo and look Android's own dialog, or the app's own confirmation only under an access you turned on.

What a photo cleaner needs, and what it does not

Finding duplicates, big videos and old screenshots takes one thing: permission to read your photos, videos and audio, which Android grants per kind and can limit to a selection. Everything else is optional or unnecessary. Showing which apps take space takes Usage access, which is optional and which a cleaner should ask for in context, never at setup. Confirming a large removal once instead of once per group takes media management, again optional. A weekly reminder takes notifications.

What it does not need: a connection to the internet, since comparing files is arithmetic a phone does alone; All files access, which reads, and can delete, every file in your phone's shared storage, your documents included; an accessibility service, which can watch and operate the screen; or a list of every app you have installed. A cleaner that asks for any of these is doing something beyond cleaning your gallery, and it should say what.

Check the permissions

  1. Settings, Apps, the cleaner, Permissions. Photos and videos is expected, and Music and audio if it reviews audio files; on Android 11 and 12 the two are one permission, Files and media. Notifications is expected only if you turned a reminder on. Anything else deserves a reason.
  2. Settings, Apps, Special app access. Open All files access and make sure the cleaner is not allowed: a photo cleaner has no use for your documents, and an app with that access can delete files without any dialog. Open Usage access and Media management apps to see which optional accesses it holds, and whether you remember granting them.
  3. Settings, Accessibility. Under downloaded or installed apps, a photo cleaner should not appear. An accessibility service is how an app taps through other apps' settings for you, and it is a power no cleaner should hold.
  4. The Data safety section on the app's Play listing. It is filled in by the developer, so treat it as a claim, but a claim of no data collected and no data shared is a public commitment worth having.

Menu names vary a little between phone makers; the search box at the top of Settings finds each of these by name.

Check the internet

Most Android phones do not list the internet permission on the Permissions screen, so this one takes two steps. First, the developer's own statement: an app without the permission cannot connect at all, whatever its other code wants, and a developer who has built it that way will say so plainly. Second, the per-app data usage in Settings, under Network, Data usage or the app's own page depending on the phone, which shows how much data each app has used. An app that cannot connect shows none, ever.

How ClutterScrub handles it: it does not declare the internet permission, so Android blocks every connection. If a library it uses declares the permission, the build strips it, and a check fails the build if it ever reaches the app. The copy Google Play delivers also carries Google's own licence check, which asks the Play Store app whether the copy came from Play; the privacy policy explains it, and the privacy section of the features page lists each claim with what enforces it.

Check where removed files go

Remove one photo you do not mind losing and watch what happens. On Android 11 and newer a cleaner can move it to the system trash, where it stays for 30 days and can be restored to its folder; or it can delete it permanently, in which case nothing on the phone can bring it back. A trash by default, with a Restore button you can find, is the mark of a cleaner built for mistakes, yours and its own. The trash and restore guide explains the 30 days.

The Screenshots screen with Android's own dialog on top: Allow ClutterScrub to move 4 photos to trash?, with previews of the files and Deny and Allow buttons. Behind it, the footer reads 4 items, 69 kB selected, with Delete permanently and Move to trash.

The dialog to expect on Android 11 and newer: the system itself asks before an app moves anything to the trash, and it cannot be skipped without an access you granted.

Check who confirms

Since Android 11 an app cannot trash, restore or delete your photos without the system asking you, in its own dialog, once per group: Allow ClutterScrub to move 3 photos to trash?, Deny or Allow. That dialog is your guarantee that nothing moves unseen, and no cleaner can skip it on its own. Two accesses you can grant change that. All files access lets an app delete files in shared storage outright, no dialog, which is why the checklist above starts with it and why a photo cleaner should never hold it.

The other is media management, an optional access on Android 12 and newer that you grant in Android's settings. With it, the system carries out an app's requests without the dialog, so the app's own confirmation is all that stands between you and a removal. Grant it only to an app that confirms every removal itself, naming what it is about to do, and that offers it in context rather than demanding it at setup.

How ClutterScrub handles it: it offers media management only under full media access, when a removal would take more than one of Android's dialogs, in a sheet that asks Confirm once instead?, and shows its state in Settings. With it on, and all your photos and videos allowed, the app asks you once before every move to the trash and every permanent delete, naming the count and the size, and a progress card with Stop keeps what you already confirmed. With it off, Android asks once per group of up to 2,000 items.

What cleaner apps quietly get wrong

  • Alarm instead of information. A red screen that says the phone is at risk is selling something. A gallery is not a threat; a cleaner should show sizes and dates and let you decide.
  • Promising a faster phone. Removing photos changes how much space you have, nothing else. Claims beyond that are a sign the app does more than clean photos.
  • Counting other apps' caches as yours to clear. A cache belongs to its app and comes back. A cleaner that clears it for you needs access no cleaner should have; the honest route is each app's own Settings page.
  • Deciding for you. Pre-ticked similar photos and one-tap removals of hundreds of files move the mistakes from the app to your gallery.
  • Needing an account. Nothing about cleaning a gallery requires signing in. An account is where your usage, and sometimes your files, go.

A two-minute test on your own phone

  1. Turn on airplane mode and run the cleaner. Everything it offers should still work.
  2. Remove one photo. Expect Android's dialog, or a clear confirmation from the app under an access you granted; then find the photo in a trash and restore it.
  3. Afterwards, check the app's data usage in Settings. It should be none.

Cleaner app safety, answered

The questions people ask before handing an app their gallery.

Not on Android 11 and newer unless you have granted it All files access, which lets an app delete files outright, or media management. Trashing, restoring and deleting are requests the system shows you in its own dialog, once per group, and the app cannot skip it. With media management on, Android shows no dialog, so only a confirmation the app builds itself stands between you and a removal, which is why that access belongs only with an app that asks you every time.

Some analyse photos on a server, and some send usage data through analytics or advertising libraries; the Data safety section on the Play listing is where a developer declares either. ClutterScrub cannot: it has no internet permission, so Android blocks every connection, and the fingerprints it computes stay on your phone.

That access is what finding duplicates needs; a selection of photos cannot be searched for copies. The safety question is what else the app holds: the internet, All files access, an accessibility service, an account. A cleaner with none of those can read your gallery and do nothing with it but show it to you. Android 14 and newer also let you grant a selection instead, which ClutterScrub works with, showing partial totals.

An optional Android access, on Android 12 and newer, that lets the system carry out an app's trash, restore and delete requests without showing its dialog for each group. Turn it on for an app only if it confirms each removal itself; ClutterScrub does, naming the count and the size, and offers the access only under full media access, when a removal would otherwise need several dialogs. Off, Android asks once per group, and everything still works.

No analytics, advertising or crash-reporting library is in the app, and there is no account. What it learns about your files, a scan index and the fingerprints and quality measures of your photos, stays in the app's private storage on the phone and goes with the app. The privacy policy lists it, along with the one piece of Google's own code that Play adds when it delivers the app, its licence check.

Built to pass its own checklist.

No internet permission, no All files access, no accessibility service, Android's trash by default and your confirmation before anything moves.