Privacy Policy
Last updated September 15, 2026
Overview
ChatsRecall saves your AI chat history so you can search, read, and organize it in one place. It has two parts, and this policy covers both:
- The desktop app (Windows). This is where everything lives: your conversations, the search index, and all settings are stored in a database file on your own computer.
- The browser connector extension. This is a bridge, not a storage place. It lets the desktop app read the AI chat sites you are already signed in to, in your own browser. It keeps no conversation archive of its own.
There is no ChatsRecall account, no cloud sync, and no ChatsRecall server that receives your conversations. We cannot see your data.
Earlier versions of ChatsRecall were a browser extension only, which stored conversations in the browser and sent anonymous usage analytics. That design is gone: the archive moved to the desktop app, and analytics were removed entirely. This policy describes the current product.
What ChatsRecall Saves
From Supported Sources
For each conversation ChatsRecall captures, it stores the following on your computer:
- Titles: the name of the conversation, including later renames
- Messages: your prompts and the assistant's replies
- Links: the address of the conversation at its source, so it can be reopened there
- Dates and state: when a conversation was created, updated, captured, or last opened, and whether it is pinned or starred at the source
- Source and account: which service a conversation came from, and which signed-in account produced it. Account identity is typically the email address or display name the source itself shows, and it is used to keep multiple accounts and browser profiles apart
- Projects and folders: the source's own grouping of conversations, plus any projects you create inside ChatsRecall
- Attachment names and types only: the file name and the type the source reports, for files you attached and files a reply generated. File contents are never read or downloaded.
- Meeting details, for meeting notetaker sources: the summary, action items, key questions, and who said what, as the meeting tool recorded them
- Session details, for coding-agent sources: the repository and branch a session ran against
Derived From What Was Saved
To make the archive searchable, ChatsRecall builds indexes locally from the conversations it already holds: a full-text search index, an index of the terms and named things your conversations mention, and, if you choose to run it, an index of notable moments with the sentence each one came from quoted verbatim. It also records what the built-in AI features cost you, and any thumbs up or down you give an answer.
Files On Your Computer
For local coding-agent sessions, ChatsRecall reads session transcripts that other apps have already written to your own disk. It reads only those session directories. If you use manual import, it reads the transcript file you pick, or the text you paste.
Your Email Address, If You Give It
The setup wizard asks for your email address once, and the step can be skipped. If you enter it, see "When Data Leaves Your Device" below for where it goes.
What ChatsRecall Never Collects
- Passwords, login details, or the session cookies of any source. ChatsRecall works through a browser you are already signed in to and never handles your credentials
- The contents of attached or generated files
- Anything from sites that are not supported sources
- Usage analytics or telemetry of any kind, in the app, the extension, or on this website
Where Your Data Is Stored
On your computer, in files that belong to you.
- Conversations, indexes, and app settings are in a single SQLite database,
chatsrecall.db, in the desktop app's data folder in your Windows user profile - API keys you add for the optional AI features are stored in Windows Credential Manager, not in the database and not in plain text
- Access tokens for the app's local programmatic interface are stored only as irreversible hashes
- Answer feedback is written to a local file in the same app folder. The question you asked is stored only as a short hash of itself, so the only question-shaped text ever written is a comment you type yourself
- Small preferences, such as your theme and whether setup is finished, are kept in the app's own local storage
- The extension stores only what it needs to do its job right now: which sources are awaiting your approval, and a rolling log of the commands it ran, which exists for support and can be cleared from its popup. No conversations are stored in the browser
Nothing is backed up to us. If you delete the database file, that data is gone.
How Conversations Reach the App
ChatsRecall captures conversations in four ways, all of them started by you:
- Through your browser. The desktop app sends commands to the extension over Chrome native messaging, a private channel between the two programs on your machine. On a supported site, the extension reads what is on the page and records the requests the page itself makes, which is how titles, prompts, replies, renames, and deletions are detected. It acts inside your existing signed-in session, exactly as you would if you clicked through the site yourself. Some sync steps open a supported site in a background browser window to read pages that are not currently on screen
- Directly from a service's API, for meeting tools you connect yourself with your own API key or by granting access. These touch no browser
- From local session files written by coding-agent apps already installed on your computer
- By manual import of a transcript file or pasted text
Sources are individually switchable, and several ship switched off until you turn them on. Some require a one-time permission approval in your browser, which only you can grant, from the extension's own popup.
Actions ChatsRecall Takes On Your Accounts
ChatsRecall is not read-only at the source. When you ask it to, and only then, it acts on your behalf in your own signed-in session:
- Rename a conversation at its source, so the new title shows there too
- Pin or unpin a conversation at its source
- Delete a conversation at its source. When a source offers no delete ChatsRecall can reach, the confirmation says so and only the local copy is removed
- Move a conversation into or out of a project at the source
- Start a new chat at a source, or open a source's composer with text prefilled so you can continue a conversation elsewhere. Prefilled text is never sent for you; you review it and press send
Each of these is triggered by a click in the app. Nothing is written back automatically, and syncing on its own never changes anything at a source.
When Data Leaves Your Device
This is the complete list. Apart from these cases, no conversation data leaves your computer.
Optional AI Features, Using Your Own API Key
Some features answer questions or index meaning by calling a model provider. They are off until you add your own API key in Settings, you pay the provider directly, and nothing runs on a schedule or during a sync.
- Asking your archive a question sends the question and a bounded set of relevant excerpts to OpenAI. It requires a per-feature consent checkbox in the panel. The full archive is never sent, and neither are file contents
- Indexing notable moments sends conversation text to OpenAI, and for long transcripts to Anthropic instead, because only that model reads a long conversation all the way through. The page states the cost before anything runs, and indexes a limited batch at a time
- Suggesting extra wordings for a term is one clearly marked button that asks a model. It is never required
- Indexing the terms and named things your conversations mention involves no model and no network at all. It is entirely local
Before excerpts are sent, titles and text are scanned for things that look like secrets, such as keys and tokens, and those are removed. Runs are bounded in rounds, evidence, tokens, and time, and can be cancelled. What you send is then handled under your own agreement with that provider.
Your Email Address, If You Entered It
If you fill in the optional email step, the app posts it to our contact database, hosted on Supabase, so we can reach you about updates, fixes, or a reply to your feedback. Sent with it: your operating system and the app version. No identifier is attached, because the app has no analytics ID. It is sent once, and the step never asks again.
Update Checks
The app checks chatsrecall.com for a new version and, when one exists, fetches the release notes. These are ordinary web requests, so our host sees the request and the IP address it came from, as with any website visit. No conversation data or identifier is included. Installers are cryptographically signed, and the app verifies the signature before installing.
Services You Connect Yourself
If you connect a meeting tool, the app calls that tool's API with the credentials you provided, to fetch your own meetings. If you use a feature that opens a source site, the request goes to that site as it normally would from your browser.
What We Never Do
- We do not sell, rent, or trade your data
- We do not use your conversations for advertising, or to train any model of our own
- We run no analytics, telemetry, crash reporting, or tracking pixels
- We operate no cloud storage for your conversations
The Local Interface For Your Own Tools
The app can expose a read-only interface so tools you run on the same computer, such as an AI agent or a script, can search your archive. It is off until you create an access token in the app.
- It listens on your own machine only (
127.0.0.1) and is never reachable from the network - Every client needs a token you create. Tokens carry narrowly defined scopes, can be limited to certain sources or accounts, can expire, are rate limited, and can be revoked at any time
- Everything it offers is read-only. Nothing can write, delete, or start a sync through it
- Asking a question through it needs its own separate scope, because that is the one operation that sends excerpts to a model provider and spends your key
- An append-only log records that each request happened, deliberately without message content or the text of queries. Questions appear only as a short hash
- Conversation text handed to an agent is labeled as untrusted data rather than instructions
Extension Permissions Explained
The connector extension asks for the following. It contains no knowledge of any particular site: every selector and rule arrives from the desktop app at runtime, and it never downloads or evaluates remote code.
| Permission | Purpose |
|---|---|
nativeMessaging |
Connects to the ChatsRecall desktop app on the same computer. This is the only thing the extension talks to |
scripting |
Runs the two bundled scripts on supported sites so conversations can be read and captured |
tabs |
Opens, focuses, and reads the addresses of tabs, so a conversation can be opened at its source and the right tab can be captured |
storage |
Remembers pending source approvals and the recent command log shown in the popup |
alarms |
Keeps the connection to the desktop app alive and retries it when the browser suspends the extension |
| Site access (supported sources) | Lets the extension read conversation pages on the AI chat and meeting sites described below |
| Optional site access | Sites for newly added sources are optional and stay inactive until you approve each one from the extension's popup. You can revoke them in your browser at any time |
Which Sites Are Captured Today
The desktop app captures conversations from thirteen sources: ChatGPT, Claude, Claude Code, Cowork, Gemini, Google AI Mode search results, Perplexity, Grok, Microsoft Copilot, Wave, Read AI, Fireflies, and Zoom cloud recording transcripts. Several of these are switched off until you enable them, and Zoom cannot sync yet.
The extension's site list is broader than that. It is prepared in advance for additional AI chat, research, meeting, and coding sites, so that support for a new one does not require a new extension release, which browsers would otherwise treat as a permission change that disables the extension until every user re-approves it. Having access to a site is not the same as capturing it. The extension does nothing on a site until the desktop app sends it a command for a source you have enabled, and the list of enabled sources is always visible in the app.
Your Choices and Controls
Seeing Your Data
Everything ChatsRecall holds is visible in the app: every conversation, message, attachment name, project, and index. There is no hidden copy anywhere else.
Deleting Your Data
- Delete one conversation in the app. Where the source allows it, you can delete it there in the same step; the confirmation always says which will happen
- Delete everything by removing the app's database file from its data folder, or by uninstalling the desktop app
- Remove the extension in your browser. Nothing of your archive lives there, so nothing is lost by doing so
- Ask us to delete your email address from our contact database by writing to the address below
Keeping Everything Local
If you never add an API key, nothing about your conversations is ever sent to a model provider, and every other feature keeps working, including search.
Limiting What Is Captured
Turn individual sources off, decline or revoke site permissions in your browser, or simply do not connect an account. Capture only happens for sources that are on.
Data Portability
Your archive is a standard SQLite database in your own user profile, so you can copy it, back it up, or read it with ordinary tools. It is yours.
Security
- Your conversations stay on your device, in your user profile, protected by your operating system's own account protections
- API keys live in Windows Credential Manager; local access tokens are stored only as irreversible hashes
- The local interface binds to your own machine only and requires a scoped token for every request
- The desktop app and the extension talk over Chrome native messaging, a channel no web page can reach
- The extension runs only on its listed sites, and never fetches or evaluates remote code
- Updates are signed, and the app verifies the signature before installing
- Conversation text passed to any model or agent is framed as untrusted data, so text inside a conversation cannot act as an instruction
- ChatsRecall never handles your passwords for any source
ChatsRecall is in beta and provided as is. Keep your own backups of anything you cannot afford to lose.
Children's Privacy
ChatsRecall is not directed to children under 13, and we do not knowingly collect personal information from children.
Changes to This Policy
We may update this policy as the product changes. Any change is reflected in the "Last updated" date at the top of this page.
Contact
Questions about this policy, or about how ChatsRecall handles your data:
- Email support@chatsrecall.com
Summary
Your conversations stay on your computer. ChatsRecall stores them in a database in your own user profile, has no account and no cloud, and collects no analytics of any kind. It reads AI chat sites through a browser you are already signed in to, and only for the sources you switch on. It changes something at a source, such as a title, a pin, or a deletion, only when you click to do it. The one way conversation text leaves your device is the optional AI features, which need an API key you add yourself and send only bounded excerpts to the model provider. Everything else, including search, is local.