PieceFetch Privacy Policy
Effective 27 October 2026.
PieceFetch is made by Edward Palmer. You can reach the developer at piecefetch@gmail.com.
The short version
Your puzzle photos and puzzles stay on your device, unless you choose to send a problem report. PieceFetch has no accounts and no ads, and does not track you. Unless you turn it off, it sends crash reports, performance measurements and counts of how its features are used to Google Firebase, so problems can be found and fixed. You can turn that off in Settings at any time.
What stays on your device
- Photos. Photos you take of puzzle pieces, box art and progress are processed on your device. They are not uploaded unless you send a problem report (see below).
- Voice commands. If you turn on voice commands while placing pieces, PieceFetch listens through the microphone and turns speech into text with Apple's speech recognition, set to run entirely on your device. It only acts on its command words. Nothing you say is recorded, stored or sent anywhere, and it stops listening when you tap the microphone again, leave the screen or finish the puzzle.
- Puzzles and timing. Your puzzles, piece matches, timer sessions and progress counts are stored on your device only.
- Purchases. Purchases are handled by Apple. PieceFetch reads which products you own from the App Store on your device, and keeps a local record of them so paid features work offline. The developer does not receive your name, Apple ID or payment details.
Diagnostics sent to Firebase
When Share Diagnostics is on (Settings → Privacy), PieceFetch uses three Google Firebase services:
- Firebase Crashlytics receives a report when the app crashes: the stack trace, the app's state at the time, and device and operating-system details such as the model and OS version.
- Firebase Performance Monitoring receives timings of how long the app takes to start and to process photos, with device, OS, app version, network type and country. It uses your IP address to work out the country.
- Google Analytics for Firebase receives usage events: which features you use and how they went, as counts and choices. For example: how many pieces were found on a sheet and which photo checks it failed, how many suggested placements fit or didn't fit, how far a session got, which purchase screen was shown, and whether a purchase completed, was cancelled or failed. Events come with device, OS, app version and country, worked out from your IP address. Advertising features are off.
These services identify what they receive with a random installation ID that Firebase creates for the app. It is not linked to your name, email or Apple ID, and it is not used for advertising or to track you across apps or websites. No photos, puzzle names, puzzle contents or anything you type are included.
Problem reports
If something goes wrong while placing pieces or counting progress, you can tap Report a Problem and send a report. Nothing is sent until you tap Send. A report contains:
- what you wrote;
- the photos you took during that placing session (sheets of pieces, and the puzzle itself for Place by Shape), with location data removed;
- for progress, the progress photo and what PieceFetch counted on it, with location data removed;
- the box image, and the piece outlines and matches PieceFetch worked out from the photos;
- the app version, device model and iOS version;
- a reference, such as PF-7K3Q9D, shown to you after sending.
It does not contain the puzzle's name, maker or details, your name or your Apple ID.
Reports are stored in Google Firebase Storage. Uploads are checked with Firebase App Check, which uses Apple's App Attest to confirm they come from the real app. As with any upload, Google receives the IP address it comes from.
The developer uses reports only to find and fix problems and to improve PieceFetch and its algorithms. They are not used to train machine-learning models, and they are not shared with anyone else. A report is kept until you ask for it to be deleted.
Google processes this data as a service provider for the developer, under the Firebase data processing terms: https://firebase.google.com/terms/data-processing-terms. Google's description of what Firebase collects is at https://firebase.google.com/support/privacy.
How long diagnostics are kept
Firebase deletes diagnostic data on its own schedule:
- Crash reports and their identifiers: 90 days.
- Performance data linked to an IP address: 30 days; other performance data: 60 days.
- Usage events: 2 months.
Your choices
- Turn off Share Diagnostics in Settings → Privacy. Nothing more is sent from that point on.
- Deleting the app deletes everything PieceFetch stored on your device.
- To ask about or delete diagnostic data already sent, email piecefetch@gmail.com.
- To delete a problem report, email piecefetch@gmail.com with its reference.
Children
PieceFetch is not aimed at children and does not knowingly collect personal information from them.
Changes
If this policy changes, the new version will be published here and in the app, with a new effective date.