Miga privacy policy

Last updated: 13 October 2026.

Miga is a family recipe book and shopping list app. This document explains what data the app handles, where it goes and what control you have over it.

Summary

What data the app stores and where

Recipes, books, photos, personal notes, categories, tags, kitchen equipment, ratings, shopping lists, templates, supermarkets and settings are stored in your device's internal storage.

The Google Gemini, Anthropic, OpenAI or OpenRouter API keys you enter are stored only on your device, encrypted with a key from Android's secure keystore that never leaves the phone, and are used only to call the provider you choose.

If Android backup is turned on, the system may include this data (recipes, photos and settings) in the backup managed by your Google account, as with any other app. Miga has no access to that backup. API keys stay encrypted and cannot be read on another device: after restoring on a new phone you will need to enter them again.

Permissions

Network connections and who data is shared with

All of them start from an action of yours or a feature you have turned on. None goes through a server of the Miga developer: there is no such server.

  1. AI features (optional, with your own key). What each feature needs is sent to the provider you set up (Google Gemini, Anthropic Claude, OpenAI or OpenRouter, which in turn forwards it to the provider of the model you choose):
  2. Recipes from photos: the photos you choose. Cropping the dish photo is then done on your device.
  3. Improving a photo: the photo you choose. The assistant only suggests colour, brightness and sharpness adjustments, which are applied on your device.
  4. Recipes from a web page: the text of the page.
  5. Find a recipe with AI: the name and description of the dish.
  6. Health rating, nutrition estimate and substitutes: the recipe's ingredients and steps.
  7. Improving recipes (one or several): the name, ingredients, steps and notes of each recipe.
  8. Tidying up content: the names of your recipe categories, equipment, tags, ingredients and product categories, how many recipes use each one, and the ones the app comes with.
  9. Cleaning up dictated text: the text you dictated.
  10. Ideas: a summary of your recipes (name, category, tags, time, main ingredients, equipment, whether it is a favourite and how many times you have cooked it), the options you choose, your question and the earlier questions of that conversation.

Providers are used in the priority order you choose: if one fails or cannot read images, the same request is sent to the next one. How that data is handled is subject to each provider's terms for your key (some free OpenRouter models may use requests for training). Without a key nothing is sent. The OpenRouter model list is downloaded from its public catalogue without sending any of your data; the Gemini, Claude and OpenAI lists are requested from each provider with your key, without sending any other data. You can turn off all AI features, or only the automatic health rating or nutrition estimate, in Settings → Artificial intelligence. AI-generated content is labelled in the app, may contain mistakes and can be reported. 2. Open Food Facts. When you scan a barcode or search for a product by name, that code or text is sent to Open Food Facts (an open database, no account) to get the product's name, photo and details. Product photos are downloaded from its servers. Open Food Facts data is licensed under the ODbL. 3. Recipe packs catalogue. When you open the catalogue or install a pack, a public listing and the pack file are downloaded from miga.calamares.org (or from the alternative catalogue you set up). None of your data is sent. 4. Your own sync server (optional). If you add a connection to a server you host yourself (miga-server), the books, recipes and photos you link and, if you turn it on, the shopping list (with the name you set as author) are sent only to that server. The app syncs when it opens, periodically in the background and every few seconds while you view a shared list. QR invitations contain the server address, the shared space and an access token: whoever scans the code can read and change that space. If the server uses http:// outside your local network, the app warns you that the connection is not encrypted. 5. Import from a URL. The app downloads the page you enter to extract the recipe and, if you use AI, sends its text to the chosen provider (see point 1). 6. Reports and contact. If you report AI-generated content or a problem, the app opens your email app with the message to miga@calamares.org already written; you decide whether to send it.

Crash reports

If the app closes unexpectedly, a text report (app version, device model, Android version and error trace) is saved only on your device. When you open the app again you can view it, share it yourself or discard it. Nothing is sent automatically and services such as Crashlytics or Sentry are not used.

Export and sharing

Exporting (JSON, ZIP, PDF), sharing recipes or lists and backups use the standard Android picker. You choose the destination; Miga does not send those files on its own.

If you protect a backup with a password, it is encrypted on your device with AES-256-GCM and a key derived from the password (PBKDF2). The password is neither stored nor sent anywhere; without it nobody, the developer included, can open the backup.

Retention and deletion

Data is kept while the app is installed. You can:

Children

Miga is not aimed at children under 13 and collects no data that reveals the age of the person using it.

Changes to this policy

Changes are published in this same document, together with the date of the update. The current version is always the one shipped with the app, in Settings → About → Privacy policy.

Contact

For privacy questions write to miga@calamares.org (also from Settings → Help and support → Report a problem).

Back to home