Privacy Policy
Last updated: August 5, 2026
emode puts virtual try-on on clothing stores. This explains what we collect, who else sees it, how long we keep it, and how to have it removed. It covers emode.style, the emode widget on merchant storefronts, the emode Shopify app, and the emode browser extension.
1. Who we are, and who you are to us
Two different people use emode, and the difference matters legally.
Merchants are the businesses who install emode. For their own account data, we are the controller.
Shoppers are the people who try clothes on. When a shopper uses try-on on a merchant's store, that merchant is the controller and emode is a processor acting on their instructions. When someone uses the emode app, marketplace or extension directly, we are the controller.
2. Photographs
The photograph a shopper uploads is the most sensitive thing we handle, so it gets its own section.
It is used to generate the try-on that was asked for, and for nothing else. We do not sell it. We do not share it with other merchants. We do not use it to train models, ours or anyone else's. We do not run face recognition on it, and we do not build a profile from it.
Before upload it is resized in the browser, so the original full-size file usually never leaves the device.
Generating the image requires a third party. The photograph and the product image are sent to Google's Gemini API, which returns the result and processes them to serve that request under their API terms. A shopper unwilling for their photograph to be processed by Google should not use try-on.
Retention. We do not store the generated image, and we do not keep the uploaded photograph after the request that used it. What is retained is the record that a try-on happened — a timestamp, which merchant, which product — not the pictures.
Depending on where you live, a photograph of your face may count as biometric data. We do not use it biometrically — no identification, no matching, no faceprint — but we treat it as sensitive regardless.
3. What else we collect
- Account details — your email address, and a Google profile if you sign in that way. Authentication is handled by Supabase.
- Merchant and store details — brand name, store domain, plan, and for Shopify installs the shop identifier and access token.
- Product information — the title, image, price and URL of products a shopper views or tries on, read from the merchant's own public page.
- A visitor identifier — a random value stored in the browser on the merchant's own domain, used to connect a try-on to a later purchase so a merchant can tell whether try-on sells anything. It is opaque, contains no personal data, and is not shared between merchants. Clearing site data removes it.
- Order data, where a merchant has enabled it — order total, currency, an order identifier and whether it was refunded. Not names, not addresses, not payment details.
- Usage counts — how many try-ons were generated, to enforce plan limits and detect abuse. Rate limiting also processes IP addresses transiently.
We do not run third-party advertising or tracking pixels on emode.style.
4. The browser extension
The emode extension needs access to the pages you visit in order to recognise a product page and place the try-on button. That access is broad by necessity, so it is worth being specific about what happens with it.
Page content is read in your browser and is not transmitted to us. Nothing leaves the device until you tap Try This On — at which point the product title, image and price for that one item are sent, along with the photograph you choose. We do not collect browsing history and we do not record the pages you visit.
Two things the extension does are worth calling out because they are not obvious. When you use a try-on button on a search results page, the extension fetches that product’s own page in the background to get a full-size image, because search thumbnails are too small to try on well. That request goes to the shop, not to us, and it is sent without your cookies, so the shop cannot recognise you from it. And if you land on an order confirmation page at a shop you have saved items from, the extension marks those saved items as purchased. That happens entirely on your device — we are not told what you bought.
Items you save are stored in the browser, not on our servers, and are removed when you remove them or clear the extension’s data.
5. The visitor identifier, and consent
To tell a merchant whether try-ons lead to purchases, emode stores an opaque random value in your browser on the merchant’s own domain. It is not derived from anything about you, is never used for advertising, and is never sold.
On Shopify stores we ask Shopify’s Customer Privacy API before storing it, and delete it if consent is later withdrawn. Elsewhere the widget honours a browser’s Global Privacy Control signal, and merchants running their own consent banner can hold emode behind it.
Refusing costs you nothing: the try-on works either way. It simply is not counted.
6. Who else processes your data
| Processor | What they receive |
|---|---|
| Google (Gemini API) | Uploaded photographs and product images, to generate a try-on |
| Supabase | Accounts, merchant records, try-on records; database and authentication |
| Vercel | Hosting and request logs for the website and API |
| Fly.io | Hosting for the Shopify app |
| Stripe | Payment details for merchant subscriptions. Card numbers go to Stripe, never to us |
| Shopify | Store and product data, for merchants who install the Shopify app |
These providers operate in the United States and elsewhere, so data may be transferred internationally.
7. How long we keep things
- Uploaded photographs — not retained after the request.
- Generated images — not stored.
- Try-on records — kept while the merchant's account is active, for their analytics.
- Order attribution records — order id, total, currency and the product ids in the order, kept while the merchant's account is active. No customer name, email, phone or address is ever received.
- Account and merchant records — kept until deletion is requested.
- Billing records — kept as long as tax and accounting law requires.
8. Your rights
Depending on where you live you may have the right to access, correct, export or delete your data, to object to processing, and to withdraw consent. To exercise any of them, email support@emode.style. We aim to respond within 30 days.
We do not sell personal information, and we do not share it for cross-context behavioural advertising.
If a shopper used try-on on a merchant's store, that merchant is the controller — we will help them respond, or pass the request on. Shopify merchants are covered by Shopify's own data request and redaction webhooks, which we implement.
9. Children
emode is not intended for children under 13 and we do not knowingly collect their data. If you believe a child has uploaded a photograph, email us and we will delete it.
10. Security
Data is encrypted in transit. Database access is restricted by row-level security so one merchant cannot read another's data. Payment details never touch our servers.
No system is perfectly secure. If we discover a breach affecting personal data we will notify those affected and the relevant authority as required by law.
11. Changes, and how to reach us
If this policy changes materially we will update the date above and, for significant changes, notify merchants by email.
Questions, requests or complaints: support@emode.style. See also our Terms of Service.