Legal
Privacy Policy
Fullwear stores your photos and wardrobe on your phone. If you sign in, it backs up that data; some features send limited information to outside services, and the app can send usage statistics. This page explains what leaves the device, why, and how you can control it.
Last updated: 9 November 2026
The short version
- Your garment photos and your whole wardrobe live in a private database on your phone.
- Garment recognition runs on the device. Photos are never uploaded for tagging.
- An account is optional. The account itself stores your email address and a generated user ID; usage analytics uses a separate installation identifier.
- Without an account, your closet and photos are not backed up. If you opt in, limited usage statistics can be sent from the app; weather requests also send approximate coordinates when you allow location access.
- AI trip packing also uses a server. It sends garment attributes as text — no photos, no names, no email address.
- Fullwear offers optional, developer-operated usage analytics to improve the app. Newer builds ask before sharing; earlier builds may have sharing on by default. You can turn it off and delete usage history in Profile. There are no ads, cross-app advertising trackers, or crash-reporting SDKs, and nothing is sold to data brokers.
Who is responsible
Fullwear is made and operated by Josua Kohler, an individual developer based in Switzerland. Fullwear is not a company. For anything in this policy, including data-protection requests, write to support@fullwear.app.
What stays on your device
The following is stored in Fullwear's private app sandbox, in a local SQLite database. Without an account, your closet data and photos are not backed up. The separate usage statistics and weather requests described below can still leave the device.
- Your garment photos.
- The attributes derived from them: category, colour, pattern, material, season, formality, and fit.
- Your wear history and outfit feedback.
- Saved trips, style rules, and inspiration lists.
Deleting the app removes all of it from the phone.
On-device AI
Garment recognition uses two AI models: a vision-language model (Qwen3-VL-2B) and an image-embedding model (CLIP ViT-B/32). They are downloaded once — around 1.5 GB in total — and after that they run entirely on your phone.
Your photos are never sent anywhere for tagging.
Optional account
You can use Fullwear without an account. An account is needed only to unlock Pro features and to sync a backup between your devices.
Sign-in options are Sign in with Apple, Google, or a one-time code sent to your email address. The account is hosted on Supabase in the EU, in the eu-west-1 (Ireland) region.
What the account stores
- Your email address.
- A generated user ID.
Fullwear never stores a password of yours.
Optional closet backup
Backup is what an account is for, so it is active whenever you are signed in. A snapshot of your closet data and your garment photos is uploaded to the developer's Supabase project — a Postgres database and a storage bucket — and kept in step as your closet changes. There is no separate switch to turn it on.
Access is restricted per user at the database level: each account can read and write only its own rows and its own photo folder.
If you do not create an account, none of your photos or closet data is uploaded. Signing out stops the backup, and deleting your account removes what was uploaded.
AI trip packing
AI trip packing is a Pro feature that needs a server.
When you generate a packing plan, the app sends a compact text list of your wardrobe attributes — plus your trip parameters, such as where you are going, for how long, and what you will be doing there — to a Supabase Edge Function operated by the developer. That function calls the Anthropic Claude API to produce the plan.
- No garment images are sent.
- No personal identifiers are sent — no names, no email address.
- Anthropic does not use API inputs to train its models.
Location and weather
Outfit recommendations use the real forecast, so Fullwear asks for your location. With your permission it reads the device's approximate location — low accuracy — and sends those coordinates to Open-Meteo (open-meteo.com) to fetch the local forecast.
Open-Meteo requires no API key and receives no identifier of any kind. It receives coordinates and nothing else.
Your location is also used to pick the app's default language.
Declining location permission is fine. The app then falls back to a default temperature.
Subscriptions and payments
Purchases are processed by Apple. The developer never sees your card or payment details.
RevenueCat manages subscription state on the developer's behalf. It receives your Supabase user ID and your purchase and subscription record. No email address and no name is sent to RevenueCat.
Notifications
The morning reminder is scheduled locally on your device. There is no push server behind it, and no device token is transmitted anywhere.
Usage analytics and advertising
Fullwear uses a small, developer-operated analytics system to understand how the app is used and where people encounter friction. It records selected actions: daily app use; onboarding steps and completion; clothing-import method, stages, counts, time spent processing and reviewing, and outcome; when an outfit is marked worn or a packing plan is saved; and interest in Pro, paywall presentation, and purchase-flow outcomes. Events include their time, app version, and whether the app is a development or production build.
For these statistics, the app creates a random identifier for this installation. Events from the same installation can be counted across sessions, but the analytics events contain no account ID, email address, name, garment or album identifier, garment attributes, photos, precise location, or free-form text. The analytics identifier is separate from your account. If you choose to share them, these statistics can be collected even if you never create an account. Separately, RevenueCat subscription webhooks provide limited purchase and subscription statistics, such as event type, product, price, and time; Fullwear does not store account IDs or email addresses in those analytics records.
Events are held in a separate database on your phone while they await upload to the developer's Supabase analytics service. The local queue holds at most 500 events and drops events older than seven days. The service stores a one-way hash of the installation token with the events. It also derives a short-lived, secret-keyed hash from the connection's IP address to limit abuse; the raw IP address is not stored in the analytics database. Supabase processes the analytics data on the developer's behalf.
In builds with the new consent prompt, sharing starts off. Before recording or uploading any usage events, Fullwear asks whether you want to share statistics. Choosing No thanks does not limit the app. If you choose Share, you can later turn off Share usage statistics in Profile to stop new events and clear the unsent local queue. Earlier builds may have sharing on by default; you can turn it off in Profile. On upgrade, pending events from an earlier build are discarded before the new choice is shown. Events already uploaded remain until their normal retention period or until you choose Delete usage history. That command turns sharing off and asks the server to delete events and installation records linked to this installation; it needs a connection, and you can retry if it fails. It does not delete your closet or your account. If you reinstall the app, it receives a new installation identifier.
Individual analytics events are retained on the server for up to 90 days before they are reduced to daily counts. Those counts can be kept for up to two years and cannot be traced back to an installation or removed individually. Inactive installation records are removed after 365 days. The local queue, server events, and aggregate counts have separate retention periods.
Fullwear does not use these statistics for advertising, does not combine them with data from other companies to track you across apps or websites, and does not sell or share them with data brokers. There is no advertising or crash-reporting SDK in the app.
Third parties
These are all of the outside services involved, and exactly what each one receives.
| Service | What it does | What it receives |
|---|---|---|
| Apple | Payments and Sign in with Apple | Your purchase; the sign-in details you approve. The developer never sees card or payment details. |
| Supabase | Account, optional closet backup, packing function, and developer-operated usage analytics | Your email address and user ID, and — while you are signed in — your closet data and garment photos. The separate analytics service receives selected app events and an installation token; its database stores a hash of that token, not your account ID. Hosted in the EU, eu-west-1 (Ireland). |
| RevenueCat | Subscription state | Your Supabase user ID and your purchase and subscription record. No email address, no name. |
| Anthropic | Generates the AI packing plan | A text list of wardrobe attributes and your trip parameters. No images, no personal identifiers. Anthropic does not use API inputs to train its models. |
| Open-Meteo | Weather forecast | Approximate coordinates only. No API key, no identifier. |
Google also appears here if you choose to sign in with Google: the sign-in is handled by Google, and the resulting account stores the same email address and user ID as any other sign-in method.
Legal basis for processing
- Contract performance — running your account, backing up your closet to it, and running your subscription.
- Consent — location access. You can withdraw it at any time in iOS Settings. Creating an account is itself the consent for the backup; signing out or deleting the account withdraws it.
- Consent — optional usage statistics in builds with the new consent prompt. You can decline or withdraw your choice in Profile at any time and request deletion of history linked to this installation. Earlier builds may have collected limited usage statistics on an opt-out basis.
- Legitimate interest — keeping the service working.
Retention and deletion
- On the phone: deleting the app removes all on-device data.
- Your account: deleting the account removes the account and the uploaded backup, photos included.
- Usage statistics: the local queue keeps events for up to seven days; server events are kept for up to 90 days, then daily counts for up to two years. Use Profile → Delete usage history to remove events linked to this installation from the server and turn sharing off. Previously created daily counts cannot be deleted individually.
Account deletion is available inside the app, in the Profile tab. That is the primary route. If you cannot reach it, email support@fullwear.app from the address on the account instead. Full instructions are on the delete your account page.
Cancelling a subscription is a separate step. Subscriptions are managed by Apple, not by Fullwear. Deleting your account or the app does not cancel billing. Cancel at apps.apple.com/account/subscriptions.
Children
Fullwear is not directed at children under 13 and does not knowingly collect their data.
Your rights
If you are in the EU or EEA, the GDPR applies to you. If you are in Switzerland, the revised Federal Act on Data Protection (nFADP) applies. Either way you have the right to:
- access the data held about you,
- have it corrected,
- have it deleted,
- receive an export of it,
- and object to processing.
Send requests to support@fullwear.app. They are answered within 30 days.
Changes to this policy
If this policy changes, the updated version is published on this page with a new "last updated" date.