Privacy Policy
The short version
- SafeBite has no accounts. We never receive your name, your email, or the names and ages of the people in your household.
- Your household, your Kitchen list and your history stay on your phone.
- The following may leave your phone: a photo if you choose Google reading (you can read it on-device instead), the alert groups your phone joins (held by Google’s messaging service against an install code, never a name), an anonymous count when an alert arrives or is opened, and signed Apple purchase information plus scan counts to enforce cloud allowances.
- No advertising networks, no tracking, no analytics or crash-reporting software, no location access. We do not sell personal information or share it for advertising.
1. What stays on your phone
These are stored only in the app’s storage on your device. We cannot see them.
- Your household: the names you type, whether each profile is an adult, a child or a pet, a child’s age if you enter one, allergens, pet type and your state. An older app version may also have saved an unused alert-strictness answer.
- Your Kitchen: the products, brands and kinds of food you watch, and a small cropped copy of the photo you added a product with.
- Recalls you follow and recalls you marked as dealt with.
- The last 20 checks: the brand, product name and barcode that were read, and any error, kept to help you and us diagnose a failed check. They are never sent to us.
- Settings such as your alert switches, and a copy of the public recall list and its pictures so the app opens quickly.
- A small file the app shares with its own widget and notification components on the same phone, holding the household first names, allergens, pet names and watched items, so an alert can say why it is yours. It never leaves the phone.
If you back up your phone to iCloud or a computer, this app data is included in your backup, under your Apple Account. We have no access to it.
2. What leaves your phone, and why
Photos you check
When you check a product, the app asks for permission before sending a photo to Google Gemini through SafeBite’s protected Cloudflare server to read its label. You can choose to read it on your phone only instead; this may recognize fewer foods. You can withdraw permission in the app’s Privacy & terms screen. If you agree, the photo is resized, stripped of location and camera metadata, and sent through SafeBite’s protected Cloudflare server to Google. SafeBite processes the photo in memory and does not store it. Recognized product details may be retained for up to 24 hours so an interrupted request can be recovered without another AI call. If Google’s service cannot be reached, the photo is read on your phone instead. Google processes the photo under its own terms and privacy policy, linked below; we do not control how long Google retains it.
Alerts
To deliver alerts, your phone registers with Apple Push Notification service and Google Firebase Cloud Messaging. That creates a device token and a Firebase installation ID. Your phone then joins alert groups that are named after:
- your state, and any extra states you add;
- the allergens in your household;
- whether you have a pet;
- the kinds of food and the brands you watch;
- recalls you follow (as a short code).
Google’s messaging service holds those group memberships against the installation ID. These preferences, including allergen and state selections, are linked to this app installation. They are not attached to a name, an email address or a SafeBite account, because we never have one. Names, ages, barcodes and photos are never part of a group name. We send one message to each group a recall concerns; we never see which phones are in a group and keep no list of devices.
If you choose “Not now” when SafeBite offers alerts, the app still registers for quiet delivery so that an alert about your own Kitchen can appear silently in Notification Center, where iOS asks whether you want to keep receiving them. You can turn every group off in Settings → Alerts, or turn notifications off for SafeBite in iOS Settings.
Anonymous alert counts
When an alert arrives, and when you open one, the app sends our server three values: whether it arrived or was opened, a short code for the recall, and a reason category (“kitchen”, “allergy”, “pets”, “near” or “none”). No device identifier, cookie, name or household detail is included, and the values are stored without your IP address. We use the totals to see whether alerts are working. They are kept for about three months.
Proving the app is genuine
Firebase App Check uses Apple’s App Attest or DeviceCheck to confirm that requests come from a real copy of SafeBite on a real device. This produces a device-level attestation handled by Apple and Google. It checks the app and device without asking for your name or Apple Account.
Downloading recalls and pictures
The app downloads the public recall list and its pictures from our server, which runs on Cloudflare. A small number of pictures load directly from the websites that publish them, including fda.gov, openfoodfacts.org and retailer image servers. As with any website, those servers and Cloudflare see your IP address when your phone connects. Our server code does not store or log it. Cloudflare may process connection information under its own privacy policy, linked below.
Visiting these policy pages
These privacy, terms and support pages are hosted by GitHub Pages. When you visit them, GitHub logs your IP address for security purposes under its own Privacy Statement. The app does not load these pages unless you choose to open a policy or support link.
Purchases
SafeBite+ subscriptions and tips are billed by Apple. We never receive your payment details or Apple Account email or password. For cloud scans, our server receives signed app and subscription purchase information and checks subscription status with Apple.
The server verifies Apple-signed app and subscription information and Firebase App Check before authorizing a cloud scan. A hashed app purchase identifier links scan counts across devices using the same Apple Account; SafeBite does not receive your Apple Account email or password. Monthly counts, request identifiers and abuse-prevention records are retained for the current and two preceding calendar months, then removed automatically. Clearing local data, reinstalling or changing the phone’s clock does not reset the server allowance.
3. What we never do
- No accounts, sign-in, or email collection.
- No advertising software and no tracking across apps or websites.
- No analytics or crash-reporting software.
- No access to your location, contacts, or photo library. Your state is chosen by hand, and photos you pick are handed to the app one at a time by iOS.
- We do not sell personal information, and we do not share it for advertising.
4. Companies that process data for the app
| Company | What it handles | Its policy |
|---|---|---|
| Google (Gemini, Cloud Messaging, App Check, Installations) | Photos you check; push registration and alert groups; app attestation | policies.google.com/privacy · firebase.google.com/support/privacy |
| Apple (Push Notification service, App Attest, App Store) | Delivering notifications; attestation; purchases | apple.com/legal/privacy |
| Cloudflare | Serving recalls and pictures; forwarding scan photos to Google; enforcing shared scan allowances and spending limits; holding temporary recognition results and anonymous alert counts | cloudflare.com/privacypolicy |
| GitHub Pages | Hosting these policy and support pages | GitHub Privacy Statement |
5. Deleting your information
Settings → Privacy & terms → “Delete everything on this phone” removes your household, your Kitchen, followed and dealt-with recalls, the check history, your alert settings, pending reminders, and the file shared with the widget and notification components, and it leaves every alert group. Deleting the app removes its ordinary app data. It does not reset the server’s cloud scan allowance or remove the short-lived anti-abuse records described above.
What that cannot reach: copies inside a device backup you made earlier (manage these in iOS Settings → your name → iCloud, or on your computer), and alerts already showing in Notification Center until you clear them. Server scan records associated with your hashed app purchase identifier follow the retention period above. Contact us through the support page about access or deletion of those records.
6. Children
SafeBite is meant for the adults who run a household. It is not directed at children under 13, and we do not knowingly collect personal information from children. A child’s profile is entered by an adult, is stored only on that adult’s phone, and is never sent to us.
7. Your rights
Depending on where you live, you may have rights to access, correct or delete personal information, or to object to certain uses. You can edit or delete local household data in the app, and manage push registration with Apple and Google. For server scan records associated with your app purchase, contact us through the support page; we will verify your request and explain any limited retention needed to prevent abuse. If you believe we hold information about you, contact us and we will help.
8. Security
All connections from the app use HTTPS. Information on your phone is protected by iOS and your device passcode.
9. Changes
If this policy changes in a way that matters, we will update the date above and say so in the app’s release notes or inside the app before the change takes effect.
10. Contact
Qupid, LLC
freeclaimapp@gmail.com