Goodbyte

Clean up your Android photos.

Find the duplicates, the old screenshots and the large files eating your storage. It all happens on your device, so your photos stay on your phone.

Try swiping Example photos, nothing to install
  • 0 photos uploaded
  • 0 analytics or ad SDKs
  • 0 accounts

Coming soon to Google Play

The mess

A camera roll is mostly the same photo, over and over.

Fig 1.0  /  Grouping repeats

36 files · example library

Example library. Goodbyte groups the repeats, you pick the one to keep, and the rest go to the Review Bin rather than anywhere permanent.

The gesture

Swipe right to keep. Swipe left to queue for review.

One photo at a time, so you are judging a single picture instead of a wall of thumbnails. Nothing you swipe is deleted. It is queued.

RightKeep it. Goodbyte stops asking.
LeftInto the Review Bin, still on your phone.
UndoAny time, until you empty the bin.

Drag a card, or use the buttons.

Swipe left to queue, right to keep.

Example photos

Example photo: a tram on a wet street at night. Queued
IMG_20260519_1422.jpg3.8 MB · Photo
Example photo: a night street spoiled by camera shake. Queued
IMG_20260519_1421.jpg2.9 MB · Photo
Example photo: the same cafe table a moment later, one cup removed. Queued
IMG_20260612_0842.jpg2.4 MB · Photo
Example photo: two cups of coffee on a wooden cafe table. Kept
IMG_20260612_0841.jpg2.4 MB · Photo

4 example cards left

The gate

Nothing is deleted until you say so.

Everything you swipe away lands in the Review Bin and stays there, untouched, as a real file on your device. Tap it to put it back, any time before you confirm.

Fig 3.0  /  The path a photo takesThree steps
  1. Queued

    You swipe left, or bin a duplicate group. The file does not move and nothing is removed.

  2. Held

    It sits in the Review Bin with its size and the reason it was picked. Restore puts it back.

  3. Confirmed

    You tap Empty Bin. Android shows one dialog for the whole batch, and only then are the files removed.

There is no automatic clean, no timer and no background deletion. The only thing that removes a queued file is you tapping Empty Bin and confirming it.

The engine

Duplicates are just the start.

Goodbyte also gathers screenshots, and it can map your WhatsApp Media folder into status cache, voice notes and forwarded media once you point it there with Android's own picker. That access covers one folder and you can revoke it any time.

Compression, on the test device these screens were captured from. Goodbyte's medium quality preset estimated an 851 MB video at 340 MB before compressing anything. Your files and your own result will be different.

Goodbyte
21.7 GBof 29.8 GB used
21 items in Review Bin · 371 MB Review
Quick CleanFree up 412 MB
Photos822 MB3% of total
Screenshots250 MBUnder 1% of total

The boundary

Your photos stay on your phone.

Goodbyte needs to read your photos, because it cannot find duplicates without looking at them. Reading is where it ends. The comparing, the scoring and the sorting all happen on your device, and no photo, thumbnail, file name or path is sent anywhere.

  • 0 photos uploaded
  • 0 third party analytics SDKs
  • 0 ad SDKs
  • 0 accounts
  • 0 advertising IDs
Stays on your phone
Photos, thumbnails, file names, paths, duplicate groups, quality scores
Leaves your phone
A pricing download with no body, usage and subscription events keyed to a random install id, and Google Play billing
Deleted after
90 days, and that applies to those events. No photo, thumbnail, file name or path is ever among them.

Turn on airplane mode and Goodbyte still scans, groups duplicates, swipes, compresses and empties the bin. Pricing updates, the milestone events below and Google Play billing are the parts that need a connection.

The complete list, in both directions What never crosses the line, and the three things that do
Fig 4.0  /  What crosses the line, and what never does Complete list
YOUR PHONE Read photosMediaStore Compareon device Score qualitybundled model Local databaseprivate storage NEVER LEAVES THE PHONE Photos, thumbnails, file names, paths DOES LEAVE, AND ONLY THIS 1. Pricing download. No body, and no identifying parameters. 2. Usage and subscription events, keyed to a random install id, plus the campaign click id if you arrived from an ad. 3. Google Play services: billing, install referrer and in app reviews. What crosses Goodbyte's processing boundary A box labelled "your phone" contains reading photos, comparing them, scoring quality and the local database. Photos, thumbnails, file names, paths, duplicate groups and quality scores never leave that box. Three kinds of network activity do leave it: a pricing download carrying no body and no identifying parameters; usage and subscription events keyed to a random install identifier, carrying the campaign click identifier as well if you arrived from one of our ads; and Google Play services handling billing, the install referrer and in app reviews. YOUR PHONE Read photosMediaStore Compareon device Score qualitybundled model Local databaseprivate app storage NEVER LEAVES THE PHONE Photos, thumbnails, file names, paths, duplicate groups, quality scores DOES LEAVE, AND ONLY THIS 1. Pricing download. No body, and no identifying parameters. 2. Usage and subscription events, keyed to a random install id, plus the campaign click id if you arrived from an ad. 3. Google Play services: billing, install referrer and in app reviews.

Verified properties of the app

  • Duplicate matching runs on your device, and the results live in Goodbyte's private app storage
  • Photo quality scoring uses models bundled inside the app, so no image is sent away to be scored
  • No third party analytics SDK, no crash reporting SDK, no advertising SDK, and no user accounts
  • WhatsApp access is limited to the one folder you pick, and you can revoke it any time
  • Android cloud backup is switched off, so none of Goodbyte's local data syncs to Drive
  • Uninstalling Goodbyte removes its local app data from your device

What Goodbyte sends over the network. A pricing download that carries no body and no identifying parameters, and a short list of usage and subscription events. Those are keyed to a random identifier created when you install Goodbyte, and if you arrived from one of our ads the identifier for that ad click is attached to them too, which is how we tell which ads are worth buying. They carry no device ID, no advertising ID, no email and nothing about your photos, and they are deleted after 90 days. The privacy policy lists every field, line by line.

Pricing

Start free. Unlock the rest with Pro.

The scan is free and so are the results. Goodbyte shows you everything it found, and lets you clean some of it every day without paying.

Free

Free scan and full results, plus free cleanups every day.

$0

No account, no card

  • Full storage scan and breakdown
  • Every result visible, nothing blurred out
  • A set number of free cleanups every day
  • Screenshots, large files and the Review Bin
3 day free trial for eligible subscribers

Goodbyte Pro

No daily limit on any of it. Billed through Google Play.

$3.99per week
$9.99per month
$24.99per year

Renews automatically until you cancel in Google Play. Prices vary by country, and Google Play shows yours before you confirm.

  • Unlimited cleaning, no daily cap
  • Unlimited swipe to sort sessions
  • On device video compression
  • Everything in Free, without the limit

Cancelling

Subscriptions renew until you cancel in Google Play.

  • Cancel in your Google Play account, not inside the app. Uninstalling does not cancel it.
  • You keep Pro until the period you paid for ends. If a trial applies, cancel 24 hours before it ends to avoid a charge.

Full detail in the terms of service.

Your camera roll, finally under control.

Goodbyte is for Android. It is not on Google Play yet, so the nearest thing to trying it is the deck above, on example photos, with nothing to install.

See the Review Bin Coming soon to Google Play
Built by Xesturgy Media in Dallas, Texas. Questions: support@goodbyte.app