Privacy policy
Effective 18 September 2026. Anything Aloud is designed to read content without creating an Anything Aloud account or sending that content to an Anything Aloud cloud service. This page is the notice required by Articles 13 and 14 of the UK GDPR: what is held, why it is lawful to hold it, how long it is kept, and what you can require to be done about it.
Mac App Store version: Data Not Collected
The Mac App Store copy is sandboxed. It has no analytics, advertising, crash-reporting service, payment service, companion connection or built-in updater. Text and screenshots are processed on your Mac and are not sent to Anything Aloud or another service. Your voice, speed and setup preferences remain on your Mac. Apple handles installation and updates through the App Store under its own privacy policy.
Option-A sends one Command-C keystroke to copy your selection when you allow Accessibility. Quit and reopen the app after granting that permission. Without it, Option-A reads text or a screenshot you have already copied; Services > Read Aloud with Anything Aloud also reads selected text without the permission. No reading content leaves your Mac through any of these routes.
The update-feed and companion-service sections below apply only to the separate website download. The website and support-email sections apply when you visit the site or contact us, including from a link in the App Store copy.
What stays on your Mac
Clipboard text, highlighted text, text recognised from a screenshot or image, and everything the Mac reader window displays or speaks are processed locally when you use the Mac app. They are held in memory whilst the reader has them open. The Chrome and VS Code companions can hand selected text to the Mac app over 127.0.0.1, a loopback address that never leaves this Mac, using a random local token. Their default local engines also keep speech processing on the computer. The customer build does not enable the planned reading-history store, and the reader window refuses macOS window-state restoration, so the Mac app does not write reading content to disk. What macOS itself does around any app it is running, such as keeping a Time Machine copy of your own files, remains the operating system's business rather than Anything Aloud's.
Text recognition runs through the macOS Vision framework on the device. Speech runs through the macOS speech service using a voice already installed on your Mac. Neither needs a network connection, and indeed, the app reads perfectly well with the Mac offline for as long as you like. It makes no licence request, because there is no licence. There is no analytics endpoint, no crash reporter and no Anything Aloud server for reading content to be sent to.
Update checks in the website download only. Unless you switch Check for Updates Automatically off in the speaker menu, this version asks https://anythingaloud.com/updates/appcast.xml for its signed update feed no more than once every twenty-four hours. Choosing Check for Updates... makes the same request immediately. Like any web request, it exposes your IP address and ordinary delivery metadata to Cloudflare, which hosts the feed. Its user-agent identifies the Anything Aloud version and the Sparkle updater version. System profiling is disabled: the request carries no reading content, Mac name, serial number, account name, advertising identifier or hardware profile. If a release is available the app asks before downloading or installing it, and verifies its Ed25519 update signature and Apple code signature before replacement. Automatic installation is disabled. The Mac App Store copy does not contact this feed.
Opening Support hands a web address to your default browser. That request comes from your browser, and contains no reading content. Downloading an Apple voice is likewise a transaction between your Mac and Apple in System Settings, under Apple's own terms; Anything Aloud is not a party to it.
Optional companion services
The website download includes Chrome and VS Code companions; the Mac App Store copy does not include or connect to them. The companions use local speech by default and expose the optional services below. None sends reading content to Anything Aloud Ltd, none is required to use the Mac reader, and a cloud provider is used only when you select that provider and supply or already operate the corresponding account or credential.
- Google Cloud speech. If you explicitly select the Google engine and supply a Google Cloud API key, the text you ask it to speak is sent to texttospeech.googleapis.com for synthesis and is handled under Google's terms. The VS Code companion's automatic mode never selects Google merely because a key is stored.
- OpenAI in VS Code. If you select OpenAI for the optional Explain feature and supply an OpenAI key, the selected passage, your question and the necessary conversation context are sent to api.openai.com under your OpenAI account and its applicable terms.
- Claude through the local command-line bridge. If you select the Claude command-line tool for the optional AI panel, the companion first sends the selected passage and your question over loopback to software running on your Mac. That locally installed Claude tool may then send them to Anthropic under your own Claude account, settings and terms. Anything Aloud Ltd does not receive them.
- Ollama. If you select the local Ollama provider, the passage and question go to the Ollama service on localhost. They do not leave the Mac unless you separately reconfigure Ollama to use a non-local address.
- Google Docs and linked files. Asking the Chrome companion to read an entire Google Doc uses your existing Google session to export a document Google already holds. Opening a linked PDF fetches that file from the site hosting it, as opening the same link normally would.
Content you choose to read
Text, screenshots, images, documents, clipboard content and web pages are processed locally by the Mac app. The shipped local bridge serves the bundled Chrome and VS Code companions but is configured without the planned Recent Reads store, so nothing you read is written to disk and there is nothing to resume from. A recent-reading history is planned for the release that brings the iPhone app, and this page will be updated before it ships. Anything Aloud does not sell reading content nor use it for advertising, and the later iPhone app is being designed around the same local-processing rule.
Capturing highlighted text with Option-A uses the macOS Accessibility permission. The website download asks the frontmost application what is selected and, where that application will not answer, sends Command-C instead. The Mac App Store copy always uses Command-C because its sandbox prevents it from asking for the selection directly. A successful capture leaves the selected text on your Mac's clipboard. Where capture finds nothing, whatever you copied beforehand is restored. Declining permission leaves copied text and screenshots working; the App Store copy also offers the permission-free Services route described above. None of this touches the network.
Planned optional Mac connection
The later iPhone app is planned to send extracted text, titles, playback settings and UTF-16 resume positions directly to a Mac only when you explicitly pair it. The design does not sync the original screenshot, PDF, image or attachment. Tailscale supplies the private network and handles its own account and network metadata under Tailscale's privacy policy.
What the Mac app leaves behind, and how to remove it
Dragging an app to the Bin does not remove all its settings. The sandboxed Mac App Store copy keeps its settings in ~/Library/Containers/com.anythingaloud.mac; after quitting and removing the app, you can remove that folder to clear them. It installs no companions and stores no licence credentials. The separate website download is not sandboxed and can leave the following items:
- Keychain, from an older version only. Anything Aloud 1.0.12 stores nothing in the Keychain. Versions that required a licence stored the key, the provider instance identifier, a random installation label and validation timestamps there, and updating does not remove them. To clear them, open Keychain Access (Applications > Utilities), search for com.anythingaloud.mac-license, then select every item that appears and delete it. Nothing in the current app reads them.
- Preferences. Your chosen voice, reading speed, onboarding state, start-at-login setting, automatic-update-check choice and last update-check time persist in ~/Library/Preferences/com.anythingaloud.mac.plist. macOS caches that file in memory, so the reliable removal is to quit the app and run defaults delete com.anythingaloud.mac in Terminal rather than to delete the file by hand.
- Companions. The Chrome companion is staged at ~/Library/Application Support/Anything Aloud/chrome-extension, and Chrome remembers that unpacked extension until you remove it from chrome://extensions. The VS Code companion is installed into VS Code's normal extension directory and can be removed from VS Code's Extensions view. A random bridge token is stored at ~/.anythingaloud/bridge-token; it contains no reading content.
The planned synced Recent Reads design keeps at most 50 visible extracted documents, with controls to delete individual reads or choose Clear All. Copies inside a Time Machine or iCloud backup follow Apple's normal behaviour and are outside Anything Aloud's reach.
Credentials and security
The phone pairing design uses a short-lived, single-use secret. Each phone will receive its own random credential, stored in the iOS Keychain; the Mac stores only a cryptographic hash. Access can be revoked from the Mac. Anything Aloud never receives your Tailscale or identity-provider password.
Mac App Store purchases and earlier website orders
After launch, new Mac App Store downloads will be paid once through Apple; the app has no in-app purchase, licence key, activation or subscription check and sends nothing to a licence service. This website no longer offers checkout, and its optional Reddit purchase attribution is disabled. Lemon Squeezy may still process records, cancellations, refunds or renewals associated with earlier website purchases under its own notice; if you have an earlier subscription, cancel its renewal through your Lemon Squeezy orders.
Records created whilst the app was sold still exist: the minimal provider event ledger described below, and the order records Lemon Squeezy holds as an independent controller under its own notice. Their retention is set out in the section on purposes.
Website
The marketing website carries no third-party analytics, no ad-network pixel, no signup form and no cookie or localStorage entry set by Anything Aloud. It does use the limited first-party aggregate measurement described below. If you arrive through a recognised campaign link, that link's short source code is copied only into other same-site links whilst it remains in the current page address. It is not added to external, email or on-page links, and it is not a user, account or device identifier. The demonstration keeps the voice and speed you pick in memory for the life of the page, so a later visit starts afresh.
- Two scripts injected by the hosting provider. Cloudflare, which serves and protects the site, inserts its email-address decoder and its JavaScript-detection bootstrap into pages at the edge; the latter creates a hidden one-pixel frame in order to tell a browser apart from a bot. They are Cloudflare's rather than Anything Aloud's, they are served from this same domain, and they exist in order to keep the site standing rather than to profile you. Cloudflare's own privacy policy governs how it handles what they observe.
The optional browser demonstration passes the visible sales copy to the speech engine exposed by your browser; nothing is sent to Anything Aloud, although your browser or operating-system provider controls how that voice is processed. It keeps daily aggregate counts of an engaged landing visit, starting the demonstration, seeking within it, and pressing the download button. An engaged visit is counted only after the page has been visible for five seconds and you have interacted with it. Each count contains only the date, event, page route, recognised campaign source or the word direct, and a total. Anything Aloud does not copy visitor IP addresses, browser identifiers or a per-visitor event history into that database, whereas the hosting provider does process ordinary request metadata, your IP address included, in order to deliver and secure the site.
Purposes, lawful bases and how long each is kept
Anything Aloud Ltd is the controller for the processing set out here. Each purpose below names the lawful basis it relies on under Article 6 of the UK GDPR, because a purpose without a basis is not a lawful purpose.
- Offering signed app updates. Data: the request metadata Cloudflare necessarily processes in order to serve the update feed and archive, including your IP address, together with the Anything Aloud and Sparkle versions in the user-agent. Lawful basis: Article 6(1)(f), legitimate interests in delivering security and compatibility updates through a verifiable signed channel. Anything Aloud does not copy those requests into its database or build a profile from them. The automatic request can be disabled in the app.
- The minimal event ledger for earlier purchases. Data: provider event, subscription, order and licence identifiers, each with a status and timestamp. The site may still receive provider notifications concerning those purchases. Lawful basis: Article 6(1)(f), legitimate interests in maintaining an accurate operational audit trail and resolving any dispute about an order placed at the time. Retention: no automatic deletion schedule is currently applied to these minimal rows; they are retained only whilst needed for replay protection, audit, dispute resolution or a legal obligation, then deleted or anonymised. The ledger holds no names, email or postal addresses or IP addresses, and identifies a person only through the provider that issued the identifiers.
- Measuring whether the website and its advertising work. Data: daily totals grouped by event, page route and recognised campaign source, with no visitor identifier or IP address copied into the commerce database. Lawful basis: Article 6(1)(f), legitimate interests in finding broken steps on the way to a download and understanding which pages help people find the app. Rows older than twenty-four months are removed when the next aggregate event is recorded; if the site records no further event, deletion waits for the next maintenance run. The short campaign code travels only in same-site addresses and forms as described above; the site does not store it in the browser.
- Keeping the site standing. Data: request metadata processed by the hosting provider, IP addresses included. Lawful basis: Article 6(1)(f), legitimate interests in serving the site and the download and in refusing abusive traffic. The processing is limited to what that needs, no profile is built from it, and it is the sort of protection a visitor would expect a site to have.
- Answering support, privacy and security email. Data: whatever you choose to put in the message. Lawful basis: Article 6(1)(f), legitimate interests in replying to somebody who took the trouble to write in. Kept for twenty-four months from the last message in the thread, and longer only where a dispute or a legal obligation requires it.
No special-category data under Article 9 is sought, and none is knowingly held. Nothing here rests on consent, because nothing here asks for any. Where a legitimate interest is relied upon you may object, as set out below.
Who else is involved, and transfers outside the UK
Cloudflare hosts, serves and protects the website, the download and the measurement database. Apple supplies on-device text recognition and speech, downloadable voices, and App Store installation and updates under its own privacy policy. Whichever provider carries the company's email necessarily handles a message you send to one of the addresses on this page and is used for nothing else. No data is sold, and nothing goes to an advertising network.
Lemon Squeezy was the merchant of record whilst the app was sold and still handles those orders as an independent controller under its own notice at lemonsqueezy.com/privacy. The current Mac app does not contact it. Accessing an old receipt download may still cause the website to check the order with Lemon Squeezy.
Where Anything Aloud Ltd is itself the transferring party, it relies on the safeguards in Article 46 of the UK GDPR as supplied by the provider's current data-processing terms: the UK International Data Transfer Addendum to the European Commission's standard contractual clauses, or an adequacy regulation covering the recipient where one applies. A copy of the relevant terms can be requested at privacy@anythingaloud.com.
Your rights
With regard to the data described above, you have the right to: 1- be told what is held and be given a copy of it (access, Article 15); 2- have inaccurate data corrected (rectification, Article 16); 3- have data deleted (erasure, Article 17); 4- have its use restricted whilst a dispute is resolved (restriction, Article 18); 5- receive the data you provided in a portable, machine-readable form and have it sent onwards where that is technically feasible (portability, Article 20); and 6- object to processing carried out on the legitimate-interests basis (Article 21). None of these costs anything to exercise, and a reply is due within one month.
Write to privacy@anythingaloud.com. A request is answered even where it cannot be granted, and the reason is given. Note two honest limits: what sits on your own Mac is under your control rather than the company's, hence the removal instructions above; and where the data you want is checkout data from the period when the app was sold, Lemon Squeezy holds it as its own controller and the request has to go to it, so this address will say so and point you at the right route rather than leave you waiting.
If the answer does not satisfy you, you may complain to the supervisory authority. In the United Kingdom that is the Information Commissioner's Office, Wycliffe House, Water Lane, Wilmslow, Cheshire, SK9 5AF; telephone 0303 123 1113; ico.org.uk/make-a-complaint. Complaining to the ICO takes away no other legal remedy.
Whether you have to provide any of this
There is no statutory or contractual obligation to give Anything Aloud anything whatsoever, and nothing is asked for. The website can be browsed, and the demonstration used, without providing anything at all. There is no account to create, and no personal data is required in order to install the app.
No decision producing a legal or similarly significant effect is taken about you by automated means, and no profiling is carried out, within the meaning of Article 22.
Children, changes and contact
Anything Aloud is not directed at collecting personal information from children. Material policy changes will be dated on this page. Privacy and deletion questions can be sent to privacy@anythingaloud.com.
Controller and company details
Anything Aloud Ltd is responsible for the Anything Aloud app and website processing described here. Company number 17390985; registered in England and Wales; registered office: 71–75 Shelton Street, Covent Garden, London, WC2H 9JQ, United Kingdom.
Anything Aloud Ltd is established in the United Kingdom, and thus Article 27 of the UK GDPR, which requires a representative of a controller established outside the United Kingdom, does not apply to it. Insofar as the EU GDPR reaches the company through the app being offered to people in the EEA, the processing the company carries out itself is occasional, involves no special-category or criminal-offence data, is limited to pseudonymous provider identifiers and is unlikely to result in a risk to anybody's rights and freedoms; it therefore falls within the exemption in Article 27(2)(a), and no EU representative has been appointed. This position is reviewed as the customer base changes. No data protection officer is required under Article 37, and privacy questions are handled at the address above.