OvaLens

Your data

Privacy Policy

What OvaLens stores, how optional AI and billing work, and how you stay in control.

Version 1.3 · Effective October 21, 2026

1. Who is responsible

OvaLens is provided by Yuliia Otmakhova (“we”, “us”). For privacy questions or requests, contact . This policy covers the OvaLens iOS app and this support website.

Your journal is stored on your device. Manual entry does not require an account, an email address or AI permission. Selected data leaves the app for AI processing only when you request that feature and give its permission.

2. Data you choose to keep in the app

Your local journal can contain test dates, times, photos, visually edited copies, selected result labels, T/C ratios, test details and notes; recorded period starts and bleeding days; cycle settings and calendar observations; temperature, cervical mucus, discomfort, mood, optional intimacy or insemination entries and free-text notes; saved PDF reports and AI responses; and language, units, reminders and consent preferences. These categories can reveal sensitive health or reproductive information.

The app uses these records to display your journal, history, charts, calendar estimates and reports. Camera use is optional and requested when you choose to photograph a test. You can select a photo with the system picker. Reminder permission is optional; reminders are scheduled on your device.

OvaLens does not provide its own cloud journal backup, cross-device sync or HealthKit connection. Device backups, files you export and copies saved to Photos are controlled separately by you and the operating system.

3. Optional AI: what is sent

Your actionData processed
Analyze a test photoThe selected test photo and response language are sent through our Firebase function to Google Gemini. The app re-encodes the upload to remove embedded photo metadata. Your journal, cycle settings and daily notes are not included in this request. Avoid selecting photographs containing names or unrelated personal details.
Analyze a reportThe selected PDF, its associated structured records and period, time zone, report type and response language are sent. If you choose a comparison report, it is sent too. Depending on the report selected, this can include test results, photos shown in the PDF, temperatures, discharge, discomfort, mood, notes, intimacy entries and period records. Review the PDF before allowing analysis.

Photo analysis requires explicit photo-sharing permission. Each report request requires separate permission for the selected report or reports; photo permission does not authorize report sharing. AI is optional. Withdrawing permission stops future requests; it cannot recall a request already received by a provider. See your controls and deletion instructions.

4. Pseudonymous identity and technical records

When you use Pro subscription options, check AI access or request optional AI, Firebase Authentication can create an anonymous account ID to authorize the feature. It does not require your name, email, phone number or a password. Manual journal use does not require this account. The ID is pseudonymous, not a guarantee of anonymity.

Our private Firestore records link this Firebase ID to a random, opaque billing ID issued by our server. This link lets us verify subscription access without sending the Firebase ID or journal content to RevenueCat. We also keep technical request counters, report fingerprints (hashes), processing reservations and completion records to apply limits and prevent duplicate processing. Purchase-linked usage records use a transaction-derived hash and record the relevant allowance period and request status; they do not contain the journal, photo, PDF or generated text. These records are pseudonymous and may be associated again with a restored purchase.

The OvaLens backend does not keep a content archive of uploaded photos, PDFs, journal entries or generated report text. Application error logs record limited error categories or status codes rather than request content. Providers may separately process network, authentication and service diagnostics, such as IP addresses. Firebase Authentication may also collect technical diagnostic data for service analytics, under its privacy disclosures.

Purchases and billing identity

The RevenueCat SDK uses billing identifiers to validate and restore purchase access. For Pro access, it uses the opaque ID issued by our server; the Firebase-to-billing link stays in our private backend. OvaLens does not send RevenueCat your Firebase ID, name, email address, health records, test photos, notes or report content. A random billing ID does not make the associated purchase records anonymous.

RevenueCat processes available App Store transaction records, purchase history and access status, together with service information such as app and operating-system versions and locale. This supports purchase validation, restoration of eligible access and purchase analytics. Apple handles payments; OvaLens and RevenueCat do not receive your payment card details. We do not enable advertising identifiers or advertising integrations in RevenueCat.

5. Providers and processing locations

We use Google Firebase Authentication, Cloud Functions and Cloud Firestore to authorize and operate optional AI requests, and Google Gemini to analyze the data you select. Our functions run in the United States (us-central1). Provider processing may occur in other countries under their terms.

Google’s Gemini API terms distinguish paid and unpaid services. For Paid Services, Google does not use prompts or responses to improve its products, but may retain them for safety and legal purposes. Unpaid services have different data-use rules and are unsuitable for sensitive personal records. OvaLens does not promise zero provider retention.

Read Firebase privacy information, Gemini retention information and the Google Privacy Policy. We use these providers for the requested app functions; we do not sell journal data or use it for advertising, cross-app tracking or marketing profiles. The app does not include advertising. Firebase Authentication service diagnostics and RevenueCat purchase analytics are described above.

