Privacy Policy

Draft – not yet in effect. Highlighted items are still to be confirmed before ZMacros launches.

Version: VERSION · Effective date: EFFECTIVE DATE Controller: LEGAL ENTITY NAME, REGISTERED ADDRESS Privacy officer: the founder, reachable at privacy@zmacros.com Data protection officer: Not appointed

Security reports: security@zmacros.com

1. The short version

2. What we collect and why

This policy applies wherever you live. The Regional Supplements add local rights. Washington, Nevada and Connecticut health-data rules are in the Consumer Health Data Privacy Policy.

"Device" below means the app's private storage on your phone. Other apps cannot read it, and uninstalling removes it. We add no encryption of our own on top of your phone's, so use a passcode. "Our servers" means our database, hosted by Supabase on Amazon Web Services in the United States. Each account can read only its own rows, apart from what section 5 describes.

Your phone's own backup (iCloud on iPhone) may include data and photos ZMacros stores on your phone, depending on your backup settings. Apple handles those backups under its own terms. On a new phone, sign in and your synced data comes back; data you never synced may be lost if you delete the app.

2.1 Your account

Data Why Where
Email and password (stored as a hash) Sign-in, recovery, account emails Our servers
Sign-in session Keeping you signed in Phone's secure storage; browser storage on our website dashboards
Display name Shown to support staff Device
Region and time zone Units, rules that apply to you, when your day starts Device
Random account ID Linking your records and subscription Our servers; RevenueCat

The app signs you in with email and password. Our website dashboards for staff let you sign in with Google or Apple, which gives us your name and email from that provider, or with a 6-digit code we email you. Our sign-in provider, Supabase, sends and checks the code. We do not ask for a phone number.

We send account emails only, such as sign-in links, password resets and notices of important changes. No marketing email; if that ever changes, we will ask first and every email will have a one-click unsubscribe.

2.2 Your body and goals

Data Why Where
Year of birth Age rules and targets Device. Our servers before your first AI photo scan, so the server can check your age
Sex, height, activity level, goal Working out targets Device
Pregnancy or breastfeeding (optional) Choosing nutrient reference values Device. Included in your export
Targets and their history Showing targets Device
Weekday calorie schedule, Precision mode setting Targets by day Device and our servers
Weight entries Your trend Device and our servers

2.3 What you eat

Data Why Where
Food diary, saved meals, quick-add presets, favourites, private custom foods Logging Device and our servers
Food searches Finding foods Sent to the food databases in section 6. We count searches but do not keep the words
Barcodes you scan Finding the product Our server, which asks Open Food Facts about new codes without your account details. Signed out, or if our server cannot answer, your phone asks Open Food Facts
Meal photos you scan AI food recognition Section 3. Not kept on our servers
Corrections to AI results Section 3 Our servers
Your edits and picks: entries you changed (with the old and new amount) or deleted (with its calories), entries added for an earlier day, scanned entries you fixed after saving, and which search result or suggestion you tapped, its place in the list, the meal and the hour. Never the words you searched Kept so a later version of the app can make suggestions and estimates more accurate for you, on your phone. Nothing uses it yet Device only. Never sent to us or anyone else. In your export

To fill in a food's figures, you can photograph its nutrition label. The app reads the label's text on your phone with Google's ML Kit text recognition. The photo stays on your phone and is deleted once read; it is not sent to us or to any AI service.

2.4 Your activity

Data Why Where
Workouts and programs you log Tracking training Device and our servers
Fasting timer and its history Fasting Device
Read from Apple Health, if you allow it: steps, active energy, exercise minutes, workouts, body fat percentage, walking and running distance and flights climbed, each with its own switch (used for the steps widget and step history) Daily activity, and targets on workout days Device only
Read from Health Connect on Android, if you allow it: steps, active calories, exercise sessions, body fat The same Device only
GPS route of an activity you record Distance, pace, route map Device

Apple Health and Health Connect are optional and use your phone's own permission screen. ZMacros reads only the types you allow, never writes to them and does not use what it reads for ads. To disconnect, use Settings → Health → Data Access & Devices → ZMacros on iPhone, or Health Connect → App permissions → ZMacros on Android. ZMacros has no direct link to Fitbit, Garmin, Strava or other services, but may read their data from Apple Health or Health Connect.

Location is used only while you record an activity you started, including with the screen off, which is why your phone may show "background location". This is the same for users under 18. To draw the route map, the app loads map images from Apple Maps on iPhone (Google Maps on Android), which receives the map area, your IP address and device details. An export includes each route's exact start and end points, so take care when sharing it. We do not combine people's routes into heatmaps.

Your Today background, profile photo and Recently eaten thumbnails stay on your phone. If you use Animated cards, your phone finds shapes in your Today background and cuts out part of it, using Apple's own image tools on iPhone; the cut-outs are saved next to the photo. Nothing is sent to us or to any AI service. We do not upload or export these images.

2.5 Subscriptions

