Effective 2026-10-13
Privacy Policy
This policy explains what SnapMacro (the app, "we", "us") collects, why, and what we do not do. In short: your logs and photos live on your device, meal photos and coach prompts are sent for analysis and not kept by us, and we do not run ads or sell data.
What stays on your device
SnapMacro does not ask you to create an account. The following is stored locally on your iPhone (and, if you leave iCloud backup on, backed up to your own iCloud as described below):
- Your profile: first name (optional), age, sex, height, weight, goal, activity level, coaching tone and any situation-specific details you enter (for example medication, cycle or training details).
- Your meal log, meal photos, weight entries, targets, and coach messages and notes.
- A random install identifier stored in the iOS Keychain.
You can export this data as JSON, or erase it in the app under Profile, Delete all data. Deleting the app also removes it.
What is sent off your device
Meal photos and food text
When you scan a meal or a nutrition label, the photo (compressed) and any note you type, or a meal you describe in words instead of a photo, are sent over an encrypted connection to our server, which runs on Cloudflare Workers. The server forwards the request to an AI provider to produce the nutrition estimate and returns the result to your phone.
Coach requests
Coach chat, daily summaries and pattern messages are generated by AI. To do this, the app sends text to the same server and AI providers. That text can include your first name (if you gave one), your goal and coaching tone, your calorie and macro targets, what you have logged today (totals and meal names), your seven-day average, whether you practice intermittent fasting, and, if you use GLP-1 tracking, the number of days since your last logged dose, and, if you use the GLP-1 check-in, your recent appetite, nausea and energy ratings, plus your chat messages.
AI providers
Our primary provider is Anthropic (Claude models). If it is unavailable, requests fall back to Google (Gemini models). These providers process the content to produce a reply. Each has its own terms and privacy policy and its own retention practices, which we do not control.
Our server
Our server does not save your photos or the text of your requests, and our code does not write them to a database. To enforce daily usage limits and protect the service it stores:
- A daily request counter, keyed to an anonymous identifier (your RevenueCat app user ID, or the random install identifier), to a device key created by Apple App Attest where supported, and, for free use without App Attest, to your IP address.
- An App Attest public key and counter used to verify requests come from a genuine copy of the app.
- A short-lived cache of whether your subscription is active.
Your IP address is necessarily visible to our server and Cloudflare when your phone connects. Our server code logs error and warning messages for diagnostics (for example, a failed verification or an upstream error code). These do not include your photos or messages.
Nutrition database
The server has an optional feature that looks up food names in the USDA FoodData Central database to refine nutrient values. It is currently switched off. If enabled, only food names and search terms are sent, not photos.
Subscriptions
Purchases are handled by Apple. We use RevenueCat to manage subscriptions. RevenueCat receives an anonymous app user ID, your purchase and entitlement status, and standard device and app information. It does not receive your meals or photos. See RevenueCat's privacy policy for how it handles that data.
Apple Health
Apple Health is optional and off until you grant permission. With permission, SnapMacro reads weight, active energy and steps to refine your calorie estimate, and can write your logged nutrition (energy, protein, carbohydrates, fat, fiber, sugar, sodium) to Health. Health data is used on your device. We do not send raw Health data to our server. Targets the app calculates on your device, which can reflect your Health weight trend, may be included in coach requests as described above, and we do not use it for advertising. You can change access at any time in the Health app or iOS Settings.
Product analytics
To understand which parts of the app work and which do not, the app sends anonymous usage events to our server, for example which onboarding step was reached or whether a scan succeeded. Our server forwards these events to PostHog, our analytics provider, using a hashed identifier and without your IP address. Events do not include meal content, photos, messages or health data. The app contains no analytics SDK; events go only through our server. You can turn this off in Profile.
iCloud backup
If iCloud backup is enabled, which is the default when you are signed in to iCloud, your app data is backed up to your own private iCloud database using Apple CloudKit. We cannot access it. Meal photos stay on your phone and are not included. You can turn backup off in Profile. Deleting all data in the app also deletes the backup.
Camera, photos and notifications
If you dictate a meal, speech is converted to text by Apple's speech recognition, which may process audio on Apple's servers under Apple's privacy policy. SnapMacro only receives the resulting text.
The camera and photo library are used only to capture or choose meal photos you want analyzed. Notifications, if you allow them, are scheduled on your device (for example daily summaries).
What we do not do
- We do not show ads and we do not sell your data.
- We do not use third-party advertising or analytics SDKs in the app. The only third-party software development kit we include is RevenueCat for subscriptions.
- We do not build a profile of you on our servers.
Retention and deletion
Data on your device stays until you delete it. Server-side counters are tied to anonymous identifiers and are used only for daily limits. To ask about data held on our server, or to ask for deletion, contact us at the address below and include your RevenueCat app user ID if you can find it.
Children
SnapMacro is not intended for anyone under 16 and we do not knowingly collect data from them. The app does not accept an age under 16.
Your rights
Depending on where you live, you may have rights to access, correct, delete or export your data. Most of your data is on your device where you can export or delete it directly. For anything else, contact us.
Changes
If we change this policy we will update the date above and, for material changes, tell you in the app.