Support & recovery

Contact the developer using GitHub Issues. Include the app version, device model, OS version and steps to reproduce. Reports are public; do not attach private photos or unredacted diagnostics. A GitHub account is required.

Selection means removing RAW, not JPEG/HEIF. You lose the original sensor data and RAW editing flexibility.

Cleanup creates and verifies a compressed copy before deleting the entire original pair. Date, location and regular albums are preserved; identity, captions, keywords, face recognition and album order may change. iCloud can sync deletion to other devices. Extra storage is required; space is not freed immediately.

Interrupted work never resumes automatically. To retry, scan again, select the original and repeat both confirmations. Known copies are reused and verified. Recover deleted originals in Photos > Recently Deleted; this may leave both the pair and its copy.

Stopped. Submitted system changes may still complete.

Favorites, edited, hidden, shared and RAW-only photos stay protected. Separate imports are not matched by image content.

Scanning does not download iCloud originals. Pairs needing preparation require an explicit per-pair download confirmation.

Use the navigation icons for Cleanup, Locations, Time, History and Settings; the current feature name appears above the workspace. Settings shows the app version/build and language. The bundled Cleanup sample uses CC0 photos with simulated RAW pairings: it needs no Photos access and never changes your library. Locations and Time operate on photos you explicitly choose and are not part of that sample.

Locations offers Choose a location, GPX track and Reference photos. Choose up to 500 target photos, then select a map location or import a GPX track/choose reference photos. Review the proposed coordinates and matching details before saving. Existing Photos locations and original GPS or supported embedded address fields are protected; unknown, unreadable, unsupported or ambiguous entries are skipped. A camera-clock offset in matching changes only the match, not photo times. Saving rechecks the reviewed photos and references. It changes the Photos location record, without rewriting original EXIF or replacing photos.

Time offers Clock offset and Time zone. Choose photos, set the correction, and review every before/after time shown in UTC before saving. Missing or ambiguous daylight-saving times are skipped. Only the Photos capture-time record changes; original EXIF/time-zone tags and the photo's location stay unchanged. Changes may synchronize through iCloud. Close other photo editors while saving or undoing: rechecks cannot lock out concurrent changes by another app or device.

History separates cleanup records from metadata changes. Metadata undo requires your review and only restores an operation's changed field when the photo still matches its verified saved state; later edits are conflicts and are skipped. Pending, interrupted or unverified operations never resume or undo automatically. Check History and Photos before retrying an uncertain result. Metadata undo cannot recover deleted RAW originals: use Photos > Recently Deleted for cleanup recovery. Keep important originals backed up separately.

JPEG copies receive a container comment so Photos can distinguish them from the original pair. Image coefficients are not re-encoded, but the file bytes change. HEIF exports retain their original resource bytes. Neither preserves the original photo identity. Avoid modifying affected photos on another app or device during cleanup; verification and deletion are not one atomic operation.

One by one prepares and deletes each pair separately. Together prepares and rechecks all copies before requesting one batch deletion. Refusing deletion or a failed operation keeps existing copies. Back up important originals separately; the app does not empty Recently Deleted or guarantee immediate space recovery.

GitHub Issues · keithxc