Last updated 3 October 2026.
Fractal Chat is a chat interface at fractal-chat.com. There is no sign-up: you can use it without telling us anything. If you subscribe, a small record is kept so we know your plan is paid, described below. This page lists everything that gets stored, on your device and on our server, and what we do not store.
| What | Where | Why | Kept for |
|---|---|---|---|
| Device id | Cookie fc_deviceHttpOnly, Secure, SameSite=Lax |
Counts the free messages you have used, so a free tier can exist at all | 1 year |
| Your API key | localStorage["fractal-key-…"] |
So you do not retype it every visit | Until you clear site data |
| Provider choice | localStorage["fractal-provider"] |
Remembers which provider you picked | Until you clear site data |
| Model choice | localStorage["fractal-model"] |
Remembers which model you picked | Until you clear site data |
| Your analytics answer | localStorage["fractal-consent"] |
Remembers whether you allowed analytics, so we stop asking | Until you clear site data |
None of these are shared with anyone, and none of them can be read by another site. The device cookie is the only one the server ever sees, and it contains a random id and nothing else — no name, no email, no address.
If you paste your own API key it is kept in your browser's
localStorage and sent to your chosen provider through our
server, which does not record it. Be aware that
any script running on this page could read it; that is true
of every browser-stored key anywhere. Use a key scoped to this purpose and
revoke it if you stop using the site.
We use DataFast to count visits and PostHog to see how the app is used. Neither is loaded at all unless you accept, and declining leaves the site fully working. If you accept, they set these:
| Name | Where | Purpose |
|---|---|---|
datafast_visitor_id | Cookie | Recognises a returning visitor |
datafast_visitor_first_seen_at | Cookie | When that visitor first arrived |
datafast_session_id | Cookie | Groups one visit together |
datafast_visitor_session_count | Cookie | How many visits that is |
datafast_pageview_state | sessionStorage | Avoids double-counting a page view |
ph_phc_…_posthog | Cookie and localStorage | A random visitor id and the current session, for PostHog |
PostHog receives page views, clicks on the page, and named actions such as sending a message, splitting a reply, sharing, or joining the waitlist. It never receives what you type or what the model answers. If you are signed in, it also receives your email so your visits on different browsers count as one person. PostHog works out an approximate location (country and city) from your IP address. When the server turns a chat away because it is busy, it tells PostHog why, under the same random id.
Page views are sent to datafa.st, and the above to PostHog (US). Declining later stops PostHog and deletes its cookie. You can change your mind whenever you like: .
| What | Why | Kept for |
|---|---|---|
| Device id and credits used | Enforces the free allowance | Until we reset the free tier |
| A salted hash of your IP address, per day | Stops one person draining the free tier from many browsers | 30 days |
| If you subscribe: your email, the subscription id, and its status | So we know the plan is paid and how many credits it carries | While the subscription exists |
| If you sign in: which device ids belong to your email | So the plan follows you to another browser | Until you sign out |
| If you press Share: a copy of that one conversation | So the link you handed out keeps working | Until you ask us to delete it |
| Chats on our credits, at LangSmith: the conversation, the reply, and your device id | So we can check answer quality and find bugs | 14 days |
| Chats on our credits, at an answer-quality service: the conversation, the reply, and the model used | So we can measure how reliable each model's answers are | Under that service's own terms |
| If you join the waitlist: your email, with your device id and a hash of your IP address | So I can tell you when there is room; I get an email when someone joins | Until you ask us to delete it |
| If you send a report: what you typed, a copy of that conversation, and your email if you gave one | So the problem can be reproduced and answered | Until the problem is dealt with, or you ask us to delete it |
The address is hashed with a secret salt before it is written, so the stored value cannot be turned back into your IP address. The raw address is never written down.
Pressing Share copies that one conversation to our server and gives you a link to it. Anyone with the link can read it, and there is no password on it: the link itself is the key, which is why it is long and random. It is not listed anywhere and search engines are not pointed at it, but treat it as public.
What gets stored is the conversation you shared and nothing else: the messages, which of them are halves of a split reply, and which parts were folded. It is a snapshot, so later changes to your copy do not change it. Do not share a conversation containing anything you would not put on a public page. To have one removed, email [email protected] with the link, and it is deleted. If you have signed in you can ask for everything stored under your address to go at once, without having to find the links yourself.
The Report button sends us what you typed in the box together with a copy of that one conversation. Reports are not public. There is no link to a report and no page that shows one; they are read by us and nobody else. This is the opposite of a share link, so the two are worth not confusing.
Attached to your note is: the messages in that conversation, which of them are halves of a split reply, what was sent to the model on each turn, and which model and browser you used. The dialog shows you the exact contents before you send it — open “See exactly what is attached” and you are looking at the same text we receive. Your API key is never part of it.
The email field is optional and never filled in for you. Give it only if you would like an answer; without it a report is just the note and the conversation. To have a report deleted, email [email protected].
Signing in is optional. Everything except recovering a subscription works without it.
If you do sign in with Google we ask for one thing, your email address, and we store that. We never see your Google password, and we do not ask Google for your contacts, your files, or anything else. We do not keep a refresh token, so we cannot reach your account again after you close the tab.
The email is the link between your subscription and whichever browser you are using, which is what lets a paid plan survive clearing your cookies and work on a second device. An unverified Google address is refused, because email is what proves the plan is yours. Sign out to unlink this browser; the subscription stays with the email.
Subscriptions are handled by Polar, who are the merchant of record. That means Polar is the seller, takes the payment, and handles sales tax and VAT. Your card details never reach us — the checkout page is theirs and we never see, hold, or store a card number.
When a subscription starts, Polar tells our server the subscription id, its status, and the email you gave them, and we attach that to your device id so the paid credits land in the right browser. Polar's own handling of your data is governed by their privacy policy. To cancel or change payment details, use the customer portal link on your Polar receipt.
Messages are relayed to OpenRouter, which passes them to the model you picked. Their handling is governed by their own terms.
When you chat on our credits, the conversation and the reply are also logged to LangSmith, which we use to check answer quality and find bugs. A log carries a random device id, never your name or email, and LangSmith deletes it after 14 days.
Chats on our credits are also sent to a service that rates how reliable each answer is. It receives the conversation, the reply and the name of the model, with no device id, name or email. Its handling is governed by its own terms.
If you use your own key, the message goes to whichever provider that key belongs to and is not logged anywhere. We do not keep a copy.
Clear site data for fractal-chat.com in your browser settings. That removes the device cookie, your stored key, your choices, and any analytics cookies in one go. The server-side credit count is keyed to the device cookie, so it stops being connected to you the moment that cookie is gone.