RevenueCat processes billing records on our behalf; processing may take place in the United States. See RevenueCat’s privacy and processing information. Apple processes App Store purchases under its own privacy information.

6. Retention and deletion

  • On your device: journal records, saved reports and local AI responses remain until you delete them or use Delete all my data in Settings.
  • Account and private billing link: the in-app account-deletion action removes the Firebase account, its private billing-ID link, user-associated request counters and report receipts. If cloud deletion fails, the app keeps your local journal so you can retry.
  • OvaLens purchase-linked usage records: pseudonymous transaction-derived hashes, allowance-period records and request fingerprints/status records are retained to enforce limits, prevent repeated requests and preserve the allowance when a purchase is restored. Deletion is scheduled for 90 days after the relevant verified subscription period ends. Firestore TTL deletion runs asynchronously: the scheduled date is not a guarantee of deletion at that exact time or a maximum actual retention period. These records do not form an archive of health content. Deleting the account does not immediately erase this ledger or reset a trial or active purchase allowance.
  • Submitted AI content: the OvaLens backend processes it for the request without saving a content archive. Google's independent security, legal and backup retention follows its policies. Deleting OvaLens data does not guarantee immediate erasure from every provider system.
  • Apple and RevenueCat billing records: the OvaLens ledger schedule above does not set the retention period for their transaction records. Such records may be kept under provider policies and applicable obligations to validate or restore purchases, prevent fraud or meet legal requirements. Contact us with a billing-data request so we can locate the relevant record and handle it with the provider. Deleting app data or uninstalling OvaLens does not cancel an Apple subscription; manage it separately in Apple Subscriptions.
  • Support correspondence: if you email us, we receive the address, message and attachments you send. We use them to handle your request and retain them only as needed for support, follow-up or applicable obligations. You can ask us to delete this correspondence.
  • Exported copies and backups: files shared with others, saved to Files or Photos, and device backups are outside the in-app deletion flow. Manage those copies separately.

Full deletion instructions explain the in-app action and what to do if you cannot access the app. Firestore's TTL documentation explains asynchronous expiry processing.

7. Your choices and privacy rights

You can view and edit journal records, delete individual entries or reports, create PDF exports, decline optional AI and notifications, withdraw photo-sharing permission in Settings, or delete your journal, Firebase account and private billing link. The retained purchase-linked usage ledger, provider billing records and Apple subscriptions are handled separately as described above. We cannot remotely read or recover a journal that exists only on your device.

Where applicable, the basis for optional AI processing of sensitive records is your explicit consent. Technical processing supports the feature you request and service security; legal obligations may also apply. Depending on your location, you may have rights to access, correct, erase, restrict or object to processing, portability and withdrawal of consent, and to complain to a local data protection authority. Email us to exercise an applicable right. We may need limited information to verify a request, but do not send your full journal or credentials.

8. Security

Cloud requests use HTTPS. Access to backend records is restricted to server operations; the app does not expose its Gemini API key. Local data relies on iOS device security. No storage or transmission method is risk-free. Keep your device locked and consider who can access your backups, notifications and exported reports.

9. Adults, website and changes

OvaLens is intended for adult personal tracking. Its Gemini features are for people aged 18 or older. If you believe a child has submitted personal data to us, contact us.

This website is hosted on GitHub Pages. We do not add analytics, advertising, cookies, external fonts or embedded services to these pages. GitHub may process technical access data when serving the site under its Privacy Statement. Opening email or external links uses the service you choose.

We may update this policy as the app or its providers change. The version and effective date above identify this revision. Contact: Yuliia Otmakhova, .

Политика конфиденциальности

Версия 1.3 · Действует с 21 октября 2026 года

1. Ответственное лицо

OvaLens предоставляет Yuliia Otmakhova. Вопросы о конфиденциальности и запросы о данных: . Политика относится к приложению OvaLens для iOS и этому сайту.

Дневник хранится на вашем устройстве. Ручной ввод не требует регистрации, электронной почты или согласия на ИИ. Передача выбранных данных для ИИ происходит только при вашем запросе этой функции и соответствующем разрешении.

2. Локальные данные

В дневнике могут храниться даты и время тестов, фотографии и их визуально обработанные копии, выбранные результаты, отношения T/C, сведения о тестах и заметки; начала менструаций и дни кровотечения; настройки цикла и календарные наблюдения; температура, цервикальная слизь, дискомфорт, настроение, необязательные отметки близости или инсеминации и свободные заметки; сохранённые PDF и ответы ИИ; язык, единицы измерения, напоминания и настройки согласия. Эти сведения могут раскрывать чувствительную информацию о здоровье и репродуктивной жизни.

