[{"data":1,"prerenderedAt":42},["ShallowReactive",2],{"legal-primovegan-privacy-policy":3},{"appName":4,"title":5,"updated":6,"body":7,"toc":8},"Primo Vegan","Privacy Policy","Last Updated: September 28, 2026","\u003Ch2 id=\"introduction\">Introduction\u003C\u002Fh2>\n                \u003Cp>\n                    Welcome to Primo Vegan! Primo Vegan reads the ingredient label or the barcode of a packaged food from a photograph and tells you what that label declares about animal-derived ingredients. It is an information tool and not dietary, ethical, or professional advice: it does not certify a product as vegan, it cannot detect cross-contamination or know how an ingredient was produced, and it is never a guarantee that a product is free of animal ingredients. Always check the pack itself. Protecting your privacy is of utmost importance to us. This Privacy Policy explains how Primo Vegan (\"we,\" \"our,\" or \"us\") collects, uses, discloses, and safeguards your information when you use our application. This is an information notice rather than a consent form: simply using the App is not treated as your consent, and where the law requires your consent for a specific processing operation we ask you for it separately inside the App. If you do not agree with this Privacy Policy, please refrain from using the application.\n                \u003C\u002Fp>\n\n                \u003Ch2 id=\"section-1-data-we-collect\">1. Data We Collect\u003C\u002Fh2>\n\n                \u003Ch3>1.1 Camera and Image Data\u003C\u002Fh3>\n                \u003Cul>\n                    \u003Cli>Primo Vegan requires camera access, and optionally photo library access, to capture or select the photo of the product label or barcode you want checked\u003C\u002Fli>\n                    \u003Cli>The photo is sent to the Google Gemini API, which reads the ingredients panel and returns the text it found\u003C\u002Fli>\n                    \u003Cli>On iOS, you are asked to confirm before your first photo is sent for AI analysis. If you decline, no photo leaves your device and the analysis does not run\u003C\u002Fli>\n                    \u003Cli>Small thumbnail images are stored locally on your device as part of your scan history\u003C\u002Fli>\n                    \u003Cli>Photos are never written to our servers, our databases, or any file storage of ours. They exist only in the memory of our processing function for the duration of the request, and they are transmitted to no party other than the Google services named in this policy\u003C\u002Fli>\n                    \u003Cli>A photo you choose from your device library may contain metadata that the camera embedded in the file itself, which can include location coordinates, the time of capture, and the device model. The App does not strip this metadata before the photo is analyzed, so it may reach the Google services above inside the image file. The App never adds coordinates of its own to a photo or to a request, because it holds no location permission\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch3>1.2 Scan and History Data\u003C\u002Fh3>\n                \u003Cul>\n                    \u003Cli>Scan results, including the verdict, the reason given for it, the product name where one was found, the barcode where one was read, the ingredients the App flagged, and which source the answer came from, are stored locally on your device\u003C\u002Fli>\n                    \u003Cli>Associated metadata such as timestamps is stored alongside each scan\u003C\u002Fli>\n                    \u003Cli>Up to 100 scan records are retained on your device, and older records are removed automatically as newer ones are added\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch3>1.3 Product Lookup and Diagnostic Data\u003C\u002Fh3>\n                \u003Cul>\n                    \u003Cli>When a barcode is read from your photo, that barcode is sent to Open Food Facts, a public product database, so that the ingredient list recorded there can be retrieved. A barcode identifies a product, not a person, and nothing about you is sent with it\u003C\u002Fli>\n                    \u003Cli>Product lookups are made at scan time, and our server stores no product data\u003C\u002Fli>\n                    \u003Cli>Primo Vegan does not request location permission and does not read your device's GPS position. A photo you select from your device library may itself contain coordinates recorded by the camera that took it, as described in section 1.1\u003C\u002Fli>\n                    \u003Cli>Our backend runs on Google Cloud. As with any internet service, the platform records the IP address a request arrives from. Our own diagnostic entries record the verdict, the source it came from, timings, and error codes. No image data is written to these logs. They are kept for 30 days and are then deleted automatically\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch3>1.4 Preference Data\u003C\u002Fh3>\n                \u003Cul>\n                    \u003Cli>App preferences such as language settings, the answers you give during onboarding, and your AI analysis consent choice on iOS are stored locally on your device\u003C\u002Fli>\n                    \u003Cli>No personal profile data is collected or transmitted. We do not ask for your name, email address, telephone number, or any other contact detail, and we never ask you about your health or your allergies. The onboarding answer about how you eat stays on your device and is never transmitted\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch3>1.5 Analytics\u003C\u002Fh3>\n                \u003Cul>\n                    \u003Cli>We collect pseudonymous usage data through Firebase Analytics, including screen views, feature usage events, and user properties\u003C\u002Fli>\n                    \u003Cli>The user properties we set are the platform, the app language, whether a scan has been run, and whether a subscription is active. All of these are low-cardinality values that do not identify you. What you answer in onboarding, including how you eat, stays on your device and is never sent to analytics. How a person eats can reveal a philosophical belief, which the GDPR treats as a special category of personal data, so that answer never leaves your device\u003C\u002Fli>\n                    \u003Cli>No personally identifiable information (PII) is collected during this process, and we never set a user identifier of our own\u003C\u002Fli>\n                    \u003Cli>Firebase Analytics generates a pseudonymous app instance identifier for your installation. We pass that identifier to RevenueCat so that subscription events can be matched to app usage\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch3>1.6 Premium Features and Attribution\u003C\u002Fh3>\n                \u003Cul>\n                    \u003Cli>For users who purchase premium features, we utilize RevenueCat for subscription management and receipt validation. Payment itself is processed by Apple or Google. Neither we nor RevenueCat see your card, bank, or billing details\u003C\u002Fli>\n                    \u003Cli>RevenueCat may collect data related to transactions as outlined in their Privacy Policy\u003C\u002Fli>\n                    \u003Cli>RevenueCat assigns a randomly generated anonymous app user identifier to your installation so that purchases and premium access can be recognized on that device. It is not your name, your email address, or an account with us\u003C\u002Fli>\n                    \u003Cli>Users are anonymous by default; no account registration is required and the App contains no login\u003C\u002Fli>\n                    \u003Cli>We measure which advertising campaign an installation came from through RevenueCat. On iOS it receives an Apple Search Ads attribution token, the vendor identifier for your device and, only where you allow tracking, the identifier for advertisers, together with the subscription events a campaign is credited for. The App displays no advertisements of its own\u003C\u002Fli>\n                    \u003Cli>On iOS you are asked, through Apple's App Tracking Transparency prompt, whether the App may track you. If you decline, the identifier for advertisers is not available to the App or to RevenueCat, and measurement falls back to Apple's own attribution service\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch2 id=\"section-2-how-we-use-your-data\">2. How We Use Your Data\u003C\u002Fh2>\n                \u003Cul>\n                    \u003Cli>\u003Cstrong>Reading a Label:\u003C\u002Fstrong> Photos are processed by AI to transcribe the ingredients panel, and the transcribed text is checked against our animal ingredient rule set to produce the verdict you see\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Product Lookup:\u003C\u002Fstrong> A barcode read from your photo is used to retrieve the product's recorded ingredient list from Open Food Facts\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Improving App Functionality:\u003C\u002Fstrong> Pseudonymous usage data helps us optimize app performance and user experience\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Local Storage:\u003C\u002Fstrong> Scan history and thumbnails are stored locally on your device for your convenience\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Reminders:\u003C\u002Fstrong> If you allow notifications, the App schedules reminders on your device, such as a note before a free trial ends. These are local notifications prepared and delivered by your device. No push service is used, and no reminder data is sent to us or to anyone else\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Subscription Management:\u003C\u002Fstrong> Purchases are made through the Apple App Store or Google Play, and RevenueCat validates the resulting receipt so that your premium access stays in sync\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch3>2.1 Legal Bases (EEA and UK)\u003C\u002Fh3>\n                \u003Cp>If you are in the European Economic Area or the United Kingdom, we rely on the following legal bases under Article 6 of the GDPR:\u003C\u002Fp>\n                \u003Cul>\n                    \u003Cli>\u003Cstrong>Performance of a contract\u003C\u002Fstrong> for carrying out the scan you asked for, which includes sending your photo to the Google Gemini API and looking a barcode up in Open Food Facts, and for managing a subscription you purchase\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Consent\u003C\u002Fstrong> on iOS for the off-device AI analysis of your photos, which we ask for before the first photo is sent, and for tracking through the App Tracking Transparency prompt. If you decline the AI consent, no photo leaves your device\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Legitimate interests\u003C\u002Fstrong> for pseudonymous usage analytics and for keeping the service working and preventing abuse of our processing function. In each case we limit ourselves to data that does not identify you personally\u003C\u002Fli>\n                \u003C\u002Ful>\n                \u003Cp>We do not ask for, infer, or record any health data, and the onboarding answer about how you eat, which can reveal a philosophical belief, stays on your device and reaches neither us nor our analytics. A scan tells you what a label says; it records nothing about you. Where we rely on consent, you may withdraw it at any time. Withdrawal does not affect processing already carried out. Where we rely on a legitimate interest, you may object, as described in section 5.\u003C\u002Fp>\n\n                \u003Ch2 id=\"section-3-data-sharing\">3. Data Sharing\u003C\u002Fh2>\n                \u003Cp>We do not share your personal data with third parties, except as required for the following purposes:\u003C\u002Fp>\n                \u003Cul>\n                    \u003Cli>\u003Cstrong>Label Reading:\u003C\u002Fstrong> Your photo is sent to the Google Gemini API so that the ingredients panel can be transcribed\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Product Lookup:\u003C\u002Fstrong> A barcode read from your photo is sent to Open Food Facts. Your photo is never sent there\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Analytics:\u003C\u002Fstrong> Firebase Analytics collects pseudonymous usage data\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Attribution:\u003C\u002Fstrong> RevenueCat receives subscription events with a pseudonymous installation identifier and, on iOS, an Apple Search Ads attribution token, so that a campaign can be credited\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Backend Hosting:\u003C\u002Fstrong> The function that receives and processes your photo runs on Google Cloud, and app configuration is fetched from Firebase Remote Config, which sends a Firebase installation identifier to Google with each fetch\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Payments:\u003C\u002Fstrong> Purchases are processed by the Apple App Store or Google Play. RevenueCat receives the resulting receipt and your subscription status, not your payment details\u003C\u002Fli>\n                \u003C\u002Ful>\n                \u003Cp>Third-party services operate independently and are governed by their respective privacy policies.\u003C\u002Fp>\n\n                \u003Ch2 id=\"section-4-data-storage-and-security\">4. Data Storage and Security\u003C\u002Fh2>\n                \u003Cp>We implement robust measures to safeguard your data:\u003C\u002Fp>\n                \u003Cul>\n                    \u003Cli>\u003Cstrong>Local-First Storage:\u003C\u002Fstrong> All scan history, thumbnails, and preferences are stored locally on your device using Capacitor Preferences\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>No User Accounts:\u003C\u002Fstrong> Primo Vegan does not require account registration; users remain anonymous by default\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Temporary Processing:\u003C\u002Fstrong> Photos sent to the Google Gemini API are processed in real time and are not stored by us. Google retains what it receives under its own terms, which for the Gemini API include holding prompts and responses for a limited period of abuse monitoring. See the links in section 7\u003C\u002Fli>                    \u003Cli>\u003Cstrong>Data Limits:\u003C\u002Fstrong> Scan history is automatically trimmed to manage device storage\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Retention:\u003C\u002Fstrong> Scan history, thumbnails, and preferences stay on your device until you delete them or uninstall the App, capped at the 100 most recent records. Server diagnostic logs are kept for 30 days. Firebase Analytics event data is retained by Google for the period set in our analytics configuration, which does not exceed 14 months. RevenueCat holds subscription records for as long as your subscription and the app stores' own records require\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Device Backups:\u003C\u002Fstrong> On Android, application data may be included in Google's Android Auto Backup where that feature is enabled for your device, which can place your local scan history and thumbnails in your own Google account backup. A backup copy held in your Google account is not affected by uninstalling the App and can be restored on a later install; you can delete it in your Google account backup settings\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Security Measures:\u003C\u002Fstrong> Industry-standard security practices, including encrypted connections, protect data transmission to third-party services\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch2 id=\"section-5-user-rights\">5. User Rights\u003C\u002Fh2>\n                \u003Cp>You have the following rights regarding your data:\u003C\u002Fp>\n                \u003Cul>\n                    \u003Cli>\u003Cstrong>Access and Deletion on Your Device:\u003C\u002Fstrong> You can view and delete the data the App stores on your device, including scan history, thumbnails, and preferences, from the App's settings. Uninstalling the App also removes the data stored on your device, although an Android backup copy in your Google account can survive it, as described in section 4\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Records Held by Our Providers:\u003C\u002Fstrong> The in-app controls do not reach analytics events, attribution events, or the subscription records held by RevenueCat. Write to \u003Cstrong>info@techprimo.ai\u003C\u002Fstrong> to ask for those to be erased\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Camera, Photo and Notification Permissions:\u003C\u002Fstrong> You can revoke camera, photo library, or notification access at any time through your device's system settings\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>AI Choice:\u003C\u002Fstrong> On iOS you may decline AI analysis of your photos, in which case no photo is sent anywhere\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Tracking Choice:\u003C\u002Fstrong> On iOS you may decline tracking at the App Tracking Transparency prompt, and you may change that answer later in your device's privacy settings\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Transparency:\u003C\u002Fstrong> You have the right to request details about how your data is used\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch3>5.1 Rights Under the GDPR and Similar Laws\u003C\u002Fh3>\n                \u003Cp>If you are in the European Economic Area, the United Kingdom, or a country with comparable law, you also have the right to:\u003C\u002Fp>\n                \u003Cul>\n                    \u003Cli>Request access to the personal data we hold about you, and a copy of it\u003C\u002Fli>\n                    \u003Cli>Have inaccurate data corrected, and have data erased\u003C\u002Fli>\n                    \u003Cli>Ask us to restrict processing, and object to processing we base on a legitimate interest, including our usage analytics\u003C\u002Fli>\n                    \u003Cli>Receive the data you provided in a portable form, where the processing is based on consent or a contract and is carried out by automated means\u003C\u002Fli>\n                    \u003Cli>Withdraw a consent you have given, such as the iOS AI analysis consent, at any time\u003C\u002Fli>\n                    \u003Cli>Lodge a complaint with your national supervisory authority. Ours is the Croatian Personal Data Protection Agency (AZOP, \u003Ca href=\"https:\u002F\u002Fazop.hr\" target=\"_blank\" rel=\"noopener\">azop.hr\u003C\u002Fa>), and you may also complain to the authority where you live or work\u003C\u002Fli>\n                \u003C\u002Ful>\n                \u003Cp>\n                    Write to \u003Cstrong>info@techprimo.ai\u003C\u002Fstrong> to exercise any of these rights, and we will respond within one month. Because the App has no accounts and we set no identifier of our own, we often cannot connect a request to a particular installation. Where we cannot identify you from the information you give us, we will say so and explain what else would be needed.\n                \u003C\u002Fp>\n\n                \u003Ch3>5.2 International Transfers\u003C\u002Fh3>\n                \u003Cp>\n                    The providers named in section 7 are based in, or process data in, the United States. Where personal data leaves the European Economic Area or the United Kingdom, the transfer relies on the European Commission's standard contractual clauses (with the UK Addendum where relevant) incorporated into our agreements with those providers, or on an adequacy decision such as the EU-US Data Privacy Framework where the provider is certified under it.\n                \u003C\u002Fp>\n\n                \u003Ch2 id=\"section-6-cookies-and-tracking-technologies\">6. Cookies and Tracking Technologies\u003C\u002Fh2>\n                \u003Cp>Primo Vegan uses limited tracking technologies to enhance functionality:\u003C\u002Fp>\n\n                \u003Ch3>6.1 What We Use\u003C\u002Fh3>\n                \u003Cul>\n                    \u003Cli>\u003Cstrong>Google Analytics (Firebase):\u003C\u002Fstrong> Collects pseudonymous usage data for app improvement\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>RevenueCat:\u003C\u002Fstrong> Tracks purchase flows and subscription verification, and attributes an installation to an advertising campaign using a pseudonymous installation identifier and, on iOS, only where you allow tracking, the identifier for advertisers\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch2 id=\"section-7-third-party-services\">7. Third-Party Services\u003C\u002Fh2>\n                \u003Cp>Primo Vegan integrates with the following third-party services:\u003C\u002Fp>\n                \u003Cul>\n                    \u003Cli>\u003Cstrong>Google Gemini API\u003C\u002Fstrong> (\u003Ca href=\"https:\u002F\u002Fpolicies.google.com\u002Fprivacy\" target=\"_blank\" rel=\"noopener\">Privacy Policy\u003C\u002Fa>, \u003Ca href=\"https:\u002F\u002Fai.google.dev\u002Fgemini-api\u002Fterms\" target=\"_blank\" rel=\"noopener\">API Additional Terms\u003C\u002Fa>): Reading the ingredients panel from the photo you submit. We use the Gemini API with an API key, and Google may retain what is sent for a limited period of abuse monitoring under those terms\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Open Food Facts\u003C\u002Fstrong> (\u003Ca href=\"https:\u002F\u002Fworld.openfoodfacts.org\u002Fprivacy\" target=\"_blank\" rel=\"noopener\">Privacy Policy\u003C\u002Fa>): A public, collaborative product database, queried by barcode for the ingredient list recorded for a product. Its product data is made available under the Open Database License\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Google Cloud Platform and Firebase\u003C\u002Fstrong> (\u003Ca href=\"https:\u002F\u002Ffirebase.google.com\u002Fsupport\u002Fprivacy\" target=\"_blank\" rel=\"noopener\">Privacy Policy\u003C\u002Fa>): Hosting of the Cloud Function that receives and processes your photo, and delivery of app configuration through Firebase Remote Config, which sends a Firebase installation identifier to Google with each fetch\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Google Analytics (Firebase)\u003C\u002Fstrong> (\u003Ca href=\"https:\u002F\u002Ffirebase.google.com\u002Fsupport\u002Fprivacy\" target=\"_blank\" rel=\"noopener\">Privacy Policy\u003C\u002Fa>): Pseudonymous usage analytics\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>RevenueCat\u003C\u002Fstrong> (\u003Ca href=\"https:\u002F\u002Fwww.revenuecat.com\u002Fprivacy\" target=\"_blank\" rel=\"noopener\">Privacy Policy\u003C\u002Fa>): Subscription management, receipt validation and advertising campaign attribution\u003C\u002Fli>\n                    \u003Cli>\u003Cstrong>Apple App Store and Google Play Store\u003C\u002Fstrong>: Payment processing and subscription billing\u003C\u002Fli>\n                \u003C\u002Ful>\n\n                \u003Ch2 id=\"section-8-children-s-privacy\">8. Children's Privacy\u003C\u002Fh2>\n                \u003Cp>\n                    Primo Vegan is designed for users aged 13 and above. If you are under 13, you may not use the App. Users between 13-18 should obtain parental consent before using the App. We do not knowingly collect data from children under 13.\n                \u003C\u002Fp>\n\n                \u003Ch2 id=\"section-9-changes-to-this-privacy-policy\">9. Changes to This Privacy Policy\u003C\u002Fh2>\n                \u003Cp>\n                    We may update this Privacy Policy to reflect changes in our practices or legal requirements. Updates will be posted on this page with a revised effective date. We encourage you to review this policy periodically.\n                \u003C\u002Fp>\n\n                \u003Ch2 id=\"section-10-contact-us\">10. Contact Us\u003C\u002Fh2>\n                \u003Cp>\n                    Primo Vegan is provided by Tech Primo, established in Croatia, which is the data controller for the processing described in this policy.\n                \u003C\u002Fp>\n                \u003Cp>\n                    If you have any questions, concerns, or feedback about this Privacy Policy or our data practices, or if you wish to exercise any of the rights in section 5, please contact us at \u003Cstrong>info@techprimo.ai\u003C\u002Fstrong>\n                \u003C\u002Fp>\n                \u003Cp>\n                    Your use of Primo Vegan is also governed by our \u003Ca href=\"terms-and-conditions.html\">Terms and Conditions\u003C\u002Fa>.\n                \u003C\u002Fp>\n                \u003Cp class=\"legal-closing\">\n                    Thank you for trusting Primo Vegan with your privacy.\n                \u003C\u002Fp>",[9,12,15,18,21,24,27,30,33,36,39],{"id":10,"text":11},"introduction","Introduction",{"id":13,"text":14},"section-1-data-we-collect","1. Data We Collect",{"id":16,"text":17},"section-2-how-we-use-your-data","2. How We Use Your Data",{"id":19,"text":20},"section-3-data-sharing","3. Data Sharing",{"id":22,"text":23},"section-4-data-storage-and-security","4. Data Storage and Security",{"id":25,"text":26},"section-5-user-rights","5. User Rights",{"id":28,"text":29},"section-6-cookies-and-tracking-technologies","6. Cookies and Tracking Technologies",{"id":31,"text":32},"section-7-third-party-services","7. Third-Party Services",{"id":34,"text":35},"section-8-children-s-privacy","8. Children's Privacy",{"id":37,"text":38},"section-9-changes-to-this-privacy-policy","9. Changes to This Privacy Policy",{"id":40,"text":41},"section-10-contact-us","10. Contact Us",1793088261846]