Privacy Policy

MeowCouncil · Version 2026-10-26-v2

Who operates MeowCouncil

MeowCouncil is operated by Siddharth Pandey, an independent developer based in India. This policy covers the MeowCouncil app and its account-deletion website. Privacy, support and deletion requests: sidpandey12@gmail.com. Effective date: 26 October 2026.

Account and onboarding information

When you create an account, we handle your email address, display name and Firebase account ID. Firebase Authentication processes sign-in credentials and login metadata. If you choose Google sign-in, Google supplies basic identity information such as your email, name, profile photo URL and provider identifier; this sign-in does not grant us access to your Gmail messages, contacts or Google Drive files. Onboarding answers can include your preferred mood and tone, reasons for using the app and wellbeing preferences. We also keep the version, time and confirmations you submit when acknowledging the Terms, Privacy Policy and AI & Wellness Notice. These records are not proof of identity, verified age, separate consent to sensitive-data processing or parental consent.

Content and potentially sensitive information

We process the situation and mood you submit, requested joke topics and cat choices, and the generated conversations, jokes and translations needed to display the result. If you choose Save, we store the selected chat or joke, reflection questions and answers, or dilemma questions and choices. Dilemmas come from an authored question bank, not an AI request for each round. What you type may reveal health, emotional, relationship or other sensitive information even though the app is not medical care. Please do not enter passwords, payment-card details, identity documents, school or home addresses, or unnecessary personal information about yourself or others.

Current mood labels and history analysis

Saving a council chat currently also derives simple keyword-based trigger labels from its situation, such as work, sleep, relationships or overthinking, and stores them with the chat. These labels are not a diagnosis. Legacy mood-analysis endpoints can read saved situation excerpts, moods, labels and earlier cat rulings to return patterns and, for AI analysis, send selected evidence to OpenAI. The current app does not automatically request those legacy analyses. Saving for an archive and reusing saved history for analysis are distinct uses. The Consumer Health Data Privacy Notice describes potentially sensitive information and request options in more detail.

Progress, purchases and technical information

We retain usage counters, XP, quest progress, earned badges and subscription entitlement records to provide those features and enforce allowances. Usage and progress can be recorded even if you do not save generated content. RevenueCat and Google Play process product, purchase, renewal, expiration and entitlement information; the SDK can also process technical app and device information. We do not receive raw payment-card details through Google Play Billing. Network and infrastructure providers can receive IP addresses, request times and technical identifiers when you use the app or load its media.

Local reminders and notification permissions

MeowMinders stores reminder text, selected cat, scheduled time, time-zone information, completion state and notification preferences in device or browser storage under the account. Reminder text and scheduled times are not uploaded to our reminder backend or a remote push service. Android passes notification content and scheduling details to the operating system and requests notification permission and, where needed, Alarms & reminders access. The private-reminder option hides task text from the notification content; otherwise that text can appear in a notification, subject to device and lock-screen settings. Device or browser backups may also include local app data. We do not apply a separate app-level encryption key to this reminder storage. Time-zone handling does not require GPS location access.

Reminder rewards and calming media

When you claim a reminder completion reward, our backend receives your reminder identifier, selected cat and time zone. It records reward and daily-eligibility markers and XP using server time; it does not receive your reminder text or scheduled time through that reward request. Vybe rewards also record the selected cat and progress. Playing our supplied music and cat videos does not record your microphone, collect your personal music library or upload audio from your device. Media hosting can still process network and device request information.

Sharing and exported copies

Sharing is optional and opens your device or browser sharing tools, a download or a text-copy option. Share cards use selected cat output and MeowCouncil branding and a store link; we do not deliberately add your account email or original journal entry. Generated output may nevertheless repeat personal details from your request. Review the preview before sharing. The app can create a temporary image for export. Recipients and the apps or services you select handle the shared copy under their own practices. This is not automatic publication to a public MeowCouncil feed. Deleting an account or saved item cannot recall screenshots, downloads, clipboard copies or material already sent to someone else.

How requests move through the service

The app signs you in with Firebase Authentication. For account-specific features it sends an authenticated request over HTTPS to our Google-hosted backend, which checks your account and handles the request. AI requests are sent from that backend to OpenAI, rather than using a secret OpenAI key in the app. Explicitly saved items and account/progress records are stored in Firestore under your account. Firebase Storage supplies developer-provided cat images and videos; the current app does not offer user photo, video or audio uploads.

Processing is not the same as saving

