Privacy Policy
Last updated: October 2026
Sofrito is designed to respect your privacy. We don't require an account, we don't sell your data, and most of what you do in the app never leaves your device. This page explains what happens when data does need to leave your device, and why.
"Sofrito" is a brand operated by B.R.A.I.N. Solutions, LLC. Throughout this policy "Sofrito" and "we" refer to that company.
The short version
- ✓ No account, no password, no email required.
- ✓ No third-party analytics, no ad SDKs, no cross-app tracking.
- ✓ OCR, voice, and Pantry Chef can run entirely on-device.
- ✓ We never sell your data.
- ✓ Most of the app works without any network call.
What stays on your device
The following never leave your phone unless you explicitly choose to share them:
-
·
Your user profile data (dietary restrictions, language, voice preferences) — stored in iOS UserDefaults. When you use an AI helper, your diet needs go with the request so the answer respects them (see below).
-
·
Your cooking history and saved recipes — stored locally in your app sandbox.
-
·
Photos you take or pick from your library for recipe import — used only for on-device text extraction.
-
·
Recipes you import as "private/handwritten" — stored locally and can be exported by you as PDF.
-
·
Recipes generated by Pantry Chef from photos of your counter — stored locally only.
-
·
Photos you add of dishes you cooked — stored on your phone only and never uploaded.
-
·
Text recognition (OCR) — runs entirely on-device using Apple's Vision framework.
-
·
Voice narrator audio processing — runs entirely on-device using Apple's Speech and AVFoundation frameworks. Microphone input is never transmitted.
-
·
Your location for seasonal recommendations — it never reaches Sofrito’s servers. The app uses it on your phone to pick your hemisphere, and asks Apple for your country and today’s weather (see Third-party services).
What does leave your device
The following is sent to our backend (a Cloudflare Worker) only when you explicitly trigger the relevant feature:
-
·
AI chat prompts — when you use Chef Sofrito, Pantry Chef or ingredient substitutions, the recipe text, your question or the ingredients you have, and the diet needs from your profile are sent to DeepSeek through our backend. Responses are streamed back. We do not retain the conversation server-side.
-
·
AI image generation prompts — when a recipe has no picture yet, a short text description of it (e.g. "arroz con gandules beautifully plated") is sent to OpenAI through our backend. The resulting image is either stored in our Cloudflare R2 cache under the recipe’s random id (built-in, community and web-imported recipes) or returned directly to your device and discarded server-side (your Pantry Chef recipes).
-
·
Pantry Chef ingredient detection — once you allow the AI helpers (the higher-accuracy mode), the photo you take of your counter is sent to Google Gemini through our backend to detect the ingredients. The provider does not retain the image. To keep your photos on your phone, turn on “Detect ingredients on-device only” in Settings, or leave the AI helpers off; Pantry Chef then uses Apple Vision on your device.
-
·
Recipe import — when you import a recipe, the text you approve (read on your phone from a photo, or taken from a web page) is sent to DeepSeek through our backend so it can be organized into ingredients and steps. The photo itself is never sent.
-
·
Nutrition estimates — to work out the nutrition of a recipe you import or create with Pantry Chef, its ingredient names and amounts are sent to our backend, which looks them up in USDA FoodData Central, the U.S. government’s public nutrition database. We don’t keep them.
-
·
Medication checker — when you check a recipe against your medications, your medication names and the recipe’s ingredients are sent to our backend and compared with our table of documented food–drug interactions. Medications the table doesn’t cover are sent to DeepSeek, only while the AI helpers are allowed; otherwise the app tells you which weren’t checked. We don’t keep your medication list.
-
·
Grocery ordering — if you send your shopping list to Instacart, the item names and amounts go through our backend to Instacart to build your cart.
-
·
Community recipe submissions — if you explicitly turn on "Share with the Sofrito community" for a recipe you photographed, the rewritten recipe text (an AI partner has already paraphrased it) is sent to our backend and stored in a Cloudflare D1 database pending moderation, together with a record of the confirmations you ticked: which wording you saw, when, and your country (not your IP address). Before it’s published, AI reads it to check, translate and tag it (Anthropic and DeepSeek) and to make its photo (OpenAI). Your original photo is never sent. Recipes imported from websites are never submitted.
-
·
Reports — if you report a recipe or a Chef Sofrito answer, we receive the reason you picked, anything you write, and the recipe’s name and id. For a Pantry Chef dish, an imported recipe or an answer, which exist only on your phone, the report also carries its text so we can see what you saw. We use reports only to review and remove content; they carry no install id.
-
·
Store search — if you tap a store (such as Amazon) to look up items from your shopping list, the app opens that store’s website in your browser with the item name as the search term. That request goes straight from your device to the store, not through our backend.
-
·
Support form submissions — when you fill out the form at getsofrito.com/support or email us at support@getsofrito.com, your name, email, and message are stored in our Cloudflare D1 database (form submissions) or in our mailbox (direct email) so we can respond.
What we do not collect
-
·
No user account, no password, no email required to use the app.
-
·
No third-party analytics (no Google Analytics, no Firebase Analytics, no Mixpanel, no Amplitude).
-
·
No ad networks, no ad SDKs.
-
·
No cross-app tracking — we do not use IDFA or any advertising identifier.
-
·
No location coordinates — your location goes from your phone to Apple only (your country and today’s weather), never to our servers.
-
·
No contacts, no calendar, no Apple Health data, no photos library other than what you pick.
Anonymous identifiers
Sofrito has no accounts. To run a few features without knowing who you are, we use these opaque identifiers:
-
·
A random 16-byte install hash (≈32 hex characters) generated on first use and stored in your device's UserDefaults. The app sends it only: with AI requests and reports, to apply their free daily limits; once a day, to count how many installs opened the app; and with community recipe submissions and their consent records, so moderators can group submissions from the same install if spam or abuse appears. If a shared recipe is removed for abuse, that install can be blocked from sharing again, and its hash then stays on our block list. It is not tied to your Apple ID, IDFV, email, or any other identifier, it is never stored with the content of your AI requests or reports, and it resets if you reinstall the app.
-
·
A SHA-256 hash of your IP address, stored only for support-form rate limiting, and only when you use the public support form on this website.
Third-party services
Sofrito relies on the following third parties. All requests go through our Cloudflare Worker, so our vendors see only what's necessary for the relevant feature:
-
·
Cloudflare Workers, D1, R2 — hosting our backend, the shared recipe image cache, and the community recipes database.
-
·
AI providers — used only while you allow Sofrito’s AI helpers (the app asks the first time, and Settings turns them off): DeepSeek (China) for Chef Sofrito, Pantry Chef recipes, recipe imports, substitutions, ingredient weights, medicines our table doesn’t know, and translating shared recipes; Google Gemini (USA) for Pantry Chef photos; OpenAI (USA) for recipe pictures; Anthropic (USA) for checking shared recipes before they’re published. Requests come from our backend, never with your name, contact details, location or install id. If we change who receives what, the app asks you again.
-
·
Amazon — product search for shopping-list items, only when you tap it. Store links carry Sofrito’s Amazon Associates tag so Amazon can credit qualifying purchases; Amazon’s own privacy policy and cookies apply on its site.
-
·
Apple frameworks (on-device only) — Vision, Speech, AVFoundation. Nothing transmitted.
-
·
Apple location services and Apple Weather — when you allow location, your phone asks Apple which country you’re in and, for the Seasonal tab, today’s forecast, sending an approximate position (rounded to about 1 km for the forecast). Unlike the services above, these requests go straight from your phone to Apple, never through our servers, and Apple’s privacy policy applies. The forecast is kept on your phone for a few hours.
Children's privacy
Sofrito is not directed at children under 13. We do not knowingly collect personal information from children. The app contains no advertising, no chat rooms, and no user-to-user communication.
Your rights
Because we don't keep accounts, there's no profile to delete. If you submitted a support message or a community recipe and want it removed, email us at support@getsofrito.com or use the support form — include the approximate date and a few words from the message so we can find it. We will delete or anonymize it within a reasonable time, typically within 14 days.
Residents of the EU/UK have additional rights under GDPR (access, correction, deletion, portability, objection). Residents of California have additional rights under the CCPA / CPRA (know, delete, correct, opt-out of sale — though we do not sell data). Send any such request to support@getsofrito.com and we will respond within the statutory deadline.
Data retention
-
·
AI chat and image prompts are not retained on our backend beyond the duration of the request.
-
·
Community recipe submissions are retained indefinitely once approved (they're part of the public catalog) or for up to 90 days if rejected.
-
·
The consent record for a shared recipe is kept for as long as we keep the recipe, so we can show what was agreed to.
-
·
Daily AI-limit counters (install hash, date, count) are deleted within 10 days.
-
·
Reports are deleted within a year after we decide on them. The block list of installs that may no longer share recipes is kept.
-
·
Daily app-open records (install hash, date) are deleted after 13 months.
-
·
Support messages are retained as long as needed to resolve your request, then archived.
-
·
Support-form IP hashes are automatically removed within 30 days.
Changes to this policy
If we change this policy, we'll update the "Last updated" date above. Material changes will be reflected in the app's changelog.
Contact
Questions, concerns, or requests? Email support@getsofrito.com or use the support form. The website is getsofrito.com.
Questions about your data?
Open a support ticket — usually replied to within a few business days.