Privacy Policy
Last updated: 6 September 2026
Focus Wall is a distraction blocker for Mac and Windows (a menu bar and system tray app) and for iPhone, published by Sandy Intelligence Inc. ("we", "us"). This policy explains what data the apps handle, where it lives, and what it is used for. Plain English, no dark patterns.
The short version: what you block and what you actually open stays on your device. If you sign in, a small set of account data (your email, your block list and settings, which devices are linked and whether they are blocking, and your Pain Tax settings and charges) is stored on our servers so your devices share one wall. We never sell data and we run no advertising.
1. Data stored on our servers when you sign in
Signing in is by email code. Once signed in, the following is stored against your account in our database (hosted by Supabase in the United States, protected by row-level security so only your own account can read your rows):
- Your email address and an account identifier
- Your devices: an identifier we generate per install, the device model, the app version and when it was last seen, so the Devices tab can show them
- Each device's blocking state: whether a block is running, when it ends, and whether it is locked by a Pain Tax stake
- Your block list, service packs, schedule and calendar keywords, so every device blocks the same things
- Your Pain Tax settings: whether it is on, the stake amount, the cool-down and daily cap, and the brand and last four digits of your saved card (never the card number)
- Your Pain Tax charge history: amount, date and what was lifted
- Your plan (free or Pro) and how it was purchased: a Stripe customer reference for web purchases, or an Apple subscription reference and its expiry for App Store purchases
This data exists only to run the product for you. It is not used for advertising, not sold, and not shared with anyone except the processors named in this policy (Supabase for hosting, Stripe and Apple for payments, PostHog for the anonymous analytics described in section 6).
2. Data that stays on your device
2.1 Mac and Windows
- The hosts file entries that enforce your block list
- Your local focus session history (start time, duration, how it ended)
- Google Calendar OAuth tokens (section 3), stored in an encrypted store at
~/Library/Application Support/focus-wallon macOS and%APPDATA%\focus-wallon Windows - Your optional settings password (hashed, never stored in plain text)
2.2 iPhone, and Screen Time
On iPhone, Focus Wall blocks apps and websites through Apple's Screen Time framework (FamilyControls, ManagedSettings and DeviceActivity). You authorise it once, for your own device. Everything that framework touches stays on the phone:
- Which apps and categories you chose to shield. Apple hands the app opaque tokens for your choices; we cannot read them, and they are never uploaded
- Your app usage. The doomscroll radar's time limits are enforced by iOS on the device; we never see what you open, how long you use it, or what you browse
- Your local session log, used for the Stats tab on that phone
- Google Calendar OAuth tokens, kept in the iOS Keychain
Focus Wall is a self-blocking tool. It is not a parental control product and cannot manage anyone else's device.
3. Google Calendar integration (Google user data)
Focus Wall offers an optional feature that automatically starts blocking during calendar events you have labelled with focus keywords (for example "Deep Work" or "Focus"). To do this it requests the https://www.googleapis.com/auth/calendar.readonly scope via Google OAuth 2.0. The following describes how Focus Wall accesses, uses, shares, stores, protects, retains and deletes your Google user data, in compliance with the Google API Services User Data Policy, including the Limited Use requirements.
3.1 Data accessed
- The title (summary) of events on your primary calendar
- The start and end times of those events
Access is limited to your primary calendar within a rolling 7-day forward window. Focus Wall does not access event descriptions, attendees, locations, meeting links, attachments, recurrence rules, other calendars, contacts or any other Google product data. It never creates, modifies or deletes events.
3.2 Data usage
Event titles and times are used for one purpose: matching titles against the keyword list you configure, then starting blocking five minutes before a matched event and stopping it when the event ends. Matched events are shown in the app as upcoming blocks so you can preview or skip them. Google user data is not used for advertising, for training machine-learning models, or for any other purpose, and is not reviewed by our staff except with your explicit consent, to investigate abuse, or to comply with applicable law.
3.3 Data sharing
Calendar reads happen directly between your device and Google over HTTPS. Event data is never sent to our servers, never shared with any third party, and never included in analytics, diagnostics or support emails. The only calendar-related data that leaves your device is the list of keywords you typed, which syncs between your own devices as part of your settings (section 1).
3.4 Storage and protection
OAuth tokens are stored on your device only: in an encrypted store on Mac and Windows, and in the Keychain on iPhone. Event titles and times are held in memory for the current 7-day preview and the scheduled blocks derived from them, and are discarded when the app quits or the window rolls forward.
3.5 Retention and deletion
Google user data is retained for at most 7 days, the preview window. Disconnecting your Google account in the app (Calendar settings, Disconnect) revokes the tokens and clears cached events and calendar-derived blocks immediately. You can also revoke Focus Wall at myaccount.google.com/permissions; the app detects this on its next poll. Because no calendar data is held on our servers, there is no server-side copy to delete.
3.6 Limited Use
Focus Wall's use and transfer of information received from Google APIs adheres to the Google API Services User Data Policy, including the Limited Use requirements.
4. Payments
4.1 Stripe (web and Pain Tax)
Pro subscriptions bought on focuswall.co, and the card you save for Pain Tax, are processed by Stripe. Card details are entered on Stripe's own pages (on iPhone, inside an in-app Safari view) and never reach our apps or servers. We store your Stripe customer reference, a saved payment method reference, and the card brand and last four digits so the app can show which card a stake would be charged to.
4.2 Apple In-App Purchase (iPhone)
On iPhone, Focus Wall Pro is sold as an auto-renewable subscription through Apple. Apple handles the payment under its own privacy policy; we never see your payment details. Our server receives a signed transaction from Apple containing the product, a subscription identifier and its expiry date, which we store against your account so Pro is unlocked on every device you sign into. Manage or cancel the subscription in your Apple ID settings.
4.3 Pain Tax charges
Pain Tax is opt-in. A stake is only ever charged after you confirm a lift on a screen that shows the exact amount and card. Charges go to Sandy Intelligence Inc.'s Stripe account; Stripe emails the receipt. Your charge history is stored against your account and shown in the app. You can switch Pain Tax off and remove your saved card at any time from the Pain Tax tab.
5. Licence validation
If you are on Pro, the app validates your licence key against our API, which checks your subscription status with Stripe or, for App Store subscriptions, against the expiry Apple reported to us. The request carries the licence key only.
6. Analytics and diagnostics
The iPhone app sends anonymous product usage events to PostHog (for example that the app was opened or a session was started) under a random per-install identifier. These events carry no email, name or account identifier and are used only to understand which features are used. There is no advertising SDK and no tracking across other apps or websites. The iPhone app includes a crash-reporting library that is currently switched off; if we enable it, this policy and the App Store privacy label will say so. The Mac and Windows apps send no analytics.
7. Security
All traffic uses HTTPS. Server data is protected by row-level security, so a signed-in account can only read and write its own rows. Card numbers never touch our systems.
8. Retention and deletion
Account data is kept while your account exists. Delete your account at any time from the app (Settings, Account, Delete account). That removes the account, its devices, settings, blocking state and Pain Tax records from our servers immediately and asks Stripe to delete your customer record. You can also email info@sandyintelligence.comfrom the address you signed in with and we do the same within 30 days. App Store subscription records are held by Apple under Apple's policy.
To remove local data:
- Mac and Windows: disconnect Google Calendar, disable Pain Tax, quit the app, delete the application-support directory named in section 2.1, then uninstall
- iPhone: delete the app. iOS removes its Screen Time settings and local data with it. You can also revoke Screen Time access at any time in Settings, Screen Time
9. Children
Focus Wall is not directed at children under 13 and we do not knowingly collect data from children.
10. Changes to this policy
When we update this policy the date at the top changes. Material changes are announced in the app.
11. Contact
Questions? Email info@sandyintelligence.com. Focus Wall is operated by Sandy Intelligence Inc.