Privacy Policy
Last updated:
This describes what Mealbot actually does with your data — written from the code, not from a template. Where something is imperfect, it says so.
The short version. We use three cookies, all of them needed to keep you signed in. We run no analytics, no advertising and no third-party trackers of any kind. We never see your card details. But your dietary restrictions and allergies are sent to Google to generate your meal plans — that is how the product works, and it is the most important thing on this page.
Who is responsible
Mealbot is run by František Bláha, Jana Černého 489/2b, Věkoše, 503 41 Hradec Králové, Czech Republic. IČO 22059946. Not registered for VAT (neplátce DPH). We are the data controller for the personal data described here.
For anything on this page, including any request below, email info@trymealbot.com.
What we collect
Your account
Your email address and a hashed password (bcrypt — we never store or log the password itself). Plus the state we need to run your account: when you registered, whether your email is confirmed, and your subscription status.
What you create in the app
Your cooking preferences (country, language, units, whether to include spices), your fridge contents and pantry staples, your meal plans and recipes, and when you marked a meal as cooked. Free-text fields you fill in — taste preferences, ingredients to avoid, notes — are stored as you wrote them.
Dietary restrictions and allergies
This is health-related information, and in some cases (halal, kosher) it can reveal religious belief. We treat it as the most sensitive thing we hold. It is covered separately below because of where it goes.
Payment
We never receive your card details. Checkout is hosted by Stripe and card data never touches our servers. Stripe collects your name, billing address, card and any VAT ID directly. We store only identifiers and status — your Stripe customer and subscription IDs, whether your subscription is active, and when the period ends.
For each payment we keep an invoice record: amount, currency, your country, and whether it was a business purchase. We need this for VAT.
We also store a one-way, keyed fingerprint derived from your card by Stripe — not the card number, and not reversible. It exists only to stop the same card opening unlimited free trials.
Support and access requests
If you send feedback, we store your message. If you request access from the landing page while sign-ups are closed, we store the email address and message you submit — including any dietary details you choose to mention there.
Technical
Login sessions (a hash of the session token, timestamps, and your browser's user-agent string). Counts of AI tokens used, to enforce fair-use limits — this records how much was used, never what was in it.
We also keep a copy of what was sent to the AI and what it returned, plus any edits you make to its output, so we can tell where the AI gets things wrong. This copy includes your dietary restrictions. There is currently no way to opt out of this; if that matters to you, email us.
Our web server writes standard access logs containing your IP address, the page requested, and your user-agent. We do not put IP addresses in our database and we do not use them for analytics.
These logs are capped in size and rotate automatically — once the cap is reached, the oldest entries are deleted. They are not kept forever. We cap by size rather than by age, so we cannot honestly quote a fixed number of days: at low traffic a line may survive longer, at high traffic much less. The logs never contain the contents of your meal plans, and they never contain sign-in links or password-reset links.
Your dietary data goes to Google
To build a meal plan we send your request to Google's Gemini API. That request includes your declared allergens, your diet types (including halal, kosher, diabetic, low-FODMAP and baby-food), your free-text ingredients-to-avoid, your taste preferences, your household size and your fridge contents.
We do not send your email address, your name, or any account identifier. Google receives the content, not who you are.
The same applies to a receipt photo if you use the scanner (the image is sent), and to feedback you submit (the text is sent, to categorise it automatically).
After generation, we run our own deterministic check against your declared allergens and refuse to show a plan that fails it. That is a safety net on top of the model, not a replacement for reading labels.
We use Google's standard API. If you would rather not have this data processed this way, the honest answer is that Mealbot cannot generate plans without it.
Who else receives your data
| Who | What they get | Why |
|---|---|---|
| Google (Gemini API) | Your meal-plan request, including dietary restrictions, fridge contents, receipt images and feedback text. No identity. | Generating plans and recipes |
| Stripe | Your email and internal user ID; they separately collect your name, address, VAT ID and card | Payments and subscriptions |
| Resend | Your email address and the contents of the email we send you | Sending sign-in, password-reset and verification email |
| GitHub | The text of feedback you submit, filed to a private repository under a numeric ID | Tracking reported bugs |
| Hetzner | Everything, as our hosting provider | Running the servers |
| Cloudflare | DNS lookups for our domain | Domain name resolution |
That is the complete list. We do not sell your data, we do not share it for advertising, and no other company receives it.
Servers are hosted with Hetzner Online GmbH in Nuremberg, Germany, so your data is stored in the EU. Google, Stripe, Resend and GitHub may process data outside the EU under their own terms.
Cookies
We use three cookies and they are all strictly necessary, so there is no consent banner to click:
| Cookie | Purpose | Lifetime |
|---|---|---|
mealbot_at | Keeps you signed in | 15 minutes |
mealbot_rt | Renews your session | 30 days |
mealbot_csrf | Blocks cross-site request forgery | 30 days |
If you never sign in, we set no cookies at all. There is no analytics cookie, no advertising cookie and no session-replay script anywhere on this site.
Your browser also stores some things locally so the app works — who you are signed in as, your saved preferences, and your place in a recipe you are cooking. That stays on your device and is cleared when you sign out.
How long we keep things
| What | How long |
|---|---|
| Login sessions | Deleted 7 days after they expire |
| Meal plans you never confirmed | Deleted when you next generate a plan |
| Demo accounts and their data | About 2 hours |
| Database backups | 14 days |
| Your account and everything in it | Until the account is deleted |
| Invoice records (VAT) | Kept after deletion, as tax law requires |
Your rights — and what we can actually do today
Three of them you can exercise yourself, in Settings, without asking us: change your email address, download your data, and delete your account. For a correction, or to restrict how we use your data, email info@trymealbot.com and we will action it.
Being straight with you about what those two buttons do and do not cover, because a policy that overstates them is worthless:
- The export contains what you put in. Your profile and preferences, your meal plans and their recipes, your cookbook, your fridge and pantry staples, the bug reports you sent us, and your paid invoices. The file names its own omissions, so you can see what is not in it: your password (we only ever store a hash), session tokens, and the model-performance telemetry described above — ask and we will send you that too.
- Deletion is immediate and cannot be undone. There is no grace period and no recovery. If you have a subscription it is cancelled at the same moment, and the rest of the period you have paid for is not refunded — so export anything you want to keep first.
- Deletion is not absolute. Your invoice records are kept, with your account no longer attached, because tax law requires it; your customer record at Stripe and any bug report already filed with our issue tracker are not removed automatically; and you will remain in database backups for up to 14 days. When we delete an account on your behalf, your email address also stays in our internal admin log as the record that we did — deleting it yourself writes no such entry.
You can also complain to the Czech data protection authority (Úřad pro ochranu osobních údajů).
Security
Passwords are hashed with bcrypt. Session, reset and verification tokens are stored only as SHA-256 hashes, are single-use, and expire. The site is HTTPS-only. Cookies are HttpOnly, Secure and SameSite. We use a strict Content-Security-Policy that blocks third-party scripts. Card data never reaches our servers.
No system is perfect. If you find a security problem, please email us — we would much rather hear it from you.
Children
Mealbot is not intended for children under 16. The baby-food option is for adults planning food for an infant; we do not knowingly collect data from children.
Changes
If we change this policy we will update the date at the top. If a change materially affects how we use your data, we will email you about it.