Данные нужны для дневника, истории, графиков, приблизительных прогнозов и отчётов. Камера и выбор фотографии необязательны. Разрешение на уведомления нужно только для локальных напоминаний. У OvaLens нет собственного облачного резервного копирования дневника, синхронизации между устройствами или подключения HealthKit. Резервные копии устройства, экспортированные файлы и копии в «Фото» управляются отдельно вами и операционной системой.

3. Необязательный анализ ИИ

Фотография: через нашу функцию Firebase в Google Gemini передаются выбранный снимок теста и язык ответа. Перед отправкой приложение перекодирует снимок, удаляя встроенные метаданные. Дневник, настройки цикла и ежедневные заметки в этот запрос не входят. Не выбирайте снимки с именами и посторонними личными сведениями.

Отчёт: передаются выбранный PDF, связанные структурированные записи, период, часовой пояс, вид отчёта и язык ответа. Если выбран отчёт для сравнения, он тоже передаётся. Содержимое может включать результаты тестов, фотографии внутри PDF, температуру, выделения, дискомфорт, настроение, заметки, отметки близости и менструаций. Просмотрите PDF перед разрешением анализа.

Для фотографий требуется явное разрешение. Для каждого запроса анализа отчётов нужно отдельное разрешение на выбранные документы; разрешение на фотографии его не заменяет. Отзыв согласия останавливает будущие запросы, но не возвращает уже полученные провайдером данные. Ручной дневник доступен без ИИ.

4. Псевдонимный идентификатор и технические записи

При использовании вариантов подписки Pro, проверке доступа к ИИ или запросе необязательного ИИ Firebase Authentication может создать анонимный аккаунт для авторизации функции. Имя, почта, телефон и пароль не требуются. Для ручного дневника такой аккаунт не нужен. Его идентификатор является псевдонимным и не гарантирует полную анонимность.

В приватных записях Firestore идентификатор Firebase связан со случайным непрозрачным платёжным идентификатором, выданным нашим сервером. Эта связь позволяет проверять подписку, не передавая RevenueCat идентификатор Firebase или содержимое дневника. Мы также храним технические счётчики запросов, отпечатки отчётов (хеши), временные записи обработки и отметки завершения для применения лимитов и предотвращения повторной обработки. Связанные с покупкой записи использования содержат хеш, полученный из сведений о транзакции, соответствующий период лимита и статус запроса, без дневника, фотографии, PDF или сгенерированного текста. Эти записи псевдонимны и могут быть снова связаны с восстановленной покупкой.

Сервер OvaLens не создаёт архив фотографий, PDF, содержимого дневника или текста ИИ. В прикладные журналы ошибок записываются ограниченные категории ошибок или коды состояния, без содержимого запросов. Провайдеры отдельно могут обрабатывать IP-адреса, сведения об авторизации и другую служебную диагностику. Firebase Authentication также может собирать технические диагностические данные для анализа работы сервиса в соответствии со своими сведениями о конфиденциальности.

Покупки и платёжный идентификатор

SDK RevenueCat использует платёжные идентификаторы для проверки и восстановления доступа по покупке. Для доступа Pro он использует непрозрачный идентификатор, выданный нашим сервером; связь с идентификатором Firebase остаётся в нашем приватном серверном хранилище. OvaLens не передаёт RevenueCat ваш идентификатор Firebase, имя, электронную почту, записи о здоровье, фотографии тестов, заметки или содержимое отчётов. Случайный платёжный идентификатор не делает связанные записи о покупках анонимными.

RevenueCat обрабатывает доступные сведения о транзакциях App Store, историю покупок и статус доступа, а также служебные данные, например версии приложения и операционной системы и региональные настройки. Это нужно для проверки покупок, восстановления соответствующего доступа и анализа покупок. Платежи проводит Apple; OvaLens и RevenueCat не получают данные вашей платёжной карты. Мы не подключаем к RevenueCat рекламные идентификаторы и рекламные интеграции.

5. Получатели и страны обработки

Для авторизации и работы ИИ используются Google Firebase Authentication, Cloud Functions и Cloud Firestore, для анализа — Google Gemini. Наши функции работают в США (us-central1); провайдеры могут обрабатывать данные и в других странах по своим условиям.

Условия Gemini API различают платные и бесплатные сервисы. В платных сервисах Google не использует запросы и ответы для улучшения своих продуктов, но может сохранять их для безопасности и юридических целей. У бесплатных сервисов другие правила; они не подходят для чувствительных личных записей. OvaLens не обещает отсутствие хранения у провайдера.

Подробнее: конфиденциальность Firebase, хранение данных Gemini, политика Google. Мы используем провайдеров для выбранных вами функций, не продаём дневник и не используем его для рекламы, отслеживания между приложениями или маркетинговых профилей. В приложении нет рекламы. Служебная диагностика Firebase Authentication и анализ покупок RevenueCat описаны выше.