Generating a chat or joke transmits information off your device for processing even if you never choose Save. The current generation endpoints do not archive newly generated chats, jokes, reflection questions or forecasts in our database. Unsaved results and draft reflection answers remain in app memory for the session and may disappear when you leave, reload or close the app. Authentication, subscription and technical SDK state, onboarding or sample-joke state and local reminders may be stored separately on your device; Save-only does not mean that all app data is ephemeral.

Earlier joke batch experiment

An earlier Jokiess version briefly cached unread batches of generated jokes and translations per account and cat, without requiring Save. This batching experiment has been discontinued: current requests generate a single joke and do not create or reuse batch caches. Any remaining experiment caches are covered by Clear saved data and account deletion. Explicitly saved jokes remain separately in your archives until you delete them. Developer-authored pre-signup samples do not call AI.

What the Save buttons store

Saving a council chat stores its submitted situation, mood and returned dialogue and related result fields. Saving a joke stores that joke and its related display information. Saving Pawlogs stores the reflection questions, your answers and a short generated summary, which may itself reveal something about your situation. It does not automatically save the original chat; an optional link can refer to a chat you separately saved. The temporary signed reflection proof expires after 24 hours and is not kept with the saved note. Saving a dilemma round stores its five questions, selected choices, reactions and result.

What we send to OpenAI and why

To fulfill an AI generation request, our backend sends the submitted situation and selected mood/tone or joke/wisdom context, together with our instructions, to OpenAI. OpenAI returns generated text, translations and, where applicable, reflection questions and a short summary. User answers to reflection questions are saved by a separate Save action; that save endpoint does not send the answers back to OpenAI. Legacy AI mood analysis can instead send selected evidence from saved history as described above. We do not deliberately add your account email, display name, Firebase account ID, billing records or local reminder list to generation prompts. However, text you enter or saved excerpts can contain identifying or sensitive details; removing account fields does not make that text anonymous.

OpenAI processing and retention

We use OpenAI's API with store: false, not a public ChatGPT conversation. This is not Zero Data Retention and does not eliminate temporary caching or safety logs. OpenAI describes standard abuse-monitoring retention of up to 30 days, potentially longer where required by law or reasonably necessary to protect its services or others from harm. OpenAI states API inputs and outputs are not used for model training by default unless the API customer opts in. We do not claim approved Zero Data Retention. Deleting our records does not automatically delete provider copies. Provider handling is described at https://developers.openai.com/api/docs/guides/your-data.

Providers and other disclosures

Google Firebase and Google Cloud provide authentication, the Firestore database, backend hosting, media storage, web hosting and infrastructure logging. Google also provides optional Google sign-in. OpenAI generates responses. RevenueCat manages subscriptions using your Firebase account ID as its customer identifier, and Google Play processes purchases. Resend receives the recipient email address and transactional email content, including signup verification and password-reset codes, to deliver those messages. If you email support, we receive the message and details you choose to include; support is not an anonymous channel. We may disclose necessary information to comply with applicable law or protect users and the service. Using providers does not remove our responsibilities for how we select them or handle your information.

Advertising, analytics and device storage

The current app does not display advertising, invoke advertising-ID collection or ad-attribution integrations, or initialize a session-replay or third-party usage-analytics service. We do not sell personal information or use chat content for targeted advertising. Operational counters, billing records and provider technical logs are still processed as described above. Firebase sign-in and RevenueCat can use necessary browser or device storage to maintain account and subscription state; these are separate from storing unsaved chat content.

Google Play app verification

Android builds that include Play Integrity can ask Google Play to assess whether the app is recognized, installed through Play and running on a certified device. Google processes the app/device and installation signals needed for that assessment and returns an encrypted verification token. We bind it to a specific AI request using a SHA-256 digest with a fresh random value; we do not send the raw chat, account ID or email to the Play Integrity API as the request hash. Our backend verifies the token with Google and records only fixed outcome labels in application diagnostics, not the token, digest, random value or chat. Depending on the build and server configuration, checks may be observed or enforced to protect access. They are separate from subscription verification and do not archive generated content. Google platform logging and retention described in this policy still apply.

Where information is processed

Our reviewed Firestore location is the United States multi-region nam5; the main backend is in us-central1 and media storage is in US-EAST1. Providers may process data in other countries too. Your information can therefore be processed outside India or your home country. We do not promise India-only storage or that every provider uses the same region.

Retention while your account is active

Account, onboarding, acknowledgement, billing, usage and progress records remain as needed to provide and protect the account. Saved content remains until you clear it or request account deletion; the current app has no automatic inactive-account expiry. Earlier releases could retain generated content or reflection context automatically; the current Save-only behaviour does not retroactively erase those records. Delete saved data and account deletion cover the relevant earlier content as well.

Clearing saved data and deleting your account

