Macro M8
Macro M8 ("we", "us", "the app") is an AI meal-planning and nutrition assistant. This policy explains what data it collects, why, where it's stored, and what control you have over it.
When you create an account: your name, email address, and password (handled by Supabase Auth — we never see or store your raw password). Macro M8 also has a local-only fallback mode, used only if the app is ever run without a backend configured at all — in that situation your name, email, and a salted, hashed version of your password (never the password itself) would stay in your own browser's local storage instead of a server. In the live app today, this fallback doesn't apply: every account is a real, synced one.
Your training goal (e.g. lose weight, gain muscle, maintain), activity level, weight, height, and age. These are used only to estimate your daily calorie and macro targets — this is health-adjacent data and, in the UK, requires your explicit consent to process.
Any weight entries you choose to log, each with a date, used to show your own trend over time. Entirely optional — the app works without ever logging a weight entry.
Weekly grocery budget, preferred supermarket, dietary preferences (e.g. vegetarian, gluten-free), allergies, disliked ingredients, cooking ability, kitchen appliances you have, and favourite cuisines.
The names and estimated expiry dates of items you tell the app you have at home.
The meals the app generates or you choose (breakfast, lunch and dinner), their ingredients and estimated nutrition, and the resulting shopping list and estimated prices.
Any item you mark as wasted, its estimated cost, and the date.
Meals you've favourited or skipped, how often you swap or repeat meals, your budget history over time, patterns in what gets wasted, ingredient substitutions you've made, and your shopping history. This is what lets the app get better at planning for you specifically over time — it isn't shared with anyone else's plans.
If you turn on notifications, your browser's push subscription details (a device-specific address your browser gives us, not your actual location or identity) are stored so we can send you an alert — for example, something in your pantry expiring soon. At most 3 notifications are sent each time the app checks, picked by which are genuinely most urgent, not every possible one. You can turn this off at any time from Account settings.
Macro M8 can optionally report which screen you're on and a small number of specific actions (like a plan being generated, or an item being logged as waste) to a privacy-focused analytics tool (GoatCounter). This is aggregate only — no individual user identifiers, no cookies, no cross-site tracking. If the app owner hasn't configured this, none of it happens at all.
We don't ask for your home address or any health data beyond what you choose to enter for meal-planning and safety purposes (allergies, body stats, goal). When you go to buy your groceries, Macro M8 sends you to the real supermarket's own website to check out — we never see or process that payment, and their privacy policy applies to it, not ours.
If you subscribe to Macro M8 itself (£9.99/month after a 7-day free trial), billing is handled entirely by Stripe. Macro M8 never sees or stores your card details — Stripe collects them directly through their own hosted checkout. We hold your subscription status (trialing, active, cancelled) and Stripe's reference ID for your subscription, so the app knows whether to let you in; Stripe separately holds your email and payment details under their own privacy policy at stripe.com/privacy.
In a Supabase-hosted database, protected by row-level security — a technical rule enforced by the database itself that means your account can only ever read or write rows belonging to your own account, not anyone else's. Supabase's infrastructure is hosted by Supabase, Inc.; see their own privacy policy at supabase.com/privacy for how they handle data on our behalf as our data processor.
Local-only fallback (only if the app is ever run with no backend configured at all — not how the live app works today): everything would stay in your own browser's local storage instead. Not encrypted, not backed up, never transmitted anywhere. Clearing your browser data or switching devices would mean it's gone for good.
| Service | What they get | Why |
|---|---|---|
| Supabase | Everything you enter, if you have a real account — encrypted at rest, access-controlled per account | Hosts the database and handles account login |
| Stripe (only if you subscribe) | Your email and payment details, handled entirely on their own hosted checkout — we never see your card details | Processes subscription billing |
| TheMealDB | Nothing from you — your browser loads recipe photos directly from their servers | Recipe photos and source data |
| Google favicon service / logo.dev | Nothing from you — used only to fetch supermarket logo images | Displaying store branding |
| GoatCounter (only if analytics is enabled) | Which screen was viewed, no personal identifiers | Understanding feature usage |
| The supermarket you shop with | Nothing from us directly — checkout happens on their site, under their own policy | Completing your actual shopping |
We do not sell your data. We do not share it for advertising. We do not use it to train any third-party AI model on your personal information.
You can permanently delete all your data — profile, pantry, plans, history — at any time from Account → Erase everything. This is immediate and can't be undone.
If you're in the UK or EU, you have the right to:
Anything not covered by the in-app controls (like Erase everything) can be requested directly through the app for now, while we set up a dedicated privacy contact.
Macro M8 is intended to be used by adults planning their own meals and nutrition. It doesn't collect information about anyone other than the account holder — there's no household members or family profile feature.
Real accounts use Supabase's authentication system. Local-only accounts use a salted SHA-256 hash of your password, generated and checked entirely in your own browser — we never see the password itself. No system is perfectly secure; if we become aware of a data breach affecting your information, we'll notify you in line with our legal obligations.
If anything material changes about how we handle your data, we'll update this page and change the "Last updated" date at the top.
We're setting up a dedicated privacy contact as the app grows. For now, requests about your data can be made through the app itself — most of what this policy covers (viewing, deleting, exporting) is already available directly from Account settings.
The onboarding flow collects allergies (health-related data) without a separate, explicit consent step beyond creating an account — this policy describes that honestly, but doesn't fix it by itself. Worth adding a proper consent step at signup as a next piece of work, when there's time for it.