Privacy Policy
Last updated: 9 September 2026
In short
Closet AI has no user accounts. Your wardrobe, profile and saved results live in the app's private storage on this phone. A Cloudflare-hosted API forwards your styling requests to OpenAI after Google Play verifies the app. OpenWeather returns the forecast used to pick weather-appropriate outfits, and Google AdMob serves the ads that keep the app free. Optional Google Analytics helps us measure app usage and costs only when you enable Usage analytics in Settings.
What is stored on your device
• Wardrobe photos you take or pick, saved as files inside the app sandbox.
• Garment details: category, colour, brand, material, season, tags and your notes.
• Profile: display name, gender, age range and style preferences from onboarding.
• Everything the AI produces for you: saved outfits, style reports, Pinterest matches, shopping reports and travel plans.
• App settings: your default weather city (optional), your light/dark theme choice and your credit balance.
• AI content reports awaiting submission: the result text, selected reason and any notes you enter. Up to 20 pending reports are kept for up to 30 days, excluded from backups.
• Numeric diagnostics: usage events, credit activity, ad earnings and AI token counts, with timestamps and a random measurement ID. These are kept for up to 30 days or 10,000 events, whichever limit is reached first, and are excluded from device backups.
The relevant wardrobe details and selected photo pass through our API when you use an AI feature, as described below. The API does not store your wardrobe or photos as a library. When you choose to report an AI result, its reported text is stored separately for review. There is no sign-in or account. Android may back up app metadata and preferences, and transfer photos directly between devices; wardrobe photos are excluded from Android cloud backup.
What leaves your device, and to whom
OpenAI — when you analyse a garment, generate an outfit, run the Pinterest matcher, the shopping assistant or the travel assistant, the relevant photo and a text prompt describing your wardrobe and preferences are sent over HTTPS through our Cloudflare-hosted API to OpenAI (model gpt-4o-mini). The photo is transmitted so the model can see the garment; without it the feature cannot work.
Cloudflare — processes those AI requests and responses. Our API stores temporary usage counters keyed by a hash of your connecting IP address to limit abuse, rather than storing your prompts or photos. Expired daily counters are removed from active storage after the next UTC midnight. Provider platform retention and recovery backups are separate. Devices sharing an internet connection may share a limit.
Google Play Integrity — verifies that AI requests come from the recognized app on an eligible device. Google processes verification information; our API checks the resulting token and a hash of the request before forwarding it to OpenAI.
AI content reports — when you tap Send report, our Cloudflare API receives the result text shown in the report, your reason and optional notes, feature name, app version, timestamp and a random report identifier. A report does not attach your photos or your entire wardrobe. We keep accepted reports for up to 30 days to investigate harmful or incorrect AI results and improve safeguards. Only the developer's authenticated tools can read the inbox.
OpenWeather — the city name you type is sent to api.openweathermap.org to look up its coordinates and retrieve the forecast. The app does not request device location permission.
Google AdMob — banner, interstitial and optional rewarded ads are requested from Google. Google may process your device's advertising identifier and standard ad-request data to serve, measure and (where you have consented) personalise ads. This includes app interactions, diagnostics and approximate location inferred from your IP address.
Google Analytics for Firebase — only when you enable Usage analytics in Settings, new numeric usage events, credit experiment assignments, ad earnings and AI token counts are sent with a random measurement ID and timestamps. This helps us measure app reliability, returning usage and the cost of free credits. The SDK also processes standard app and device information under Google's privacy policy and may infer an approximate region from your internet connection. Your photos, prompts, name, wardrobe and weather location are not included in analytics events. We disable Analytics advertising ID collection, advertising data sharing and ad personalisation. Previously saved local diagnostics are never uploaded when you enable sharing.
What is never collected
• No account or password — there is no sign-in. We receive your email address if you choose to contact support by email, and any personal information you choose to include in report notes.
• No Closet AI account or remotely hosted wardrobe.
• No contacts, calendar, microphone or SMS access.
• No GPS or precise device location. The app does not request location permission; weather is based solely on a city name you type yourself.
• Optional analytics does not receive your photos, prompts or wardrobe content.
• Your data is never sold.
Permissions and why they are asked for
• Camera — to photograph a garment when you add it to your closet or scan an item while shopping. You can always pick an existing photo instead, which needs no permission at all.
• Notifications — optional, used only for the daily reminder that your credits and today's outfit are ready. Decline it or turn it off at any time in Settings.
• Internet and network state — required to reach the AI, weather and ad services.
Ads and your choices
Closet AI shows banner ads, interstitials at natural breaks and, if you choose to watch one, rewarded ads that top up your credits.
If you are in the European Economic Area, the United Kingdom or Switzerland, a Google-certified consent message is shown before ads are requested, and you can reopen it at any time from Profile -> Settings -> Ad Privacy Settings to change or withdraw your choice. That row appears only where these consent rules apply.
Usage analytics has a separate optional switch in Settings. It is off by default. Turning it off stops future analytics sharing and does not affect your ability to use the app. Consenting to ads does not enable usage analytics.
Keeping and deleting your data
Wardrobe data is kept until you delete it. Numeric diagnostics expire after 30 days or 10,000 events, whichever comes first. Two ways to erase local data:
• Profile -> Settings -> Clear All Data — permanently removes your wardrobe photos, garments, outfits, saved results, pending and legacy content reports, personal preferences and diagnostics from this device, resets the measurement ID and turns off analytics sharing. Your age confirmation, completed-onboarding status, appearance and temperature-unit choices are kept. The credit wallet and daily allowance limits remain to prevent repeated free-credit claims.
• Uninstalling Closet AI — removes the app's entire private storage.
Accepted AI content reports remain in our moderation inbox for up to 30 days. To request earlier deletion, contact us with the report identifier shown after submission. Clearing local data cancels pending submissions but cannot recall a request already accepted by the server.
Neither action deletes information already processed by Cloudflare, OpenAI or Google, or immediately resets the API's temporary abuse-prevention counters. OpenAI states that API inputs are not used to train its models by default and are retained only for a limited abuse-monitoring window; their policies below govern that data, and requests about it must go to them.
Age
Closet AI is intended for users aged 18 and over. It is not directed at children, and we do not knowingly collect data from children. Age confirmation is required before onboarding, advertising consent or analytics starts; choosing Under 18 prevents entry into the app. If you believe a child has used the app on your device, use Clear All Data to erase what was stored.
Third-party services
Each service below handles the data it receives under its own privacy policy:
Changes
If this policy changes, the updated text ships with the next app update and the date below changes. Material changes will be summarised at the top of this screen.
Contact
Questions about privacy, or a request about your data: Mustaphaoubouz@gmail.com