Privacy policy
Effective October 11, 2026 · Version 2 · Policy ID 2026-10-11.2
FitMirror is provided by Daniel Iravani under the EnTerra Scientific brand. Contact: enterrascientific@gmail.com. This policy covers the extension and the EnTerra-hosted FitMirror service.
What stays in your browser
Your measurements, appearance description, colours and fit preference stay in the fitting tab unless you choose Save profile. Saving encrypts the profile on your device using AES-256-GCM with a key derived from your passphrase using PBKDF2-SHA-256. The passphrase is not sent to FitMirror, stored by FitMirror or recoverable by us. You need it to unlock your profile after reloading or reopening the fitting room. FitMirror does not sync profiles to an account. Older development versions saved plaintext profiles. When opened by this version, an older profile is moved into the fitting tab and its plaintext saved record is removed. Save it again with a passphrase to keep an encrypted copy after closing the tab. Clear my local profile removes either format. A person with access to an unlocked browser tab can see its current inputs. Your chosen backend URL is also saved. A temporary product capture contains the current product title, URL, images and readable table cells; it is removed from extension storage when the fitting tab reads it. That fitting tab keeps the product capture in tab-session storage so refreshing the tab preserves the fitting. Browser session restoration may restore this product capture; it contains no body photo or API key.
Body photos, uploaded garment images, API credentials and generated previews remain in the fitting tab's memory and are not saved by FitMirror. Closing that tab discards them from the application. Browser, operating-system caches and downloaded files are outside this deletion control.
What leaves your device
Clicking the extension on a product page reads that page only. FitMirror does not read your browser history, track unrelated browsing, or collect cookies or retailer login details. The selected product URL is part of the product capture described above. Product images load from the retailer or its image host; that host may receive your IP address and the image request. Referrer information is suppressed.
Clicking Test connection sends your entered API key to the backend you selected, which uses it to check model access with OpenAI. No body measurements or photos are sent during this check.
Generating a preview requires a new processing consent and acceptance of the Terms. The request sends two selected images (your avatar snapshot or optional body photo, and the garment image), your measurements and descriptions, garment details, and your API key or private server token to the selected backend. The backend forwards the relevant inputs and API key to OpenAI. Do not use a backend you do not trust.
Purpose and processors
These inputs are used to generate the try-on image you request. The hosted service runs on Railway; OpenAI provides image generation. Processing may occur outside Canada, including the United States, and be subject to those jurisdictions' laws. We do not use your inputs for advertising, sell them, or build body-identification databases. FitMirror does not perform face recognition or infer health conditions.
OpenAI states that API inputs and outputs are not used for model training by default. Standard abuse-monitoring retention for image-edit requests is up to 30 days; legal requirements, safety investigations and account settings can change this period. Suspected child sexual abuse material may be retained for manual review even when special retention controls apply. FitMirror does not claim to have Zero Data Retention enabled. See OpenAI data controls and Railway privacy information. FitMirror cannot erase records retained by these providers by clearing your local profile.
Retention and security
The FitMirror application does not write photos, request bodies, API keys or generated images to server storage or application logs. They are processed in memory during requests. The service temporarily holds network-address identifiers and request counts for up to one hour to limit abuse; these records are discarded on restart. Hosting providers can maintain network and operational logs under their own policies. We do not promise zero provider retention.
Public connections use HTTPS. User-entered API keys are held in tab memory and in server memory while a request is handled. The separately configured operator API key and private service token are stored in the operator’s protected Railway service configuration and loaded into server memory. They are never included in extension downloads. Local HTTP is supported solely for localhost development. Restrict your OpenAI key's permissions and spending limits, and revoke it at OpenAI if compromised.
Your choices and deletion
AI processing and body photos are optional. Measurement comparison works without them. Use Remove photo, Forget key, or Clear my local profile. Clearing removes the persistent profile and the current tab’s selected photos, keys and preview. Other already-open tabs can still hold their current inputs in memory; close those tabs to discard them. Profile writes are coordinated across tabs so an older pending save cannot restore a cleared record. Uninstalling the extension removes its local extension storage; downloaded images must be deleted separately. To ask a privacy question, request access to any information we hold, or make a complaint, contact the address above. We cannot look up anonymous inputs that were never stored, and may need limited verification to respond to a request.
Support, permissions and your rights
If you email us, the email service processes your address, message and any attachments so we can respond. Do not send body photos or API keys in support email. Support correspondence is kept while the request is open and for up to 12 months after resolution, unless a legal or security obligation requires longer retention. No analytics, advertising identifiers or tracking cookies are added by FitMirror.
The extension uses activeTab and scripting to read the product page only after you click Open fitting room. Storage saves the encrypted profile, selected backend and temporary capture. Optional host access is requested only for the backend and image host needed for the operation. Granting access does not cause background collection. You can revoke optional host access in browser extension settings.
You can correct your measurements, remove photos and withdraw AI consent before each request. After transmission, cancellation does not guarantee that provider processing or billing stops. Where applicable, you may ask for access, correction, deletion, portability, restriction or object to processing, and contact your local privacy authority. We process optional sensitive body information only for the fitting features you request. We do not make legal, medical or similarly significant automated decisions. Data may be disclosed if legally required or necessary to investigate security abuse, subject to Limited Use restrictions. We do not permit routine human review of your images or profiles by FitMirror staff. Any transfer in a business sale would require your explicit prior consent.
Age and changes
The hosted image service is for adults 18 and older. Do not upload images of minors. Material changes to processing will be reflected here and in the in-app consent notice before new processing.
Chrome Web Store Limited Use
FitMirror's use of information received through the extension adheres to the Chrome Web Store User Data Policy, including its Limited Use requirements. Access, use and transfer are limited to the user-facing fitting features described here, security and applicable legal obligations. No advertising use or sale is permitted.