Privacy
Privacy
Last updated 2026-06-25.
GaitherNews is a personal project. The privacy practices are listed here in plain language. Short version: there are no accounts, the reading state stays in your browser, and three small services run in the background for analytics and error reporting (skipped automatically if your browser sends Global Privacy Control).
What the site collects automatically
Three small services run in the background on every page.
- Google Analytics 4: counts page views and traffic sources. Aggregate numbers only.
- Microsoft Clarity: heatmaps and anonymized session replays so we can see where the UI confuses people. Text in any input fields is masked by default.
- Sentry: JavaScript error reports. Only fires when something on the page actually breaks.
If your browser sends the Global Privacy Control signal, we skip all three (see "Your privacy controls" below).
Google Analytics and Microsoft Clarity set first-party cookies for the services above. No other cookies are set.
Local storage
The site stores reading preferences and lightweight UI state in your browser's localStorage. Nothing leaves your device. Keys in current use:
gn-theme— theme preference (auto, light, dark, colorblind, retro, 80s retro).gn:fontSize— text-size preference (normal, large, xlarge).gn:viewed— set of event ids you've scrolled past (powers "Hide read").gn:hideViewed— whether Hide-read is on.gn:seenSince+gn:readMode— "Mark all read" tri-state.gn:saved— set of event ids you've hearted.gn:flagged— flags you've filed against cards.gn:catHidden:<kind>— per-kind set of categories you've eye-deactivated.gn:catOrder:<kind>— per-kind drag-reordered chip sequence.gn:catPage:<kind>— per-kind active-vs-inactive page state.gn:catsDrawerOpen— mobile drawer open/closed.gn:chipNumMode:<kind>:<category>— per-chip unread vs total count toggle.gn:sortMode— sort cycle on the random/sort button.gn:weatherLoc— weather widget location (defaults to Port Charlotte, FL).
What we do not collect
- No accounts, no email collection, no contact form.
- No third-party advertising networks, no remarketing pixels, no behavioral advertising.
- No sale of any data.
- No tracking across other sites.
Per-event view counter
The site stores a per-event aggregate view count (an integer column on each event row) so the home page can show a "N views" pill on popular cards. The counter is incremented client-side via a fire-once-per-session HTTP POST. It records no IP address, no user agent, no session identifier, only the event ID.
Flag-an-issue
When you flag a card the server records the event id, the reason you picked, and a coarse fingerprint of the report (no IP, no user agent). The fingerprint exists only to dedupe identical flags from the same browser; nothing about you is stored alongside it.
Images and external links
Article preview images are hot-linked from the original publishers using referrerpolicy="no-referrer". Wallpapers and hero photos are re-hosted on a Cloudflare R2 bucket under our control. Links to outlet stories open the publisher's site directly in a new tab and are subject to that publisher's own privacy policy.
Weather widget
The optional weather widget fetches forecasts from the Open-Meteo public weather API. Your selected location (defaults to Port Charlotte, FL) is sent in the request URL. Open-Meteo is a free, ad-free weather service that does not require an API key.
Third parties
- Cloudflare: hosts the Worker, D1 database, and R2 bucket. Privacy policy.
- Anthropic: the synthesis and analysis pipeline calls Claude (Haiku and Sonnet) for per-article scoring, clustering synthesis, and on-demand analysis layers. Only the article text and metadata are sent. Your browsing behavior is not sent. Privacy policy.
- Google Analytics: Privacy policy · opt-out extension.
- Microsoft Clarity: Privacy statement.
- Sentry: Privacy policy.
- Open-Meteo: Terms and privacy.
Your privacy controls
We don't show a cookie banner. Instead, the page reads your browser's Global Privacy Control signal. If your browser sends it, we automatically skip Google Analytics, Microsoft Clarity, and Sentry.
Global Privacy Control is on by default in Firefox, Brave, and DuckDuckGo. For Chrome, Safari, or Edge, the EFF Privacy Badger extension turns it on.
Children
This site is intended for an adult news audience and is not directed at children under 13.
Changes
If we change what the site collects, we will update this page. The "Last updated" date at the top reflects when the substance changed.
Contact
Questions: gaither.stephens@gaitherdyn.com. See also the terms of use.