Apple or Google takes payment; we never see your card. When the app starts, it contacts RevenueCat, which tracks your plan. RevenueCat receives a random ID (your account ID once you sign in, never your name or email), your platform, app version and IP address, and the purchases the store reports. We keep your plan status and purchase events on our servers. The terms you agreed to at purchase stay on your phone.

Your purchase country. The store tells us the country or region of the Apple or Google account you bought with. We use it to set your plan's price level and monthly scan allowance, and check it again at each renewal (Terms of Service 6.4). We keep it with your plan status.

2.6 Coaches

ZMacros has no coaching features in this version, so no coach can see your data.

2.8 Support and feedback

Feedback and bug reports you send in the app are kept with the app area, app version, device type and system version, linked to your account so we can reply. If you are signed out, they wait on your phone until you sign in. If you email us, we keep the email and our reply. We keep each piece of feedback or bug report for up to 2 years after its last activity (a change you or we make, our reply, a note or a status change), then delete it with its notes and history.

2.9 Safety and security records

We keep:

When you start a rewarded ad, the app sends a random install ID from your phone's secure storage, so one phone cannot collect unlimited ad credits. Our server keeps only a salted, one-way hash. The ad-credit hash is deleted with your account. On iPhone the ID can survive an uninstall.

2.10 In-app analytics and crash reports

Analytics is off until you turn it on in Settings → Privacy and consents, and offered only in the countries listed in the Regional Supplements. Elsewhere, or if we cannot tell your country, nothing is recorded. If on, we record, linked to your account, with the app version, your phone type and the date and time:

Analytics never records what you ate, your weight, body measurements, workouts, location, photos or the content of anything you write. Analytics goes to no analytics company. Turning it off stops new recording; events already recorded are deleted after 13 months or with your account.

Crash reports. The app sends no crash or error reports today. The only exception is the yes-or-no note above that the last session closed unexpectedly, sent only with analytics on.

2.11 Storage on your phone, and our website

The app uses no cookies. It keeps your diary, settings, consent choices, purchase terms and the record of your edits and picks (section 2.3) in its private storage, and your sign-in session and install ID in secure storage. RevenueCat's code stores an app user ID and purchase details there.

Google's ML Kit code, which reads label text on your phone, sends Google technical usage reports (device and app details, performance and error codes, and an ID for the installation), not the photo or its text.

Google's ad code stores and reads information on your phone to show and count ads. In the EEA, UK and Switzerland, Google's consent message asks you first, before any ad loads; if you say no, you see limited ads that use no identifier stored on your phone. Analytics runs only if you turn it on in Settings → Privacy and consents.

zmacros.com sets no cookies and uses no analytics or tracking. Our website dashboards keep your sign-in session in your browser's storage.

3. AI photo scanning

The AI Features Notice has the detail.

4. Legal bases

Where the law requires one (for example the GDPR and UK GDPR):

Purpose Legal basis Health data (GDPR Art. 9)
Tracker and sync Contract (Art. 6(1)(b)) Explicit consent (Art. 9(2)(a)) when you start: "Store my food, weight and activity"
Apple Health or Health Connect Contract Explicit consent in your phone's permission screen
AI photo scanning, and using your corrections to improve scan matching Consent (Art. 6(1)(a)) Explicit consent, given in the scan permission
Analytics Consent Not applicable
Free-plan ads EEA, UK and Switzerland: consent, asked by Google's consent message before any ad loads. Elsewhere: legitimate interests (Art. 6(1)(f)), to fund the free plan Not applicable
Subscriptions and ad scan credits Contract; legal obligation (tax and consumer records) Not applicable
Purchase country, price level and scan allowance; Contract (giving you the plan you bought); legitimate interests: keeping regional prices fair and stopping their misuse Not applicable
Usage figures sent to Apple for a refund request Consent, given in the app Not applicable
Safety, fair-use limits, moderation, staff logs Legitimate interests: a secure, fair service Not applicable
Support Contract; legitimate interests Only if you include health details
Defending legal claims Legitimate interests; legal obligation Art. 9(2)(f)

Do you have to give us your data? No law requires you to. To use the tracker you must accept "Store my food, weight and activity"; without it the app cannot keep a diary. The app asks your year of birth to apply the age rules and cannot be used without it. Syncing needs an account, which needs your email. Everything else (AI scans, health apps, analytics) is optional, and the rest of the app works without it.

5. Who can see your data

We do not sell your personal information or share it for cross-context behavioural (targeted) advertising. No data broker receives it.

Advertising

6. Service providers and other parties

Details are in the Sub-processors list. Each service provider below works on our instructions under a contract that requires it to protect your data at least as well as this policy does.

Provider What for Location
Supabase (on AWS) Database, sign-in, server functions United States; server functions may run in the region nearest you
OpenAI Reading meal photos you scan United States
RevenueCat Subscription status United States
Resend Account emails United States
Vercel Hosting our website and dashboards United States and global network