RevenueCat обрабатывает сведения о покупках от нашего имени; обработка может происходить в США. Подробнее: конфиденциальность и обработка данных RevenueCat. Apple обрабатывает покупки App Store по своим правилам конфиденциальности.

6. Сроки хранения и удаление

  • На устройстве: записи дневника, сохранённые отчёты и локальные ответы ИИ хранятся до их удаления или действия «Удалить все мои данные» в настройках.
  • Аккаунт и приватная платёжная связь: действие удаления аккаунта в приложении удаляет аккаунт Firebase, его приватную связь с платёжным идентификатором, связанные с пользователем счётчики запросов и записи отчётов. При сбое облачного удаления локальный дневник сохраняется, чтобы вы могли повторить попытку.
  • Связанные с покупкой записи использования OvaLens: псевдонимные хеши, полученные из сведений о транзакции, записи периодов лимита, отпечатки и статусы запросов сохраняются для применения лимитов, предотвращения повторных запросов и сохранения остатка лимита при восстановлении покупки. Удаление запланировано через 90 дней после подтверждённого завершения соответствующего периода подписки. Удаление Firestore TTL выполняется асинхронно: запланированная дата не гарантирует удаление точно в этот момент и не является максимальным фактическим сроком хранения. Эти записи не являются архивом содержимого о здоровье. Удаление аккаунта не стирает их немедленно и не сбрасывает лимит пробного периода или действующей покупки.
  • Переданное содержимое ИИ: сервер OvaLens обрабатывает его для запроса без создания архива. Самостоятельные сроки безопасности, юридического хранения и резервных копий Google определяются его правилами. Удаление в OvaLens не означает немедленное удаление из всех систем провайдера.
  • Платёжные записи Apple и RevenueCat: описанный выше срок для технических записей OvaLens не устанавливает сроки хранения транзакций у этих провайдеров. Такие записи могут сохраняться по их правилам и применимым обязанностям для проверки и восстановления покупок, предотвращения мошенничества или выполнения юридических требований. Обратитесь к нам с запросом о платёжных данных, чтобы мы могли найти нужную запись и обработать запрос вместе с провайдером. Удаление данных или приложения не отменяет подписку Apple; управляйте ею отдельно в разделе подписок Apple.
  • Переписка с поддержкой: мы получаем вашу почту, текст и вложения. Храним их для обработки обращения, дальнейшего ответа или применимых обязательств. Вы можете запросить удаление переписки.
  • Экспортированные копии и резервные копии: отправленные файлы, копии в «Файлах», «Фото» и резервных копиях устройства удаляются отдельно.

См. полную инструкцию по удалению. Документация Firestore TTL описывает асинхронную обработку истечения срока.

7. Ваш выбор и права

Вы можете просматривать и исправлять записи, удалять отдельные записи и отчёты, экспортировать PDF, отказаться от ИИ и уведомлений, отозвать разрешение на фотографии в настройках или удалить дневник, аккаунт Firebase и приватную платёжную связь. Сохранённые технические записи использования по покупке, платёжные записи провайдеров и подписки Apple управляются отдельно, как описано выше. Мы не можем удалённо прочитать или восстановить дневник, существующий только на устройстве.

Когда применимо, основание обработки чувствительных записей для необязательного ИИ — ваше явное согласие. Техническая обработка нужна для запрошенной функции и безопасности; также могут действовать юридические обязательства. В зависимости от страны у вас могут быть права на доступ, исправление, удаление, ограничение обработки, возражение, переносимость, отзыв согласия и жалобу местному органу защиты данных. Для запроса напишите нам. Может потребоваться ограниченная информация для проверки запроса; не отправляйте полный дневник или данные входа.

8. Безопасность, возраст и сайт

Облачные запросы используют HTTPS; доступ к серверным записям ограничен, ключ Gemini не находится в приложении. Локальные данные полагаются на защиту iOS. Ни один способ хранения или передачи не лишён риска. Защищайте устройство, уведомления, резервные копии и экспортированные отчёты.

OvaLens предназначен для личного дневника взрослых; функции Gemini — для пользователей от 18 лет. Сообщите нам, если считаете, что ребёнок передал личные данные. Этот сайт размещён на GitHub Pages: мы не добавляем аналитику, рекламу, cookies, внешние шрифты или встроенные сервисы. GitHub может обрабатывать технические сведения о посещении по своей политике конфиденциальности. Почта и внешние ссылки открывают выбранные вами сервисы.

При изменении приложения или провайдеров политика может обновляться. Версия и дата указаны выше. Контакт: Yuliia Otmakhova, .