QR & Barcode Scanner
Privacy policy
Last updated: October 22, 2026
Template – not yet final
This document is a template. The company name and address ([COMPANY NAME, ADDRESS]), the contact address (privacy@example.com) and every other value in square brackets must be completed, and the text must be reviewed by a qualified lawyer, before launch.
This privacy policy explains how [COMPANY NAME, ADDRESS] processes personal data when you use the QR & Barcode Scanner mobile app and this website.
Our principle is simple: we process as little personal data as possible, and you can use the app without an account. Your family's health profiles are stored on your device. They reach our servers only if you have a paid plan (Standard or Premium) and separately agree to include them in your cloud backup.
1.At a glance
- Health profiles stay on your device. Ages, pregnancy, allergies, diets and conditions are analysed on your phone and are not sent to us – unless you have a paid plan and turn on “Include family profiles” for your cloud backup. This switch is off by default.
- The camera works on your device. Camera images are not uploaded. Only a label photo that you actively send for AI reading is transmitted – to our server and to our AI provider in the United States – and we do not store it.
- Ads in the free version, never based on your health. Guests and free users see small banner ads from Google AdMob. In Europe we ask for your consent first, and on iPhone you decide whether apps may track you. Your health profiles, pantry, lists and scans are never given to advertisers. With a paid plan there are no ads. We do not sell personal data for money.
- You stay in control. You can export or delete the data on your device, and you can delete your account at any time in the app or as described on our account deletion page.
2.Who is responsible for your data
The controller within the meaning of the EU General Data Protection Regulation (GDPR) and of the Law of Georgia on Personal Data Protection is [COMPANY NAME, ADDRESS], a company registered in Georgia.
You can reach us about any privacy question at privacy@example.com. Our representative in the European Union under Art. 27 GDPR is [NAME, ADDRESS, EMAIL]. Our representative in the United Kingdom under Art. 27 UK GDPR is [NAME, ADDRESS, EMAIL]. [If a data protection officer is appointed: name and contact details.]
3.What data we process, why, and on which legal basis
Below you find each kind of processing, the data involved, the purpose and the legal basis under Art. 6 and Art. 9 GDPR.
Your account
If you create an account we process your email address, an optional display name, a securely hashed password (not when you sign in with Apple or Google), how you signed up, your language and the time the account was created and last changed. You can use the scanner, pantry, shopping list, history and family profiles without an account. An account is needed for AI label reading, for a paid plan and for the cloud backup.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR).
Sign in with Apple or Google
If you sign in with Apple or Google, we receive a unique account identifier, your email address (with Apple, possibly a private relay address) and, if you choose to share it, your name. We never receive your Apple or Google password. Apple and Google process your sign-in under their own privacy policies. If the email address confirmed by Apple or Google already belongs to an account, we link the two so that you keep one account.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR).
Camera and scanning
The app uses your camera only while you scan. Codes are recognised on your device. Camera images are not stored and not uploaded – only the decoded value (for example a barcode number or the text of a QR code) is used. Links found in QR codes are checked for typical risk signals on your device before you open them. On Android, codes and printed dates are recognised by Google ML Kit on your device; ML Kit may send Google technical information (such as device model, app version, performance and error codes), but no images. On iPhone, Apple's built-in recognition is used.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR). You can withdraw camera access at any time in your device settings.
Label photos and AI text extraction
If you actively send a photo of a label – for example an ingredient list or an expiry date – the photo is transmitted to our server and forwarded to our AI provider, [AI PROVIDER], which acts as our processor, to read the text. The provider does not use the photos to train AI models and deletes them within 30 days under its terms. We do not store the photo or the text that was read: the result is sent back to your app. For each reading we keep a record (time, purpose, result type, AI model used, size and cost of the request) linked to your account, to count your monthly readings and to control our costs. AI label reading needs an account. On your phone, dates are first read by your phone's own text recognition; AI is used only when you ask for it.
Please do not photograph people, documents or anything other than the product label.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR); for the usage records also our legitimate interest in controlling costs and preventing abuse (Art. 6(1)(f) GDPR).
Product lookups
When you scan a product, its barcode is sent to our server, without your account details. We answer from our own product database, which is built from the Open Food Facts family of open databases. If a product is missing, our server asks Open Food Facts for that barcode; Open Food Facts receives only the barcode, not your data. Our server logs record the requested barcode and the time, but not who asked. Product photos are loaded by your phone directly from the Open Food Facts image servers, which therefore see your IP address. Your health profiles are never part of a lookup – the analysis for your profiles happens on your device.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR) and our legitimate interest in a secure and stable service (Art. 6(1)(f) GDPR).
Family health profiles (special category data)
Profiles can contain a name, a birth date or age group (including infants and children), pregnancy, breastfeeding, allergies, intolerances, health conditions (for example diabetes or coeliac disease) and diets. This is data concerning health; some diets (such as halal or kosher) may also reveal religious beliefs. These are special categories of personal data (Art. 9 GDPR).
Profiles are stored only on your device, and the analysis of products for your profiles runs on your device. We do not receive your profiles.
Your profiles are sent to us only if you have a paid plan and turn on “Include family profiles” in the cloud backup settings. The switch is off by default. Turning it on asks for your separate, explicit consent, and only then are profiles included in the backups you make. If you turn it off again, your consent is withdrawn and the copy in the cloud is replaced by a backup without profiles.
Legal basis for including profiles in the cloud backup: your explicit consent (Art. 9(2)(a) and Art. 6(1)(a) GDPR). You can withdraw it at any time by turning “Include family profiles” off or by deleting your account. [Lawyer: legal basis, if any, for profiles that never leave your device.]
Pantry, shopping list and scan history
Your pantry (products, quantities, expiry dates, prices and notes), records of used and thrown-away products, your shopping list, scan history (including the content of scanned QR codes), saved QR codes, products you added yourself and your settings are stored on your device. They are sent to us only as part of the optional cloud backup. The app's data is excluded from Android's automatic backup to Google Drive.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR).
Cloud backup (paid plans, optional)
With a paid plan you can back up your data to our servers and restore it on a new phone. A backup is made only when you tap “Back up now”, and each backup replaces the previous one. It contains your pantry and used/thrown-away records, shopping list, recent scan history, saved QR codes, the products you added yourself (without photos), your settings and – only with your separate consent – your family profiles. We also store the name of the device it came from and the time. The backup is sent encrypted (TLS) and stored on our servers [CONFIRM ENCRYPTION AT REST]. It is linked to your account and used only to restore your data. If your paid plan ends, it stays linked to your account so that you can restore it if you subscribe again. It is deleted when you delete your account; to delete only the backup, write to privacy@example.com.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR) and, for health data in the backup, your explicit consent (Art. 9(2)(a) GDPR).
Products you add yourself
If no database knows a product, you can save it for yourself with a name, details and a photo. It is stored only on your device, including the photo. If you make a cloud backup, the product details (not the photo) are part of it. To share a product with everyone, you can add it on the Open Food Facts website; Open Food Facts then processes what you submit under its own terms and open licences.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR).
Push notifications
Expiry reminders are scheduled on your device as local notifications. They do not pass through our servers, and we do not collect a push token for them. You can turn reminders off in the app or in your phone's settings.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR).
In-app purchases (Standard and Premium)
Paid plans are purchased through the Apple App Store or Google Play, which process your payment under their own terms. We use RevenueCat to manage subscriptions. The RevenueCat software in the app also runs when you use the app without an account, with a random identifier; after you sign in it uses your account identifier. RevenueCat receives your purchases and subscription status. We store which product you bought, the store, the expiry date and whether it renews. We never receive your card or bank details.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR).
Emails
We send only service emails: a welcome email when you register with email and password, and password reset emails. They are delivered by our email provider, [EMAIL PROVIDER], which acts as our processor.
Legal basis: performance of our contract with you (Art. 6(1)(b) GDPR). We do not send marketing emails without your consent.
Diagnostics and server logs
We do not use analytics or crash-reporting tools of our own, in the app or on the website. The Google advertising software in the app (see “Advertising in the free version”) and, on Android, Google ML Kit send technical diagnostics to Google as described in this policy.
Our servers record technical log data for each request (time, requested address – for product lookups this includes the barcode –, result and duration) and error details, to keep the service secure and to fix errors. Our application logs do not contain your IP address; it is used for about a minute to limit abuse and may appear in the logs of our hosting infrastructure [CONFIRM].
Legal basis: our legitimate interest in a secure and working service (Art. 6(1)(f) GDPR).
Advertising in the free version (Google AdMob)
If you use the app without a paid plan, it shows small banner ads from Google AdMob. Google selects the ads and acts as an independent controller. The Google software in the app collects your device's advertising identifier (on iPhone only if you allow tracking), your IP address (which can indicate your approximate location), information about your device, how you use the app and the ads, and diagnostic data. We do not give Google your health profiles, pantry, lists, scans or account details. Ads are limited to content suitable for a general audience.
In the European Economic Area, the United Kingdom and Switzerland we use Google's consent form to ask for your consent before ads use your data, and you can change your choice at any time in the app's ad privacy settings. On iPhone the app asks whether it may track you; if you say no, ads are still shown but are not based on tracking. On Android you can reset or delete your advertising ID in your device settings. A paid plan removes all ads.
Legal basis: your consent (Art. 6(1)(a) GDPR and the national rules implementing Art. 5(3) of the ePrivacy Directive) where consent is required. [Lawyer: legal basis outside Europe.] More about how Google uses data: policies.google.com/technologies/partner-sites.
Website and cookies
This website only uses storage that is strictly necessary for the service you request. We do not use advertising or tracking cookies, so no consent banner is needed.
- Session cookies when you sign in on this website (currently only our staff, in the admin area). They are protected (httpOnly, secure), last at most 60 days and are deleted when you sign out.
- NEXT_LOCALE – remembers the language you chose until you close your browser.
- Theme preference – your choice of light or dark mode is kept in your browser's local storage and never sent to us.
- Accessibility menu – the accessibility button on our pages is provided by SiteAccessible. If you change a setting there (for example text size or contrast), it is remembered in your browser's local storage for your next visit. The menu sets no cookies and no identifier.
Legal basis: these items are strictly necessary (Art. 5(3) ePrivacy Directive and its national implementations) and serve our legitimate interest in providing the website (Art. 6(1)(f) GDPR).
4.Who receives your data
We share personal data only where it is necessary for the purposes described above:
- Hosting and infrastructure ([HOSTING PROVIDER, COUNTRY]) – runs our servers and databases (processor).
- AI provider ([AI PROVIDER]) – extracts text from label photos you send (processor).
- Email provider ([EMAIL PROVIDER]) – delivers service emails such as password resets (processor).
- RevenueCat – manages in-app subscriptions (processor).
- Apple and Google – app stores, sign-in, in-app purchases and, on Android, Google ML Kit recognition on your device (partly independent controllers, partly processors).
- Google (AdMob) – shows ads in the free version of the app (independent controller).
- Open Food Facts and its sister projects – the open product databases our product data comes from. Our server sends them barcodes only; your phone loads product photos from their servers. They do not receive your account data.
- SiteAccessible – provides the accessibility menu on this website. Your browser loads it from siteaccessible.com, which therefore receives your IP address. The menu reports an anonymous page-load count and, when you use it, which settings were changed, without anything that identifies you (processor).
- Authorities – only where we are legally obliged to disclose data.
We do not sell personal data for money. In the free version, the Google advertising software in the app receives device and usage data for advertising, as described under “Advertising in the free version”. Your health profiles, pantry, lists and scans are never shared for advertising.
5.International data transfers
[COMPANY NAME, ADDRESS] is located in Georgia, and our servers are located in [REGION]. [Lawyer: safeguard for access from Georgia.] Some service providers process data in the United States: Anthropic (AI label reading), Resend (email), RevenueCat (subscriptions), Apple (app store, sign-in) and Google (app store, sign-in, ads, ML Kit). We rely on the EU-U.S. Data Privacy Framework where the provider is certified, and otherwise on the EU Standard Contractual Clauses (Art. 46(2)(c) GDPR). You can request a copy of the safeguards from us.
6.How long we keep data
- Account data: until you delete your account. It is then deleted immediately from our database and from our system backups within [30] days. Records of AI label readings are kept without any link to you.
- Sign-in sessions: a session ends after 60 days without use or when you sign out. The session records are deleted [X days – TO CONFIRM] after they end and at the latest when you delete your account.
- Label photos: not stored by us; deleted by the AI provider within 30 days.
- Cloud backup: as long as your account exists, also after your paid plan ends, so that you can restore it if you subscribe again. It is deleted when you delete your account or ask us to delete it.
- Records of AI label readings (time, purpose, result type, model, cost): kept for [PERIOD – TO CONFIRM] for cost control; after you delete your account they are no longer linked to you.
- Password reset links: valid for one hour; the records are deleted after [X days – TO CONFIRM].
- Server logs: up to [14] days; security-relevant logs up to [90] days.
- System backups: overwritten within [30] days of deletion.
7.Your rights
Under the GDPR and similar laws you have the following rights:
- Access to the personal data we hold about you (Art. 15 GDPR);
- Rectification of inaccurate data (Art. 16 GDPR);
- Erasure (Art. 17 GDPR) – you can delete your account in the app or as described on our account deletion page, and delete the data stored on your device in the app's data settings;
- Restriction of processing (Art. 18 GDPR);
- Data portability (Art. 20 GDPR) – you can export the data stored on your device as a file in the app's data settings; we provide the data held on our servers on request;
- Objection to processing based on our legitimate interests (Art. 21 GDPR);
- Withdrawal of consent at any time, with effect for the future (Art. 7(3) GDPR);
- Complaint to a data protection supervisory authority, in particular in the country where you live or work ([COMPETENT SUPERVISORY AUTHORITY]).
To exercise your rights, email privacy@example.com. We reply within one month.
If you live in the United States: we do not sell your personal information for money. The free version shows ads from Google, which may count as “sharing” for cross-context behavioural advertising under some state laws. You can opt out by [MECHANISM – LAWYER] or by using a paid plan. You may request access to and deletion of your personal information as described above.
8.Children
The app is meant for adults. It is not directed at children under 13 (in the United States) or under 16 (in the European Union, or the lower age set by national law), and you must be at least that age to create an account. We do not knowingly collect personal data from children. Parents can create profiles for their children (for example an age group or birth date and allergies); these profiles stay on the parent's device unless the parent includes them in the cloud backup with consent. If you believe that a child has given us personal data, please contact us and we will delete it.
9.Security
We protect your data with appropriate technical and organizational measures, including encryption in transit (TLS), hashed passwords, sign-in tokens kept in your phone's secure storage, protected session cookies on the website, access to servers restricted to staff who need it and regular backups [CONFIRM: encryption at rest]. No system is completely secure, so please choose a strong password and keep your device locked.
10.Health information is not medical advice
Ratings, warnings and explanations in QR & Barcode Scanner are general information based on product labels and public sources. They are not medical advice and can be incomplete or out of date. Always read the label on the package and ask a doctor, dietitian or pharmacist about allergies, pregnancy, medication or any health condition.
We do not make decisions with legal or similarly significant effects based solely on automated processing (Art. 22 GDPR). The ratings in the app are information for you, nothing more.
11.Changes to this policy
We update this policy when our service or the law changes. The date at the top shows the latest version. We will inform you in the app or by email about material changes before they take effect.
12.Contact
[COMPANY NAME, ADDRESS] – Privacy questions: privacy@example.com – Support: support@example.com – EU representative: [NAME, ADDRESS] – UK representative: [NAME, ADDRESS]