Under their own terms, these also receive data when you use a feature: Open Food Facts (text searches and, when your phone asks directly, barcodes, with your IP address); USDA FoodData Central (search words from our server, which does not store them); Apple Maps or Google Maps (route maps); Google (AdMob ads, and ML Kit usage reports from the label reader); Apple and Google (downloads, purchases, health-app permissions, and dashboard sign-in).

These parties receive only the data described here. We send none of them your health data. Each party handles what it receives under its own privacy policy.

7. International transfers

Our providers mainly process data in the United States, and some server functions run in the region nearest you. Where the law restricts transfers (for example from the EEA, UK, Switzerland, Brazil, Quebec or Türkiye), we use the standard contractual clauses in each provider's data processing agreement, with the UK Addendum and Swiss changes, and the clauses other countries require. For a provider certified under the EU-US Data Privacy Framework (or its UK or Swiss versions) we may rely on that instead; the Sub-processors list says which. Ask privacy@zmacros.com for a copy of the safeguards.

8. How long we keep it

Data Kept
Diary, weights, workouts, meals, custom foods, AI corrections Until you delete your account. A single entry you delete leaves the app at once, but our server keeps a hidden marker, which can still hold its details, so other devices learn of it. Markers go with your account
Data on your phone Until you delete it, use "Sign out and remove data from this device", sign in to another account or uninstall. On iPhone the install ID can remain
Record of your edits and picks (on your phone) Up to 180 days; older events are dropped. Deleted sooner if you use "Sign out and remove data from this device", sign in to another account, delete your account or uninstall. A deleted entry's calories and an edited entry's old amount stay in this record, on your phone only, until then
Meal photos Not kept by us. OpenAI: up to 30 days, longer if flagged or required by law
Label photos you read on your phone Deleted once read
AI food list (no image) About 15 minutes
Audit records: copies of consent choices, staff actions, forced sign-outs, security events, subscription and refund events (account IDs, action and time; no health values) 7 years from the event, including after account deletion, unless a legal hold applies
Consent records in your account Until account deletion (copy in audit records)
Marker for a deleted account that was suspended or banned 6 months after a suspension, 2 years after a ban, up to 6 years in serious cases
Fair-use counts, flags and scan pauses Until account deletion
Sign-in attempts, short-term counters, security alerts 1 to 90 days
Sign-up network address hash 1 day
In-app analytics 13 months, or until account deletion if sooner
Feedback and bug reports Up to 2 years after its last activity, then deleted. After account deletion, it is kept with your account ID removed, within the same 2 years
Business and tax records As long as tax law requires: in Canada, 6 years from the end of the tax year they relate to, or longer where another law that applies to us requires it

9. Deleting your account

Settings → Account → Delete my account deletes your account straight away, with no recovery period. It removes your logs, custom foods, AI corrections, usage counts, subscription records we hold and analytics, and clears your profile. What stays:

Deleting your account does not cancel a subscription; cancel it in the App Store or Google Play first. Without the app, or if your account is suspended, email privacy@zmacros.com from your account's address (see zmacros.com/delete-account) and we will delete it or send you your data.

10. Your rights

Wherever you live, you can:

We reply within one month (45 days under US state laws) and tell you if we need longer where the law allows. We may check the account is yours. Using your rights will not change how we treat you. Settings → Data & Privacy → Your privacy rights lists them. The Regional Supplements add local rights and appeals.

11. Children

ZMacros is for people 16 and over; 18 in many countries and when we do not know your country; 20 in Thailand. The Terms Regional Supplements list ages by country. The app asks your year of birth and refuses younger people. AI scanning and the fasting timer are adults only. If we learn we hold data of someone under the minimum age, we delete it. Where 16 and 17-year-olds may join, they confirm a parent or guardian agreed; we record this and the wording version on the phone, and on our servers once they have an account. Under-18s get safer target limits and no fasting timer. Parents can email privacy@zmacros.com.

12. Security

Everything the app sends uses encrypted connections (HTTPS). Database rules limit each account to its own rows. Our staff tools show no health data and log every change. Our host encrypts stored data. If a breach affects you, we will tell you and the authorities as the law requires. Report security problems to security@zmacros.com.

13. Automated decisions

ZMacros works out your targets and estimates automatically. They are suggestions you can change and have no legal or similar effect. AI scanning has automatic limits: a cool-down or a pause until tomorrow for unusually heavy use, and a stop when your plan's monthly allowance is used up, until it resets at the start of the next calendar month (UTC). Your plan's price level and monthly allowance are set automatically from the country of the store account you bought with. Staff set longer scan pauses (24 hours, 7 days, then until review). These limits affect scanning only. A person decides any suspension or ban. Ask us to review a limit at support@zmacros.com.

14. Changes

Before a material change takes effect we will tell you in the app, and by email if you have an account, and ask for consent again where the law requires. Ask privacy@zmacros.com for earlier versions.

15. Contact and complaints

LEGAL ENTITY NAME, REGISTERED ADDRESS, privacy@zmacros.com. You can also complain to your data protection authority; the Regional Supplements name them.

EU Digital Services Act. Our single point of contact for users and for EU authorities is support@zmacros.com, in English.