Legal
CookGo Privacy Policy
How the CookGo app collects, uses and protects your data.
Draft — not yet in effect
This document is under review and may change before CookGo officially launches.
- Effective date: [TODO: effective date — set when this Policy is published]
- Last updated: 6 October 2026
This Policy explains what data CookGo collects, uses, shares and keeps when you use the CookGo app on Android and iOS (app ID space.cookgo), the recipe share pages at https://share.cookgo.space and the website https://cookgo.space, and it describes your rights and how to exercise them.
In short:
- CookGo has no user accounts. We do not ask for your name, phone number, email address or a password to use the app.
- Your favorites, notes, shopping list and downloaded recipes stay on your device and are not sent to our servers.
- Our server only receives the data each feature needs, described in detail in section 3: a device record (language, time zone, notification settings, when you last opened the app), your choices for family meal suggestions and the ingredients for fridge search (used only to return results, not stored), the keyword when you search for places near you, plus a rounded location if you choose to use it (not stored), recipe feedback and searches with no results.
- Ads, analytics and push notifications use Google services; payments are processed by Apple/Google.
1. Controller and contact details
| Item | Details |
|---|---|
| Operator of CookGo (personal data controller) | [TODO: operator legal name] |
| Business registration / tax number | [TODO: business registration / tax number] |
| Address | [TODO: registered address] |
| Privacy contact email | support@cookgo.space |
| Person/department responsible for personal data protection | [TODO: responsible person/department] |
| EU/UK representative (if required) | [TODO: EU/UK representative, or "Not required" after legal review] |
2. Legal framework in Vietnam
We process personal data under the Law on Personal Data Protection No. 91/2025/QH15 (in force since 1 January 2026) and Decree 356/2025/ND-CP detailing that Law (in force on the same date and replacing Decree 13/2023/ND-CP), together with other applicable regulations.
Decree 356/2025/ND-CP classifies an individual's location determined through positioning services, and data tracking a person's behavior and use of online services, as sensitive personal data. CookGo therefore only processes your location when you actively tap "Use my location" in the "Good places near you" feature and have granted location permission, rounds it to about 110 m before sending it and does not store it; and only collects usage analytics under the consent mechanism described in section 4. Some choices you make for family meal suggestions (for example vegetarian dishes, a memorial-day offering meal, or the full/new-moon days) may reveal religious beliefs or health information; we only use them to return results for that request and do not store them (section 3.4).
3. Data we process and why
3.1. Install ID
When installed, the app generates a random identifier (UUID) and stores it on your device. It contains no name, phone number or hardware information. The app sends it with requests to the CookGo server to: rate-limit access (abuse prevention); identify the device record (section 3.2); and keep the order of family meal suggestions stable within a day (section 3.4). For recipe feedback and the meal-suggestion order, the server only uses a one-way hash (SHA-256) of the install ID, never the original. The server does not write this ID to its access logs. You can see and copy your install ID in the app under Settings > About > Install ID; include it when you contact us about your data (section 11). Uninstalling the app or clearing its data removes the ID from the device; a new install gets a new ID.
3.2. Device record and meal-suggestion notifications
When you open the app (at most once every 12 hours, or when the details below change), the app creates or updates a device record on our server containing:
- the install ID;
- the platform (Android or iOS) and the app version;
- the app language (Vietnamese or English);
- the device time zone (for example
Asia/Ho_Chi_Minh); - your notification settings: on/off and the meal time slots (breakfast, lunch, dinner — by default only dinner is on);
- when you last opened the app;
- the Firebase Cloud Messaging push token (FCM token) — only if you agree to receive notifications and grant the app notification permission.
Purposes: sending meal suggestions at the right local time, in your language; reducing or stopping notifications if you have not opened the app for a long time; and counting the total number of active devices (no individual device is looked at) to run the service. The record contains no name, phone number, email address or location. If you do not agree to notifications, the record has no push token and the server sends that device no notifications.
When notifications are on, we keep a log of sent notifications (device, meal, date, suggested recipe, delivery status) to avoid duplicates and avoid repeating a recipe within 14 days. Notifications never suggest alcoholic recipes.
You can turn individual time slots off in the app's Settings. When you turn notifications off entirely, the app asks the server to delete the device record together with its push token, time slots and related notification log; on later app opens the record may be created again, without a push token and with notifications off. The record is deleted automatically after 30 days without opening the app, and immediately when you use "Delete my data". You can also revoke notification permission in your operating system settings.
3.3. Good places near you
"Good places near you" searches a list of places that the CookGo team researches and enters itself, and shows the results as a list with an in-app detail page; there is no map, and CookGo uses no third-party place-search or map service for this feature. You search on the "Good places near you" screen, or tap the "Not cooking today? … near you" button on a recipe (which opens the same screen with the dish name already typed in). For each search, the app sends the CookGo server the keyword you typed or that was filled in (for example "phở" or "bún chả"; empty means featured places) and the language.
Location is optional: without location permission you can still search, just without distances. The app only asks for location permission when you tap "Use my location"; then, as part of that search request, it also sends your device's location coordinates rounded to 3 decimal places (about 110 m) and the search radius. The server rounds the coordinates again and only uses them to filter and sort places by distance for that search. On Android the app only requests approximate location; on iOS you can turn off "Precise Location" for CookGo in system settings. CookGo does not store or log your coordinates or your keyword, never sends them to analytics and does not pass them to any third party.
When you tap a place, the app asks the server for that place's detail page (photos, address, opening hours, website, description; the app does not show places' phone numbers); this request contains only the place's ID and the language, not your location. Place photos are loaded from CookGo's image server (img.cookgo.space, section 8). If you tap a website, it opens in your browser and you leave CookGo. If results cannot be loaded (for example without a connection), the app shows an error so you can try again; apart from the general rate limits (section 3.1), there is no separate quota for place searches.
Ordering via ShopeeFood: for users in Vietnam, the detail page of some places may show an "Order via ShopeeFood" button that opens that place's page on ShopeeFood. This is an affiliate link: CookGo may earn a commission if you order, at no extra cost to you. The link contains neither your location, your keyword nor your install ID; when you open it, ShopeeFood processes data under its own policies.
Place information (names, addresses, websites, opening hours, photos) is public business information compiled by the CookGo team. For some places we also keep a contact phone number that only the CookGo team uses internally; it is never shown in the app. Owners who want the details of their place corrected or removed can contact us (section 11).
3.4. Family meal suggestions and searching by ingredients
Family meal suggestions. When you ask for suggestions, the app sends the server your choices for that request: the occasion (for example an everyday meal, Tet, a memorial-day meal, the full/new-moon days, a birthday, Mid-Autumn, a party at home), how many people you are cooking for, ingredients you like and dislike, tastes or regional styles to favor or avoid (for example spicy, light, northern), diet (for example vegetarian), the language and how many suggestions you want. The server uses these choices only to pick and scale suitable meal sets and does not store or log them. To keep suggestions with equal scores in a stable order within a day but varied across days, the server uses a key computed from a one-way hash of the install ID combined with the date; this key is only used during the calculation and is not stored.
Searching by ingredients ("What's in my fridge?"). The app sends the server the ingredients you selected (as ingredient IDs from CookGo's catalog) and the language; the server uses them only to return matching recipes and does not store or log them.
Your latest choices (for meal suggestions and fridge ingredients) are remembered only on your device so you do not have to choose again next time. Some choices — such as vegetarian dishes or an offering meal — may reveal your religious beliefs or health; that is why we do not store them on our server. Suggestions are guidance only and are not guaranteed to suit your allergies or dietary requirements.
3.5. Recipe feedback
When you tap "Like"/"Dislike" or "Report a problem" on a recipe, the server stores: the recipe, the feedback type, the report reason, your message (if you write one, up to 1,000 characters), the language, the app version, the time, and a one-way hash (SHA-256) of the install ID — the original install ID is not stored. The hash is used only to allow one vote per device per recipe and to limit spam. This is pseudonymized data, not fully anonymous data.
Purpose: to help the content team fix quantities, steps, translations or safety issues. Only authorized CookGo editors and administrators can see feedback. Please do not include personal information (name, phone number, address…) in your message.
3.6. Searches with no results
Your search text is sent to the server to return results; the server does not write it to its access logs. When a search returns no results, the server stores that search term in aggregated form, not linked to any device (normalized form, one sample spelling, language, count, first/last seen) to suggest new recipes to the content team. Please do not type personal information into the search box.
3.7. Technical connection data
As with any Internet service, our server and infrastructure providers receive the IP address, time and technical details of each request in order to deliver content. The CookGo server uses the IP address in memory to rate-limit requests; CookGo's access log records only the route pattern, the status code and the processing time — not IP addresses, query strings, install IDs or coordinates. Our hosting provider and Cloudflare (storage and delivery of images at img.cookgo.space) may keep technical logs under their own policies.
3.8. Data that stays on your device
The following data is stored locally on your device and is not sent to the CookGo server (except for the details sent with the device record or with individual requests, as described in sections 3.2 and 3.4):
- favorites, notes and shopping lists;
- recipes and images downloaded for offline use;
- your latest family-meal choices and the ingredients you selected in "What's in my fridge?";
- your consent choice for each purpose (analytics, personalized ads, notifications);
- the birth year you enter, if CookGo offers alcohol content (section 7);
- settings: language, unit system, notification choices, the last verified CookGo Premium status, ad-frequency and rating-prompt counters.
This data is deleted when you uninstall the app or clear its data. Depending on your operating system settings, it may be included in your device backup (iCloud/Google). When you share a recipe or send your shopping list through Zalo, messages or another app, the content goes through the app you choose; CookGo does not receive it.
4. Analytics, crash reporting and advertising
4.1. Firebase Analytics and Firebase Crashlytics
We use Firebase Analytics (Google) to understand how the app is used. The events recorded are: viewing a recipe; starting and finishing cooking; searching and searches with no results (the search text is not sent); searching by ingredients (the ingredient list is not sent); asking for family meal suggestions, opening a meal set and adding a meal set to the shopping list; sharing a recipe; searching for places near you (only whether the search started from a recipe or the places screen, whether a keyword was typed and location was used, and how many results were found; never the keyword or the location), opening a place's details; tapping an affiliate link; liking/disliking and reporting a recipe; viewing/buying Premium; opening a notification; confirming your age (only if alcohol content is offered); and using "Delete my data". Event parameters contain only recipe, meal-set or place IDs/slugs/categories — no personal content, location or dietary choices. Firebase also automatically collects certain information such as an app instance ID, device model, operating system, app version and a country/region estimated from the IP address.
We use Firebase Crashlytics to receive reports when the app crashes (error details, device model, operating system, app version, a Crashlytics installation identifier) in order to fix bugs.
Both analytics and crash reporting are off by default and are only turned on when you switch on "Usage statistics" on the consent screen shown the first time you open the app; until you agree, the app sends no analytics events or crash reports. That screen has a separate switch for each purpose — usage statistics (including crash reports), personalized ads, notifications. You can withdraw consent at any time in the app under Settings > Privacy > Consent choices or by contacting us.
4.2. Google AdMob advertising
The free version shows ads through Google AdMob and [TODO: list the mediation ad networks enabled in AdMob (for example AppLovin, Meta Audience Network, Pangle), or delete this mention if none are enabled]. There are no ads in cooking mode. To serve and measure ads, prevent fraud and cap frequency, AdMob may collect the IP address, device information, the device advertising identifier (Android Advertising ID / IDFA on iOS) and ad interactions.
- Personalized ads are only shown with your consent. In regions where the law requires it (for example the European Union and the United Kingdom), the app shows Google's consent dialog (User Messaging Platform – UMP). You can change your choice at any time in Settings > Privacy > Personalised ad choices.
- On iOS, the app accesses the IDFA only if you allow it through Apple's App Tracking Transparency prompt. You can change this in iOS Settings > Privacy & Security > Tracking.
- If you do not consent, you may still see non-personalized, contextual ads.
- We block alcohol and gambling ad categories in AdMob.
- Buying CookGo Premium turns off all AdMob ads in the app.
How Google uses data from partner apps: https://policies.google.com/technologies/partner-sites.
5. In-app purchases (CookGo Premium)
Purchases of CookGo Premium (the auto-renewing yearly plan or the lifetime purchase) are processed by the Apple App Store or Google Play. CookGo does not receive your card number, bank account or payment details. The app only receives the transaction information it needs from the store (the product purchased, the status and expiry of the yearly plan) and verifies it on the device; the CookGo server does not receive this data. Renewal, cancellation of the yearly plan and refunds are managed by the store under Apple's/Google's policies.
6. Affiliate links and external sites
For users in Vietnam, some recipes and the shopping list contain affiliate links to Shopee or TikTok Shop, always labeled "Affiliate link". CookGo only records the click event in analytics (section 4.1). The "Order via ShopeeFood" button on a place's detail page in "Good places near you" (section 3.3) is also an affiliate link. When you open a link you leave CookGo; the shopping platform and affiliate network may use cookies or similar technologies under their own policies. There are no links to buy alcoholic drinks.
7. Age of users and alcohol content
Audience. CookGo is a general-audience cooking app and is not designed specifically for children. If you are under 16, you need the consent of a parent or guardian to use CookGo, and should ask them to make the consent choices (notifications, location, analytics, personalized ads). CookGo has no general age screen, no accounts and does not ask for names, photos or contact details. Even so, every device that uses the app — including a child's — produces the data described in this Policy (install ID, device record, AdMob advertising data). If a parent or guardian wants a child's data deleted, please use "Delete my data" on the child's device or contact support@cookgo.space.
Alcohol content. At launch, CookGo does not offer alcohol content. If and when CookGo offers a "Cocktails & mixed drinks" category or recipes containing alcohol, that content only opens after you enter your birth year and it shows you are of age: 18, or 21 if your device region is the United States (or a higher legal drinking age where you live). The birth year is stored only on your device and is never sent to CookGo or anyone else. Alcohol content is never sent as a notification, and there are no purchase links, place suggestions or ads for alcoholic drinks; alcoholic recipes carry the warnings "Never drink and drive." and "Not for anyone under 18."
8. Recipients and international transfers
We do not sell personal data. Data is shared with the following parties, only as far as necessary:
| Recipient | Role | Data involved |
|---|---|---|
| Google (Firebase Cloud Messaging, Firebase Analytics, Firebase Crashlytics) | Notifications, analytics, crash reports | FCM token, notification content, usage events, crash reports, device information |
| Google (AdMob, User Messaging Platform) | Advertising and consent management | Advertising ID, IP address, device information, consent choices |
| ShopeeFood and affiliate platforms | When you open an affiliate link | Data you give that platform directly; CookGo does not pass on your personal data |
| Apple (APNs, App Store) and Google (Google Play) | Delivering notifications to iPhones, processing purchases | As required for the store/platform role |
| Cloudflare (R2) | Storing and delivering recipe and place images | IP address and technical data when loading images |
| [TODO: hosting provider for the API server and PostgreSQL database] | API server and database | All server-side data described in section 3 |
| Competent public authorities | When required by law | As lawfully requested |
CookGo's servers are located in [TODO: server country/region — planned: Singapore; confirm after choosing the hosting provider]. Google, Apple and Cloudflare operate global infrastructure, so data may be processed outside Vietnam and outside your country (for example in the United States, the European Union or Singapore). When transferring personal data abroad, we carry out the procedures and safeguards required by the Law on Personal Data Protection and Decree 356/2025/ND-CP, and rely on these providers' data protection commitments.
9. Retention
| Data | Retention |
|---|---|
| Device record (including push token and time slots) | Deleted automatically after 30 days without opening the app; deleted immediately when you use "Delete my data"; the push token and time slots are deleted when you turn notifications off entirely |
| Sent-notification log | 30 days |
| Location coordinates and keywords when searching for places near you | Not stored |
| Family-meal choices, fridge-search ingredients | Not stored on the server (remembered only on your device) |
| Recipe feedback (with hash) | 365 days, or earlier if you use "Delete my data" or ask us to delete it |
| Searches with no results (aggregated, not linked to a device) | Deleted automatically if unhandled and not searched again for 90 days; terms the content team has handled (planned, written or dismissed) are deleted automatically if not searched again for 6 months |
| Admin dashboard records (log of actions taken by CookGo staff, IP addresses of staff sign-ins and actions) | Action log: 24 months; IP addresses: cleared after 30 days |
| Emails you send us (including any install ID you include) | 12 months after your request is resolved, then deleted |
| On-device data | Until you delete it in the app, clear app data or uninstall the app |
| Data held by Google (Analytics, Crashlytics, AdMob) | Analytics event data: 2 months (the shortest Firebase/Google Analytics retention setting, which we use); Crashlytics crash reports: 90 days; AdMob: under Google's policies |
10. Security
We apply appropriate measures: collecting only the minimum data; encrypting connections (HTTPS); not logging IP addresses, install IDs, coordinates or search text; storing a hash instead of the install ID with feedback; restricting access to the admin dashboard to authorized staff. No measure is perfectly secure; if a personal data breach occurs, we will notify the competent authority and affected people as required by law.
11. Your rights
Under Vietnam's Law on Personal Data Protection, your main rights are:
- to be informed about the processing of your personal data;
- to consent or refuse, and to withdraw consent at any time (withdrawal does not affect the lawfulness of earlier processing);
- to view, access and request a copy of your personal data;
- to request correction of inaccurate data;
- to request deletion, restriction of processing, and to object to processing;
- to complain, denounce, sue and claim damages as provided by law.
How to exercise them:
- Directly in the app/device: tap "Delete my data" in Settings > Privacy (this deletes the device record, notification slots and log, and every feedback entry linked to your device's hash on our server, then wipes the app's local data and creates a new install ID), turn notifications off entirely (deletes the push token, time slots and notification log), refuse or revoke location permission, change your analytics/ads consent choices, change the iOS tracking setting, clear app data or uninstall the app.
- Email support@cookgo.space with the subject "Personal data request" (in the app: Settings > About > Help & contact) to access, get a copy of, correct or delete your server-side data, or for any other question. Because CookGo has no accounts and server-side data is not linked to your identity, please include your install ID, copied from Settings > About > Install ID: with it we can find your device record and notification data, and the feedback linked to the hash of that ID. Without it we cannot tell which data is yours from an email alone. The quickest way to delete your server-side data remains the "Delete my data" button in the app. We use the install ID you send only to handle your request.
- We acknowledge requests within 3 working days and respond within the time limits set by law. We may need to verify a request and may refuse it where the law permits, with reasons.
- If you are not satisfied, you may complain to the specialized personal data protection authority under the Ministry of Public Security — currently the Department of Cybersecurity and High-Tech Crime Prevention (A05) [TODO: confirm with counsel before publication].
12. Users in the European Union, the European Economic Area and the United Kingdom
If the EU General Data Protection Regulation (GDPR) or the UK GDPR applies to you, the following also applies.
Legal bases:
| Processing | Legal basis |
|---|---|
| Device record without a push token (language, time zone, version, notification settings, last opened) | Legitimate interests (Art. 6(1)(f)) in operating the service and counting active devices |
| Meal-suggestion notifications (push token, notification log) | Consent (Art. 6(1)(a)), given by turning notifications on and granting permission |
| Family meal suggestions, searching by ingredients | Performance of a contract (Art. 6(1)(b)) — providing the feature you ask for; choices that may reveal religious beliefs or health are only processed when you actively select and send them, and are not stored [TODO: Art. 9 GDPR condition to be confirmed by counsel] |
| Location and keyword for places near you | Location: consent (Art. 6(1)(a)), given by tapping "Use my location" and granting location permission; keyword: performance of a contract (Art. 6(1)(b)) — providing the feature you ask for |
| Analytics and personalized ads; access to the advertising ID | Consent (Art. 6(1)(a)), collected through the consent dialog; where required, also under the ePrivacy rules on device access |
| Crash reporting | Consent (Art. 6(1)(a)), through the same "Usage statistics" switch |
| Recipe feedback, aggregated no-result searches | Legitimate interests (Art. 6(1)(f)) in improving recipe content |
| Technical connection data, rate limiting, security | Legitimate interests (Art. 6(1)(f)) in operating and protecting the service |
| Premium entitlement check | Performance of a contract (Art. 6(1)(b)) |
| Responding to your requests, legal obligations | Legal obligation (Art. 6(1)(c)) |
Your rights: access, rectification, erasure, restriction, data portability (where processing is based on consent or contract), objection to processing based on legitimate interests, and withdrawal of consent at any time. Exercise them as described in section 11. You also have the right to lodge a complaint with the data protection supervisory authority in your country of residence or work.
International transfers: Vietnam does not have an EU adequacy decision. Where your data is transferred outside the EEA/UK, we rely on appropriate safeguards such as the European Commission's Standard Contractual Clauses (and the providers' own transfer mechanisms, for example Google's) [TODO: confirm for each provider and for the hosting provider].
We do not carry out automated decision-making that produces legal or similarly significant effects on you. Notification meal suggestions are chosen automatically by meal type, language and recent suggestions only; family meal suggestions use only the choices you send with that request. No suggestion is based on a profile of your behavior.
13. The cookgo.space website
The website https://cookgo.space is a static site that introduces CookGo. It currently uses no tracking cookies or analytics tools; the website's hosting provider may keep technical logs (IP address, time of access). The recipe share pages at https://share.cookgo.space/r/... are served by the CookGo server and are covered by section 3.7. If we add analytics or advertising to the website in the future, we will update this Policy first.
14. Changes to this Policy
We may update this Policy when features or laws change. The new version will be published at https://cookgo.space/en/legal/privacy with its update date. For significant changes affecting your rights, we will notify you in the app and ask for consent again where the law requires.
15. Contact
Questions or requests about privacy: support@cookgo.space (also reachable from the app under Settings > About > Help & contact) — [TODO: operator legal name], [TODO: registered address].
This Policy is available in Vietnamese and English. The English version is a translation of the Vietnamese version; for users in Vietnam, the Vietnamese version prevails in case of any inconsistency.