Privacy Policy
Last updated: 28 October 2026
SafeAgree reads a legal document you give it and returns a plain-English summary written by an AI model. This page explains, feature by feature, what happens to your data when you use the website at safeagree.org and the SafeAgree browser extension. It is written to match what the software actually does.
1. Who is responsible
The service is operated by Lucas Mari Dreyer, an individual based in Brazil, who is the controller of the personal data described here. Brazil's Lei Geral de Proteção de Dados (LGPD, Law 13.709/2018) applies. If you are in the European Economic Area or the United Kingdom, the GDPR also applies to you. You can reach the controller at contato@safeagree.org.
2. What we process, and why
Analyzing a document
- What we receive: the text of the document you paste, upload or link to; the model you picked; the summary language; whether the deep-scan pass is on; and how the text was provided (paste, upload or URL).
- What happens to it: the text is split into numbered passages and sent to the AI provider that serves the model you picked (see section 3). If deep scan is on, the same text is sent a second time to the same provider, together with the first summary, for a verification pass. Only the first 40,000 characters of a document are analyzed with a premium model, and the first 15,000 with a free model; the page tells you when a document was cut.
- What we keep: nothing. The text and the summary exist in the server's memory only while your request runs. We do not store documents, summaries or anything that identifies you with a request. After each analysis a few aggregate counters are updated (see "Usage statistics" below).
- Legal basis: performance of the service you asked for (LGPD art. 7, V; GDPR art. 6(1)(b)).
Uploading a file
- What we receive: the file you upload (PDF, TXT, MD or HTML, up to 10 MB).
- What happens to it: the file is parsed in the server's memory to extract its text and is never written to disk. The extracted text is returned to your browser. It reaches an AI provider only when you then click Analyze.
- What we keep: nothing. Legal basis: performance of the service.
Fetching a URL
- What we receive: the web address you enter.
- What happens to it: our server requests that page, extracts the readable text and returns it to your browser. The owner of that page sees a request from our server, not from you. It reaches an AI provider only when you then click Analyze.
- What we keep: nothing. Legal basis: performance of the service.
Buying Pro credits
- Checkout: payment takes place on Stripe's own pages. Stripe collects your card details, email address and billing information under Stripe's privacy policy. The service never receives your card number.
- Your Stripe customer record: your first purchase creates a customer record in our Stripe account, holding the email address you entered at checkout. Later purchases made with the same key are added to it. We store one more thing there: a count of the credits you have spent, which our server updates after each premium analysis that finishes. Your balance is worked out from that count and your purchases.
- Issuing your key: when Stripe sends you back to the site, our server asks Stripe whether that checkout session was paid and, if it was, issues your Pro key. The key is a signed token that encodes the Stripe customer identifier (or, for a lifetime unlock bought earlier, the checkout session identifier) and the time it was issued. It contains no email address, name or card detail. Your browser stores it (see section 5).
- Checking your balance: when you use credits or the site shows your balance, our server reads your purchases and spent count from Stripe and keeps the resulting numbers in memory, against your Stripe customer identifier, for up to 30 seconds. They are never written to disk.
- Payment records: Stripe keeps the record of your payment, including the email address you entered at checkout, and we can see that record in our Stripe account. We do not copy it anywhere else.
- Legal basis: performance of the purchase contract (LGPD art. 7, V; GDPR art. 6(1)(b)) and compliance with tax and accounting obligations for the payment record (LGPD art. 7, II; GDPR art. 6(1)(c)).
Restoring a lost Pro key
- What we receive: the email address and the last four digits of the card you type into "Lost your key? Restore it".
- What happens to them: our server searches the paid checkout sessions in our Stripe account for those made with that email address and paid with a card ending in those digits and, if it finds any, issues a new key covering them. The card digits are what stop someone who only knows your email address from taking your credits. Both are used only for that lookup and are not stored by us.
- Legal basis: performance of the purchase contract.
Rate limiting and abuse prevention
- What we process: your IP address, together with the times of your recent analysis, upload, URL and key-restore requests.
- Why: to enforce a per-hour limit per IP address and a daily limit on free analyses, so that one visitor cannot exhaust the free quotas for everyone else, and a tighter per-hour limit on key restores, so that nobody can guess the card digits that go with someone else's email address.
- What we keep: the addresses live only in the server's memory, are dropped after one hour, and are lost entirely when the server restarts. They are never written to disk.
- Legal basis: our legitimate interest in keeping the service available and within the providers' quotas (LGPD art. 7, IX; GDPR art. 6(1)(f)).
Usage statistics
- After each analysis the server increments in-memory counters: the model and provider that answered, the tier (free, Pro or owner), the summary language, how the text was provided, the number of characters and passages, whether deep scan ran, and the risk verdict of the summary. No document text, no summary text, no IP address and no other identifier is recorded.
- These counters are visible only to the operator on a private page and are reset whenever the server restarts. No third-party analytics service is used.
- Legal basis: legitimate interest in understanding how the service is used (LGPD art. 7, IX; GDPR art. 6(1)(f)).
Hosting
The website and its API run on Railway, a hosting provider in the United States. Like any host, Railway may keep standard connection logs, which can include IP addresses, for the operation and security of its platform. See Railway's privacy policy.
3. AI providers and other processors
The document you submit is processed by one of the providers below, depending on the model you pick.
| Tier | Provider | Their privacy terms |
|---|---|---|
| Free | Groq | groq.com/privacy-policy |
| Free | Cerebras | cerebras.ai/privacy-policy |
| Free | Google (Gemini API) | policies.google.com/privacy and Gemini API terms |
| Free | Mistral AI | legal.mistral.ai/terms/privacy-policy |
| Free | OpenRouter | openrouter.ai/privacy |
| Premium | Anthropic (Claude) | anthropic.com/legal/privacy |
| Premium | OpenAI (GPT) | openai.com/policies/privacy-policy |
Free models can switch provider. If the free provider you picked fails before it starts answering, the request is sent to the next free provider that is configured, and the page tells you which model actually answered. Because of this, we cannot promise in advance which of the free providers will process a given document. Premium requests are never switched.
Each provider processes your text under its own terms. OpenRouter forwards the request to the model host it selects. Some providers' free tiers allow the provider to retain prompts or use them to improve their models; read the linked terms before submitting anything sensitive. Anthropic and OpenAI state that content sent through their APIs is not used to train their models by default. Do not submit documents that contain other people's personal data, or anything confidential, unless you are entitled to share them.
Other processors: Stripe (payments) and Railway (hosting). We use no advertising networks and no analytics services.
4. International transfers
The AI providers, Stripe and Railway are located in the United States. Your document, your IP address and, for purchases, your payment details are therefore transferred outside Brazil and, for visitors in the EEA or the UK, outside those areas. We rely on the contractual commitments in each provider's published terms for these transfers (LGPD art. 33; GDPR chapter V). If you want details about the safeguards that apply to a specific transfer, write to us.
5. Data stored in your browser
The website sets no cookies. It uses your browser's local storage for the following keys, all of which stay on your device and are never sent to us except as described above:
| Key | Storage | What it holds |
|---|---|---|
safeagreeTheme | localStorage | Light or dark theme |
tosLang | localStorage | Interface language |
tosDeepScan | localStorage | Whether the deep-scan pass is on |
tosProToken | localStorage | Your Pro key, sent with your requests so the server can recognise the Pro tier |
tosAppPassword | sessionStorage | The operator's password, only if you entered one; cleared when the tab closes |
Clearing your browser's site data removes all of these, including your Pro key. Keep a copy of the key somewhere safe, or restore it with your email address and card digits. Stripe's checkout pages set their own cookies on Stripe's domain while you pay.
6. The browser extension
The SafeAgree extension for Chrome and Firefox summarizes the terms page you are looking at. It works in one of two modes, chosen on its Options page.
- Hosted mode (the default): when you click the toolbar icon, the extension reads the text and title of the current page inside your browser. Only the text (or the part of it you selected, or text you pasted) is sent to the backend address configured in Options, which is safeagree.org unless you changed it, together with your app password or Pro key if you saved one. The page's address is not sent. Everything in sections 2 to 4 then applies to that text.
- Bring-your-own-key mode: the text is sent directly from your browser to the provider you chose (Groq, OpenAI or Anthropic) using your own API key. Nothing is sent to safeagree.org in this mode.
- Storage: your settings, your API key and your Pro key are kept in the extension's local storage (
chrome.storage.local) on your device. They are never synced to a cloud account. - Permissions:
activeTabandscriptingto read the current page when you click the icon;storagefor the settings; host permissions for safeagree.org and the Groq, OpenAI and Anthropic APIs so the requests above can be made; and an optional permission for other sites that is requested only if you point the extension at a custom backend address. - The extension collects no analytics and makes no other network requests.
7. How long data is kept
| Data | Kept for |
|---|---|
| Document text, summaries, uploaded files, URLs, and the email and card digits used to restore a key | The duration of the request only. Never stored. |
| Your credit balance, as read from Stripe | Up to 30 seconds in memory, and at most until the next server restart. |
| IP addresses for rate limiting | Up to one hour in memory, and at most until the next server restart. |
| Usage counters | In memory until the next server restart; daily totals for at most 90 days. |
| Payment records and your Stripe customer record, including the count of credits spent | Under Stripe's own retention rules, and by us in our Stripe account for as long as tax and accounting law require. |
8. Your rights
Under LGPD article 18 you may ask us to confirm whether we process your personal data, to give you access to it, to correct it, to anonymise, block or delete it, to provide it in a portable format, to tell you who we have shared it with, and to stop processing that was based on consent. Under the GDPR you have the equivalent rights of access, rectification, erasure, restriction, portability and objection, and the right not to be subject to automated decisions with legal effects (we make none).
To exercise any of these rights, email contato@safeagree.org. We will answer within the time the law allows, and we may ask you to confirm the email address a payment was made with before acting on it. Because we keep no document text and have no accounts, in practice the only personal data we can find is the payment record and customer record in Stripe, and that is what a request will usually concern.
You may also complain to a supervisory authority: in Brazil, the Autoridade Nacional de Proteção de Dados (gov.br/anpd); in the EEA or the UK, the authority of the country where you live.
9. Children
The service is not directed to people under 18 and we do not knowingly process their personal data. If you believe a child has used it and sent us personal data, write to us and we will help.
10. Changes to this policy
When the service changes in a way that affects your data, this page is updated and the date at the top changes. Check it again from time to time; the date tells you whether anything has changed since you last read it.
11. Contact
- Controller
- Lucas Mari Dreyer, Brazil
- contato@safeagree.org