This page lists everything StyleFrame AI, operated by TWIST DIGITAL (PRIVATE) LIMITED, keeps in your browser, what each item is for, and what you can do about it.
The short version: no advertising storage, no third-party analytics and no cross-site tracking. A phone-gated public demo also stores a 30-day opaque verification credential.
What is stored, and why#
“Local storage” survives until you clear it. “Tab storage” is thrown away the moment you close the tab.
| Name | Where it lives | What it is for |
|---|---|---|
| sf_consent_v3 | Local storage | Remembers that you have seen this notice, and whether you allowed anonymous measurement. Kept until you clear it. |
| sf_visit_token_v1:<shop> | Local storage | The credential for your visit to one shop. Different for each shop, and not linked to your name, phone number or face. |
| sf_demo_access_v1:<shop> | Local storage | For a phone-gated public demo, remembers that this browser verified a phone. It is an opaque credential, expires after 30 days, and can be revoked. The phone number itself is never stored in the browser. |
| sf_visit_device_v1:<shop> | Local storage | A random value identifying this browser profile in one shop, used to apply that shop’s daily try-on allowance. Different for every shop by construction, so it cannot connect you across two of them. |
| sf_visit_v1 | Tab storage | A random id used only to count which step of the try-on this visit reached. Discarded when you close the tab, so it cannot link one visit to another. |
| sf_shop_v1 | Tab storage | The code of the shop whose QR you scanned, so the app knows whose catalogue to search. It identifies a shop, not you. |
| sf_cutout_v1:<image> | Tab storage | If you turn on background removal, the processed image is held for 15 minutes so a reload does not have to redo it. It never leaves your device. |
| sf_guide_seen_v1 | Local storage | Remembers that you have seen the studio guide, so it does not reopen every time. |
| sf_guide_hint_dismissed_v1 | Tab storage | Remembers that you dismissed the “New here?” hint. |
| styleframe-intro-seen | Tab storage | Remembers that the opening animation has already played in this tab. |
| sf:visited | Tab storage | Remembers that you have already seen the site’s opening transition, so returning pages load straight into content. |
| sf:dev-warning-seen | Tab storage | Only on our internal preview site, never on the public one: remembers that you dismissed the “this is a preview” notice. |
Not every entry appears for every visitor. Most only exist once you have actually scanned a shop’s QR code and started a try-on.
Why we are allowed to store these#
Storing anything in your browser needs either your agreement or a good reason recognised in law. These items fall into two groups.
Strictly necessary: no agreement needed
Everything in the table above except the measurement id is strictly necessary to deliver something you asked for: to keep your visit working, to remember which shop you scanned, to apply that shop’s daily allowance, to avoid redoing work you have already waited for, and to remember that you have seen this notice. Without them the service cannot run, so the law does not require separate consent.
Anonymous measurement: you can turn it off
The one remaining item, the visit id, exists only to count which step of the try-on a visit reached. We keep it available under the narrow allowance for a site measuring its own audience, and we only rely on that allowance because we meet every condition it carries:
- It is entirely first-party. The counts are produced by us, for us, on our own systems.
- It is never shared with anyone, and never combined with any other processing.
- It cannot follow you to another website, or link one visit to another. The id lives in tab storage and is discarded when you close the tab.
- The records hold no image, no name, no contact details, no free text and no device identifier.
- They are deleted automatically after 180 days.
- You can decline it, and declining costs you nothing.
What the measurement actually records#
Each record holds four things: which step was reached, when, the random tab-scoped id described above, and, if you arrived by scanning a shop’s QR code, which shop that was.
That is the whole record. It exists so we can see that, for example, a lot of visits reach the photo step and stop there, and go and fix whatever is wrong with it. A shop sees the same counts for its own store.
- No images, and no reference to one.
- No name, email address or phone number in the anonymous measurement record.
- No IP address and no device or browser identifier.
- No free text of any kind.
- Nothing that can be traced back to you, or joined to another visit.
What we do not do#
- We use no advertising cookies or advertising networks.
- We use no third-party analytics service: no Google Analytics, no equivalent.
- We do not track you across other websites, and we embed nothing that would.
- We do not sell or share data with data brokers.
- We do not use social-media tracking pixels.
Clearing it yourself#
You can clear this storage at any time through your browser’s settings for this site, and everything above disappears immediately.
What happens next: this notice reappears, the studio guide reopens once, and any visit in progress ends. Clearing a public-demo access credential makes that browser verify again, but it does not reset the three lifetime try-ons attached to the verified phone.
Browsers set to block site storage entirely will still run the try-on. The app is written to fall back to memory and to fail quietly rather than refuse to work.
Changes to this policy#
We update this page in the same release as the change it describes. This version adds the 30-day credential used by the phone-verified public demo.
Contact#
Questions about this page: info@styleframe.fit.
Something here unclear, or not what you expected?
We would rather fix the wording than have you guess at it.
