Privacy Policy
Last updated May 26, 2026
The short version
StopSlouching uses your webcam to detect your posture. The video and the pose-detection inference both run entirely on your device. No video frames, images, or landmarks are uploaded anywhere. You can verify this yourself by opening your browser's Network tab while using the app.
What we collect
- Account: if you sign in, your email address and authentication provider (Google or magic link).
- Subscription: if you upgrade to Pro, our payment processor Paddle handles your card details. We only see your Paddle customer ID, plan tier, and billing-period dates.
- Server logs: standard request logs from Vercel (IP, user agent, path) for security and abuse prevention. Retained 30 days.
What we never collect
- Webcam video frames or images
- Pose-detection landmarks (computed and discarded locally)
- Payment card details (handled by Paddle as merchant of record)
- Biometric face data of any kind
Cookies, analytics & advertising
Marketing and legal pages use the trackers listed below. None of these load on /app— the posture coach stays cookie-free so the “nothing leaves your machine” promise holds. Aside from the two cookieless tools (Vercel Analytics and Aftermark, both cookie-free and ID-anonymized), every tracker below only loads after you explicitly accept cookies via the consent banner. You can revoke at any time by clearing your browser's site data for stopslouching.app.
- Vercel Analytics — page-view counts, referrers, and aggregate country-level breakdown. Cookieless and ID-anonymized; loads without consent because it does not place trackers on your device.
- Aftermark — lightweight page-view analytics (visit counts, referrers, which pages are viewed). Cookieless: it sets no cookies or cross-site identifiers, so it loads without consent on the same basis as Vercel Analytics. Never loaded on
/app. - Google Analytics 4 — page views, navigation paths, traffic sources. Drops first-party cookies (
_ga,_ga_*) when loaded. Gated behind cookie consent. - Microsoft Clarity — session recordings and heatmaps to help us understand UX problems. Records the rendered page (clicks, scrolls, rage-clicks) but masks form inputs by default. Drops first-party cookies (
_clck,_clsk). Gated behind cookie consent and never loaded on/app. - Reddit Pixel + Conversions API — ad attribution for our Reddit campaigns. Drops
_rdt_uuidand_rdt_cidfirst-party cookies, and (only on a successful Paddle subscription) sends a server-side event to Reddit with your hashed email and a hashed external ID. Both sides are gated behind cookie consent: if you reject, no pixel script loads AND the server-side event is not fired.
For an explicit do-not-track preference: reject the cookie banner, or install a browser extension like uBlock Origin / Privacy Badger which independently blocks these trackers.
Third-party processors
- Supabase — auth + database. Hosts your account and your subscription state. Posture data never reaches Supabase — it lives in your browser.
- Paddle— payment processing and merchant of record. Handles checkout, taxes, and refunds. Receipts will show “ScreenPulse” as the seller — see the contact section below.
- Vercel — application hosting and cookieless analytics (see above).
- Google AI / MediaPipe — pose-detection model loaded from a CDN at first use, then cached locally. The model runs in your browser; no data leaves your device through this dependency.
- Crisp — live-chat widget on marketing pages and the account page only. Loaded on demand; not loaded on the posture coach at
/app. Crisp stores chat transcripts and a session ID per visitor. - Google & Microsoft & Reddit — analytics + advertising vendors (see the Cookies section above). Each only receives data when you accept cookies.
Chrome extension
The Chrome extension uses the same on-device pose-detection pipeline as the web app. The extension does not read web page content, browsing history, or any data from tabs the user visits; it only renders its own posture overlay and stretch prompt. The host and scripting permissions it requests are used solely to draw that overlay on the page you're already viewing — never to read or transmit page data.
Your rights
To export or delete your account data, email contact@screenpulse.shop and we'll action the request within 30 days. If you have an active subscription, cancel it via the Paddle customer portal first; subscription state is otherwise removed alongside the rest of your data.
Contact
StopSlouching is operated by ScreenPulse. For questions, data requests, or anything privacy-related, email contact@screenpulse.shop.