At Cart2Cook (“we”, “our”, “us”), we take your privacy seriously. This Privacy Policy explains how we collect, use, disclose, and safeguard your information when you use Cart2Cook — the website at cart2cook.com, the Android app distributed through Google Play. It covers your recipe box, shopping lists, AI features, Community Recipes, Shop Together, referrals, and Premium subscriptions, and it applies to every platform.
Note: the Android app is currently in review on Google Play. Until it is published, the full Cart2Cook web app works on Android in your browser and can be added to your Home Screen — no Play Store download needed.
1. Information We Collect
1.1 Information You Provide to Us
- Account Information: When you create an account, we collect your email address and, if you choose to add them, your display name (preferred name) and profile photo. Authentication is handled securely by our authentication provider (Supabase Auth) using your email and password; we never store or have access to your password. You can also set a public creator handle.
- Recipe Data: Recipes you create, import, or save — including names, ingredients, instructions, serving sizes, categories, and any photo you attach — are stored on our servers so they are available on every device you sign in from.
- User Preferences: Your preferences, such as serving-size defaults, unit preferences (metric/imperial), fraction display, and language.
- AI Interactions: When you use an AI feature (generating a recipe, Smart Match meal planning, importing from text or a URL, or AI-assisted moderation), we store the prompts, text, URLs, and conversation content you submit, the responses we generate, and your AI credit usage. Inputs are sent to our AI providers (Section 3.1). Please do not submit sensitive personal information through AI features.
- Community Content: If you publish a recipe to Community Recipes, that recipe (including its photo) becomes public together with your display name, public creator handle, avatar, and publish date. We also record your upvotes, forks, and any reports you make or receive.
- Feedback and Content Reports: If you send feedback (including a star rating and category) or report content, we store your message, the email address of the signed-in account, the platform it came from (web, the Android app, or a mobile browser), and — for AI content reports — the relevant AI conversation excerpt, your AI usage counters, and any recipe or account identifier you include.
- Referral and Partner Codes: If you open a referral or partner link, the code is stored in your browser (Section 1.2) and, when you sign up or subscribe, linked to your account (Section 5).
- Share Links and Savings: When you create a recipe share link, we store the link token, the recipe it points to, and its 7-day expiry. We also keep a running savings total for your account — the number of shopping lists you shopped and an estimated amount — so we can show your “what you rescued” summary.
1.2 Information Stored in Your Browser
- Shopping Lists: Your current shopping list is stored locally in your browser's storage. When you use the save feature, auto-saved lists and named backups are also stored on our servers so you can restore them later.
- Language Preferences: Your selected language is stored locally.
- Referral and Partner Codes: Opening a referral link (?ref=CODE) or a partner link (?code=CODE or /join/CODE) stores that code in your browser's local storage. The referral code is sent to us once you are signed in; the partner code stays in your browser until you reach checkout.
- Session and Platform: Sign-in cookies keep you logged in, and a small cookie may remember which platform you are using (web, the Android app, or a mobile browser) so usage is attributed correctly. Local data is removed when you clear your browser data.
1.3 Information Collected Automatically
- Usage Events (linked to your account — not anonymous): We record named product events, for example recipe created, recipe imported or updated, shopping list saved, AI chat, feedback submitted, community recipe published, upvoted, forked or reported, referral redeemed, device registered, and share link created. Each event stores your account ID, the event name, a small JSON payload (such as the plan or the recipe ID involved), the platform source (web, the Android app, or a mobile browser), your browser's user-agent string, and a timestamp. These events are tied to your account, not anonymous, and we use them to understand feature usage, enforce plan limits, and improve the service.
- IP Address and Server Logs: Our servers and our hosting, database, and authentication providers keep standard request logs, which include IP address, timestamps, requested URLs, and error details, for security, fraud prevention, and troubleshooting. Server logs are kept for up to 30 days, unless a longer period is needed to investigate abuse or a security incident.
- Device Information: To enforce per-plan device limits and let you manage where your account is signed in, we store a random device identifier, a device label and platform, the first and last time the device was seen, the last IP address and browser type observed, and whether the device was revoked. This is retained for up to 180 days after the device is last used or signed out. You can see and revoke your devices in the app under Manage devices; that screen shows labels, platforms, and dates, not your IP address.
1.4 Photos and Uploads
- Recipe photos, community cover images, and avatars are resized and re-encoded, then stored in Supabase Storage in a public storage bucket. They are served from long, randomly generated URLs, but anyone who has the URL can view the image, so treat a shared image link as public.
- Deletion: When you delete a recipe, replace an avatar, or delete your account, the corresponding files are deleted from storage. Copies may remain for a limited period in our processors' backups (Section 9).
2. How We Use Your Information
- To provide, operate, and maintain Cart2Cook
- To process your subscription payments (through Dodo Payments) and keep your plan status accurate
- To generate AI-powered recipes and answers from your inputs
- To improve, personalize, and expand our service using the usage events described above
- To send service email only — verification, password reset, payment or subscription problems, and replies to your feedback or reports. We do not send marketing or promotional email and we do not rent or sell your email address.
- To provide customer support and respond to your inquiries
- To find and prevent fraud, abuse, and security issues, and to enforce device limits
- To attribute referrals and partner codes and to record give-back donations (Section 5)
- To operate Community Recipes and Shop Together, including ranking, moderation, and abuse review
- To enforce our Terms and plan limits (recipe counts, AI credits, and device caps)
- To meet legal, tax, and accounting obligations
3. Service Providers and Sharing
We share personal information with the service providers below only as needed to run Cart2Cook. They act on our instructions and are bound by their own data-processing terms.
3.1 AI Providers
AI features are powered by Google Gemini and DeepSeek. The text, URLs, photos, and conversation content you submit — and, for community moderation, the recipe text being reviewed — are sent to one of these providers to generate or check a response. Which provider handles a given request depends on the feature and on availability. These providers process the data under their own terms and privacy policies, and their retention practices are outside our control. Do not submit sensitive personal information through AI features.
3.2 Payment Processing
We use Dodo Payments to process subscription payments. Dodo receives your email address, the name and billing details you enter at checkout, and subscription and payment identifiers, and it processes them under its own privacy policy. We do not receive or store your card details on our servers.
3.3 Hosting, Database, Authentication, and File Storage
Our application is hosted on Railway. Our database, authentication, and file storage (including recipe photos) are provided by Supabase. Your data is stored on their servers.
3.4 Email Delivery
We use Brevo to send transactional email: feedback and content-report notifications to our admin inbox, account notices, and — through Supabase Auth — verification and password-reset messages. Those emails contain your email address and the content you submitted.
3.5 No Advertising or Third-Party Analytics
We do not use third-party advertising networks, tracking pixels, or third-party analytics SDKs. The usage events described in Section 1.3 are recorded by our own servers. We load front-end libraries (Bootstrap styles and icons, and the Supabase client) from public CDNs such as jsDelivr and unpkg; those requests disclose your IP address and browser information to the CDN provider.
4. Cookies and Browser Storage
We use cookies and browser storage to:
- Keep you logged in to your account
- Remember your preferences (units, serving sizes, fractions, language)
- Record the platform you are using and the usage events described in Section 1.3
- Store pending referral and partner codes until they are redeemed
You can control cookies and clear local storage through your browser settings. Disabling cookies or clearing storage may sign you out and may affect features such as your saved shopping list and pending referral code. We do not use third-party advertising cookies.
5. Referral Codes, Partner Codes, and Give-Back
This section explains how referral codes, partner campaign codes, and the give-back donation feature use your information.
5.1 Referral Codes
Every account has a referral code. When someone opens your link (?ref=CODE), the code is stored in their browser and, once they sign in, linked to their new account. We record the referrer's account ID, the new account, and whether the referral is pending or has been rewarded. Your referral summary shows aggregate counts only — how many people you referred and how many have subscribed. You do not see the name, email address, or activity of anyone you refer.
5.2 Partner Codes (Give-Back)
Non-profit partners and clubs receive a campaign code and a join link (/join/CODE or ?code=CODE). If you open that link, the code is stored in your browser until checkout. If you subscribe to Premium, the code is attached to your subscription for attribution. Your price does not change and you pay nothing extra — Cart2Cook sets aside the donation from the subscription you already pay for.
5.3 Donation Ledger
For each paid billing cycle of an attributed Premium subscription, we record an entry in an append-only donation ledger containing the subscription ID, payment ID, campaign/partner code, your account ID and email address, plan, billing-cycle number, donation amount, billing period, payment date, and status (accrued or voided). The amount is set by Cart2Cook and the campaign configuration, not by you. Ledger entries are used for accounting, partner reporting, and audit, and cannot be edited or deleted.
5.4 What Partners See
Partner dashboards show aggregate figures only: the number of active subscriptions, the total amount accrued, the amount accrued this month, and the dates of the first and last accrual. Partners never see member names, email addresses, individual payments, or any other personal information. Only authorized Cart2Cook administrators can access the underlying ledger and export it (for accounting) to CSV.
6. Community Recipes
Community Recipes is a public space, so the content you publish there is treated differently from your private recipe box.
- When you publish a recipe, it becomes visible to anyone — including people who are not signed in — through our public community pages. Published content includes the recipe name, ingredients, steps, photo, your display name (your preferred name, or “A Cart2Cook cook” if you have not set one), your public creator handle, your avatar, the publish date, and any campaign tag attached to the post.
- We record who published each recipe, who upvoted it, who forked it, and the parent/root lineage of forks. Your upvotes are linked to your account.
- Anyone can report a published recipe. A report is emailed to our admin inbox and reviewed by a person. It includes the reason, the reporter's email address, and the content being reported.
- You can unpublish your own recipe at any time from the app, which removes it from public view. Deleting your account also deletes your recipes. Copies other people made before you removed it — for example a fork saved in their recipe box — cannot be recalled.
- Please do not publish anything you want to keep private. Published content is public and may be copied by anyone.
7. Shop Together
Shop Together lets you share a live shopping list with other people. Sharing is deliberate — we only share the list when you create a session and pass the link.
- Premium users can start a live shared shopping session. We generate a link containing a random token, and anyone who has that link can open the list without signing in.
- Anyone with the link can see the list and the nicknames (plus color and emoji) participants choose, add items, and strike items off. Do not put personal information in a nickname, and share the link only with people you trust.
- A session expires automatically after 24 hours, and the creator can end it sooner. Strikes, added items, and split-by-store choices are stored with the session and deleted when it expires or is ended.
8. How We Share Information; California Privacy Rights
We do not sell your personal information, and we do not share it for cross-context behavioral advertising as those terms are used by California's CCPA/CPRA. We do not run third-party advertising and we do not sell data to data brokers.
We share personal information only with the processors listed in Section 3, and only as needed to provide the service. The categories involved are:
- Identifiers: email address, account ID, device identifier, IP address, and user-agent string.
- User content: recipes, ingredients, photos, AI prompts and conversations, feedback, and reports.
- Commercial information: plan, subscription status and identifiers, payment identifiers, and give-back accruals.
- Usage data: product events, platform source, timestamps, and error logs.
In practice: Supabase processes identifiers, user content, and photos; Dodo Payments processes identifiers and commercial information; Google and DeepSeek process the content you submit to AI features; Brevo processes identifiers and the content of feedback, reports, and notices; Railway processes hosting data and server logs including IP addresses.
We may also disclose information if required by law, to respond to lawful requests, to protect the rights, safety, or property of Cart2Cook, our users, or the public, or as part of a merger, acquisition, or sale of assets (we will notify you before your data becomes subject to a different policy).
Community Recipes and Shop Together share content with other people by design, as described in Sections 6 and 7. Referral and partner dashboards receive aggregate figures only (Section 5).
9. Data Retention
- Active accounts: We keep your recipes, preferences, and account data while your account is active.
- Deleting your account: When you delete your account in the app, we immediately and permanently delete your recipes and ingredients, your recipe photos and avatar from storage, shopping-list backups, AI request history, shared shopping sessions and their items, recipe share links, device records, and upload counters. We also delete your Supabase Auth account. Your profile row (email, display name, preferences) is marked deleted right away, is not used for anything except completing deletion, and is permanently purged by our cleanup job within 30 days.
- What may be kept after deletion: donation-ledger entries (Section 5.3) are kept as accounting records because the ledger is append-only; feedback and content reports may be kept for record-keeping and safety; usage events may be kept for analytics until they are no longer needed. Backups held by our processors may contain residual copies for a limited period, typically up to 30 days, before they are overwritten.
- Current shopping list: stored in your browser and removed when you clear your browser data.
- Saved lists and backups: auto-saved shopping lists and named backups are deleted 30 days after your last update.
- Shared sessions and links: Shop Together sessions expire after 24 hours (and are deleted by our cleanup job); recipe share links expire after 7 days.
- Devices: device records are deleted 180 days after last use or revocation.
- Server logs: kept for up to 30 days (Section 1.3).
10. Your Rights
Depending on where you live (for example, the EU/EEA or UK under GDPR, or California under CCPA/CPRA), you may have the right to:
- Access the personal data we hold about you
- Request correction of inaccurate data
- Request deletion of your data
- Export your data in a portable format
- Object to, or restrict, certain processing
- Withdraw consent where we rely on it
- Lodge a complaint with your local data-protection authority
How to exercise your rights: contact us at [email protected] from the email address on your account. We verify your identity by asking you to write from — or sign in with — that address, and we may ask for additional confirmation for a sensitive request. We respond within 30 days. If a request is complex, we will tell you why we need more time and when to expect a response.
Controls in the app: you can update your profile, unpublish community recipes, revoke devices, end shared shopping sessions, and delete your account yourself.
Exporting your data: you can request a copy of your recipes from the in-app feedback form (“Request a copy of my recipes”), and a signed-in client can download every recipe you own as a JSON file from /api/recipes/export. Contact us if you need other data in a portable format.
11. Legal Basis and International Transfers
If you are in the EU/EEA or UK, we rely on these legal bases: performance of a contract (providing the app, your account, recipes, lists, AI features, and subscriptions); legitimate interests (security, fraud prevention, device limits, service improvement, and service analytics); consent (where required, for example for optional analytics or when you ask us to publish content publicly); and legal obligation (tax, accounting, and responding to lawful requests). You can withdraw consent at any time; withdrawal does not affect processing that already took place.
Cart2Cook is operated from the United States, and our processors — Supabase, Dodo Payments, Google, DeepSeek, Brevo, and Railway — process data in the United States and other countries. Where personal data from the EU/EEA or UK is transferred, we rely on appropriate safeguards such as Standard Contractual Clauses and our processors' data-processing agreements. Contact us for more information about the safeguards we use.
12. Children's Privacy
Cart2Cook is not intended for children under 13 years of age (or a higher age if your country sets one for digital consent). We do not knowingly collect personal information from children. If you believe a child has provided us with personal information, please contact us and we will delete it.
13. Security
We use encryption in transit (HTTPS), secure authentication through Supabase, access controls on our servers and database, and we never store card details. However, no method of transmission or storage is completely secure, and we cannot guarantee absolute security. If we become aware of a breach affecting your personal information, we will notify you and the relevant authorities as required by law.
14. Changes to This Privacy Policy
We may update this Privacy Policy from time to time. We will post the new version on this page and update the “Last Updated” date; for material changes we will also notify you in the app or by email. You are advised to review this policy periodically.
15. Contact Us
If you have questions about this Privacy Policy or want to exercise your rights, please contact us. Please put “Privacy request” in the subject line.