← Fractal Chat

Privacy

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.

Our server does not store your conversations, unless you share one or send us a report. Your messages pass through our server to the model provider and are not written to our disk. Your saved chats live in your own browser. Chats on our credits are logged to LangSmith for 14 days and sent to a service that rates answer quality; chats on your own key are neither. Sharing and reporting are the other exceptions, and both are things you do on purpose. All three are described below.

On your device

WhatWhereWhyKept for
Device id Cookie fc_device
HttpOnly, 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.

Your API key

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.

Analytics, only if you say yes

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:

NameWherePurpose
datafast_visitor_idCookieRecognises a returning visitor
datafast_visitor_first_seen_atCookieWhen that visitor first arrived
datafast_session_idCookieGroups one visit together
datafast_visitor_session_countCookieHow many visits that is
datafast_pageview_statesessionStorageAvoids double-counting a page view
ph_phc_…_posthogCookie and localStorageA 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: .

On our server

WhatWhyKept for
Device id and credits usedEnforces the free allowanceUntil we reset the free tier
A salted hash of your IP address, per dayStops one person draining the free tier from many browsers30 days
If you subscribe: your email, the subscription id, and its statusSo we know the plan is paid and how many credits it carriesWhile the subscription exists
If you sign in: which device ids belong to your emailSo the plan follows you to another browserUntil you sign out
If you press Share: a copy of that one conversationSo the link you handed out keeps workingUntil you ask us to delete it
Chats on our credits, at LangSmith: the conversation, the reply, and your device idSo we can check answer quality and find bugs14 days
Chats on our credits, at an answer-quality service: the conversation, the reply, and the model usedSo we can measure how reliable each model's answers areUnder that service's own terms
If you join the waitlist: your email, with your device id and a hash of your IP addressSo I can tell you when there is room; I get an email when someone joinsUntil 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 oneSo the problem can be reproduced and answeredUntil 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.

Share links

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.

Reporting a problem

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

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.

Paying

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.

Where your messages go

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.

Erasing everything

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.

Contact

[email protected]