Delete saved data clears saved chats, jokes, Pawlogs, dilemma rounds and relevant legacy content, removes badge documents and resets XP and starter-quest progress. The in-app action also clears that account's reminders on the current device after server cleanup succeeds. It keeps your account, onboarding answers including the starting mood and wellbeing preferences, legal acknowledgement, subscription, already-used allowance and reward-eligibility markers; resetting XP does not make previously claimed rewards claimable again. Therefore this control is not a complete deletion of all potentially sensitive account information. Contact support for a broader personal-data request, or use permanent account deletion. Delete account blocks access and queues deletion of Firebase Authentication and associated account data, recovery challenges and a RevenueCat customer-deletion request. Verification records also have automatic expiry as described below. You can request account deletion in the app, at https://meowcouncil-fb8d4.web.app/delete-account, or by contacting sidpandey12@gmail.com. We verify ownership before acting. Account deletion or uninstalling does not cancel a subscription; cancel separately in Google Play.

Local data when you sign out or delete

Signing out cancels the account's scheduled reminders on that device but retains its locally stored reminder list. In-app account deletion also attempts to clear that account's reminders on the current device. A server or website deletion request cannot remotely erase offline app storage on every other device, browser profile or personal backup. You may need to remove local app or site data on those devices yourself. Please contact support if local cleanup fails. Exported and recipient-held copies are outside that cleanup.

Deletion timing, backups and exceptions

Account cleanup is processed by a retrying scheduled job after a short delay to allow existing requests to finish. We aim to remove our account data and developer-managed backup copies within 30 days, usually sooner, subject to applicable legal requirements. We do not intentionally retain deleted content for marketing. Backup removal and some provider follow-up require operator action; they are not all completed automatically by the account-deletion job. Our export tools do not themselves encrypt manual backup files, so their protection depends on the storage and access controls applied to them. Payment stores and providers can have separate retention obligations. Contact support to request follow-up concerning provider-held information; we cannot promise immediate erasure of provider safety logs or copies we cannot identify. Completion of a RevenueCat deletion request is not proof of final vendor erasure. A minimal account-ID cleanup record remains for 30 days after successful cleanup; failed deletion jobs remain until resolved.

Verification, recovery and logging

Signup email-verification and password-reset codes expire after 10 minutes; verified reset tickets expire after five minutes. Our server stores keyed proofs rather than plaintext codes, recovery passwords or raw email/IP addresses in the challenge and rate-limit records. Signup verification also temporarily stores an encrypted Firebase verification action. Challenge and rate-limit records become eligible for asynchronous deletion after 24 hours; expiry does not promise removal at that exact instant. The new password is processed by the backend and Firebase Authentication, not stored in Firestore. Application diagnostics are designed to exclude raw chats, mood text, reflection answers, passwords and verification codes. Platform request/audit logs can still contain IPs, account/resource identifiers and other technical data. In the logging configuration reviewed for this notice, default application logs retain records for 30 days and required audit logs retain records for 400 days. Provider-specific retention can differ.

Security and access

App-to-service connections use HTTPS, and Google-managed Firestore and Storage use encryption at rest. Direct client Firestore access is denied by the current rules; account-specific backend endpoints authenticate the caller and scope data to that account. Privileged billing and deletion operations run server-side and backend secrets are kept out of the app. These protections are not end-to-end encryption: the backend and relevant providers need to process readable information to deliver the requested features. No system can guarantee perfect security; we investigate security issues and provide notices when applicable law requires them.

Your choices and requests

You can avoid submitting optional text, choose whether to save a result, disable notification permissions, delete reminders, clear saved data, and request account deletion. Generating content requires the processing described above; choosing not to save does not prevent that processing. Email sidpandey12@gmail.com to request access, a copy, correction, deletion or to raise a privacy concern. Depending on applicable law, you may also have rights to portability, restriction, objection, withdrawal of consent where consent is relied on, and a complaint to your local data-protection authority. We may need to verify account ownership and explain any necessary retention or lawful limits on a request. Do not email passwords or verification codes. We do not use AI to make legal or similarly significant decisions about you; generated suggestions and reward points are not such decisions. Your applicable legal rights are not limited by this policy.

Children and age eligibility

MeowCouncil is intended only for people aged 18 or older. The app asks for an adult self-declaration; it does not currently offer an age-verification or parental-consent workflow. Do not use the service or submit information if you are under 18. If you are a parent or guardian and believe a child has provided information, contact sidpandey12@gmail.com so we can investigate, restrict access where appropriate and arrange deletion.

Changes

Material changes will be communicated through an in-app notice or account email as appropriate. The effective date identifies this version.