Privacy notice
The public post data Saidtree processes, why, who helps us, how long we keep it, and how to ask for deletion.
Last updated Wednesday, September 23
The short version
Saidtree reads public posts from organizations and public voices, keeps as little as it can for as short a time as it can, never stores photos or videos from Meta, never names members of the public, and never sells or shares data. Reading needs no account. You can ask for a copy of your data, or for its deletion, at any time: make a data-rights request.
Public post data we process
- Facebook Pages we track. Through Meta's Page Public Content Access, for each post: its text (up to 5,000 characters), its link and ids, when it was posted and edited, its type, and its reaction, comment and share totals. Never photos, videos or other media, never comment text, and never who commented or reacted.
- Instagram and Threads posts an editor adds, and Facebook posts outside the list we track: the link, the account, the time shown on the post, an editor's note and an optional quote typed by the editor. The post itself is shown only through Meta's own embed, only when you ask for it, and we never store, read or copy what the embed shows.
- The Meta Ad Library. For political and issue ads an editor matches to a tree: spend and impression ranges, the advertiser's own "paid for by" line, dates, platforms and top regions. Nothing about an ad is public until an editor confirms the match.
- The Threads radar, only if you connect your own Threads account: the ids and short codes of the posts your saved searches found, kept 7 days. Their text and usernames are shown to you straight from Threads and are never stored.
Why we process it
To show where a story started, who is carrying it and how well it is sourced. We use post text to group posts into trees, to measure each tree, and to write summaries that are labelled as AI-written and cite the posts they came from.
Who helps us
- Cloudflare hosts Saidtree and runs its database, email and bot checks (Turnstile).
- Anthropic provides Claude, which writes summaries and post labels from the text of public posts by organizations and public voices. It never receives text from members of the public, editor notes, anything you send us, Ad Library data, press headlines or embedded posts. Anthropic acts as our service provider for this work.
We don't sell, license or share data with anyone else, and we don't use it to train AI models.
What we keep about you
- Reading needs no account. Your theme choice, whether you dismissed the Grove's explanation, and which trees you have seen on this device stay in your own browser's storage.
- With an account: your email address, a password hash, the fact that you confirmed you are 16 or over (never your birth year), the trees you tend, when you last visited them, and whether you want the Grove by email.
- What you send us: tips, links you send from "Saidtree a post", reports and requests go to our editors only and are never published.
- Request logs: Cloudflare keeps short-lived logs of requests, and they include page addresses, such as a link pasted into /trace?url= or a search query. The words you type into "Saidtree a post" travel in the request body, never in the address.
Cookies
We set cookies only to keep you signed in and for the age check at sign-up. Posts from Facebook, Instagram or Threads load only after you choose "Show post"; Meta may set its own cookies then.
How long we keep it
| Data | Kept for |
|---|---|
| Facebook Page post text and counts not attached to any public tree | 72 hours |
| Facebook Page post text and counts on branches of public trees | Until the tree retires (180 days after its last branch) or the post is removed |
| Curated typed quotes | 30 days after the tree goes dormant |
| Editor notes | Until the tree retires |
| Press headlines not matched to a tree / matched | 14 days / until the tree retires |
| Embeddings | Same as their item |
| Ad records: confirmed / rejected or unmatched candidates / creative text | Until the tree retires / 30 days / deleted on decision (a hash is kept) |
| Radar hit IDs and shortcodes | 7 days; immediately on disconnect or account deletion |
| Threads tokens | Until disconnect, deletion, a Meta callback, or 90 days of radar inactivity |
| AI run logs | 12 months, with cited text redacted when a post is removed |
| Tips and trace sends / their emails | 90 days after closing / 30 days |
| Error reports / their emails | 12 months after resolution / 30 days after resolution |
| Data-rights requests and takedown notices / their contact details | 3 years after closing / reduced to a salted hash 30 days after closing |
| Meta callback records | 12 months |
| Ingest run records and error text | 90 days |
| Tombstones | 12 months |
| Audit log | 3 years, append-only; holds ids, enums and hashes only, never post text or contact details |
| Suppression hashes | Indefinitely |
| Account data | Until you delete your account |
Members of the public
Private people are never named in our text or in AI text, have no page, and their posts are never sent to AI. Their posts are quoted only in rare cases an editor approves, when they are the only witness to something newsworthy, and never with their handle. An objection from a member of the public is honored within 72 hours by default.
Your rights, and how to request deletion
You can ask for a copy of what we hold about you, for its deletion, or for us to stop using it: make a data-rights request. We answer within 30 days, and within 72 hours for objections from members of the public. When you ask us to stop tracking an account, we add it to a suppression list so it is not added again.
That form is also the data deletion page registered for Saidtree's Facebook app. If you have a Saidtree account you can download your data or delete the account yourself from Account; deletion is immediate.
Changes
We date every change to this notice at the top of the page.