Your reading data belongs to you.

Effective 1 March 2026 · Last updated 19 October 2026 · Version 1.12

The short version. If you use Foxed for free, your entire library stays on your device and never leaves it without your consent. We don't sell your data, and your books, ratings and reading history are never shared with advertisers — that's true across every plan, including Premium with cloud sync on. Free users see ads from Google AdMob, which uses your device's advertising identifier and basic device information; ads are only personalised if you agree. Cloud sync happens only if you choose Premium and explicitly enable it.


01 · Who we are

Foxed is a reading tracker application for iOS and Android, owned and operated by Rebecca Brown, trading as "Foxed", a sole trader based in the United Kingdom. Where this policy says "Foxed", "we", "us" or "our", it means the individual data controller responsible for your personal data.

For the purposes of the UK GDPR and the Data Protection Act 2018, we are the data controller — we decide how and why your personal data is processed.

We are registered with the UK Information Commissioner's Office (ICO), registration number ZC166256. You can verify this on the ICO register.


02 · What data we collect, and why

DataWhoWhere storedPurpose
Book library, ratings, shelves, notes, reading sessionsAll usersYour device (SQLite). If you turn on cloud sync (Premium), a copy is also kept in Cloud Firestore (see the cloud copy row below)Core app functionality
App settings and preferencesAll usersYour device. If you turn on cloud sync (Premium), your display name and your "Count rereads towards goal" setting are also copied to Cloud Firestore. Everything else, such as your theme, your Month in Books colour and your consent choices, stays on your device onlyRemembering your display name, theme, defaults, consent choices
Beta-testing email address and preferred test platformPeople who sign up for beta testing on getfoxed.appMailjetSending the relevant beta-testing invitation, feature previews and occasional feedback requests
One-way hash of IP addressPeople submitting the waitlist formCloudflare Durable ObjectsRate-limiting the form and preventing abuse
Email addressPremium onlyFirebase AuthenticationAccount login for cloud sync
Book library, earned badges (with the date each was earned), your display name and reading-goal setting (cloud copy)Premium with sync onCloud FirestoreCross-device sync and backup
Crash reports (error code and the place in the app it came from)All usersFirebase CrashlyticsIdentifying and fixing bugs. On by default — turn off in Settings → Privacy → Send crash reports
Installation identifier (a random ID for this install of the app)Premium users who enable syncCloud FirestoreRecording which install deleted a synced book, so a deletion isn't undone by another device
Anonymous app usage analytics, including subscription events (trial started, renewed, cancelled)Opted-in onlyFirebase AnalyticsApp improvement — off by default. Turn on or off in Settings → Privacy → Share app usage data
Advertising identifier (IDFA / GAID) and device informationFree usersGoogle AdMobServing and measuring native ads. The identifier is only used for personalised ads if you consent.

What we do not collect: location, contacts, microphone data, financial information, or the specific book titles and reviews you log — those never appear in an analytics event.


03 · Legal bases for processing

GDPR requires a lawful reason — a "legal basis" — before we process any personal data. Think of it as a permission slip.

Processing activityLegal basisWhat this means
Storing your book library locallyLegitimate interestsThis is the core purpose of the app
Crash reportingLegitimate interestsFixing crashes benefits all users. Reports are stripped to the error code before they are sent, but may still be linked to you indirectly, so we treat them as pseudonymous rather than anonymous. You can object at any time by turning them off in Settings
Account creation and cloud syncConsent + contractYou explicitly agree when upgrading to Premium
Installation identifier for cloud deletionsContractNeeded to make cloud sync work correctly: without it, a book you delete on one device can be restored by another
Beta-testing emailConsentYou ask us to contact you about beta testing by signing up; you can unsubscribe at any time
Waitlist abuse preventionLegitimate interestsProtecting the form and mailing list from automated or excessive sign-up attempts
Usage analyticsConsentAsked before enabling; off by default
Personalised advertisingConsentVia Google's consent framework; you can decline

04 · Third-party services

Google / Firebase — Firebase Authentication, Cloud Firestore, Crashlytics and Analytics. Cloud Firestore keeps your cloud copy in UK/EU data centres (see section 05). Firebase Authentication is a global Google service, so your email address and the scrambled form of your password may be processed outside the UK/EU under Google's standard safeguards (international data transfer agreements). Transfers to the US are made under Standard Contractual Clauses. Firebase privacy policy

Google AdMob — free-tier users may see native ads in Foxed. Premium users see no ads. In the UK and EEA, Google's consent form asks for your choices before any ad is requested. Personalised ads require your consent. If you decline, Google may show non-personalised or limited ads, or no ad at all. On iOS, Apple's tracking prompt asks separately whether ads may use your device's advertising identifier. Your books, ratings and reading history are never sent to AdMob. Google privacy policy

Cloudflare — hosts getfoxed.app, provides the Turnstile human-verification service, and stores the temporary, one-way-hashed IP rate-limit record used to protect the waitlist form. Cloudflare privacy policy

Mailjet — processes the email address and test-platform preference you give us through the getfoxed.app waitlist form, so we can send the messages and relevant beta-testing invitation you asked for. Mailjet privacy policy

Google Books API and Open Library API — when you search for a book, the search term goes to these APIs. No personal data is sent, just the query.

RevenueCat — manages Premium subscriptions. It receives your Foxed account ID, store transaction and receipt details, device and platform information, storefront, and app version to verify subscription status. It never receives your book data. If you turn on Share app usage data, RevenueCat also receives your device's Firebase Analytics ID so it can send subscription events to Firebase Analytics; turning it off removes it. RevenueCat privacy policy

Apple App Store and Google Play — all payments are processed by Apple or Google. We never see your card details.

We do not sell your data to anyone. No data brokers, no marketing companies. The services above receive only what they technically need to function.


05 · Where your data is stored

Free users. Your entire library, reading sessions and app data live exclusively on your device in a local SQLite database. They never leave it. Delete the app and the data goes with it.

Premium users. When you enable cloud sync, a copy of your library, earned badges, display name and reading-goal setting is stored in Google Cloud Firestore in UK/EU data centres. Your email address and a one-way, scrambled form of your password are held by Google's Firebase Authentication, which may process them outside the UK/EU under Google's standard safeguards (international data transfer agreements). Firebase security rules mean only your authenticated account can read it — no other user, and not us.

Backups. To protect Premium readers against data loss, we keep backups of the cloud copy of your library and of sign-in accounts (your email address and a one-way, scrambled form of your password, never the password itself). Sign-in account backups are encrypted. Both kinds of backup are stored in UK/EU data centres. Cloud library backups are kept for up to 8 weeks and sign-in account backups for 35 days, and both are then deleted automatically. Backups are never restored into the live service except to recover from a serious failure, such as data loss, and are not used for anything else. Free users' data is never backed up by us, because it never leaves your device.


06 · How long we keep it

DataRetention period
Local device dataUntil you delete the app or clear it in Settings
Account and cloud dataUntil you delete your account. Deleted from the live service within 7 days
RevenueCat subscription recordUsually deleted within minutes after account deletion. An active Apple or Google subscription can recreate it; a weekly check deletes a recreated record within 30 days
Backups of cloud dataUp to 8 weeks, then deleted automatically
Backups of sign-in accounts (email address and scrambled password)35 days, then deleted automatically
Installation identifierStored inside your cloud records, so it goes when you delete your account
Crash reports90 days (Crashlytics default)
Analytics data14 months (Firebase default) — consent required
Waitlist email address and test-platform preferenceUntil you unsubscribe or we stop operating the waitlist and marketing list; we review the list periodically and remove addresses that are no longer needed
Waitlist rate-limit recordOne hour

07 · Your rights

Under GDPR you have the following rights.

Access — ask for a copy of all personal data we hold about you.

Rectification — ask us to correct inaccurate data.

Erasure — delete your data yourself in the app: Profile → Settings → Delete Account. Your account and cloud data are deleted from the live service within 7 days, as required by Apple and Google. Copies in our backups are deleted automatically within 8 weeks, and until then they are only used to recover from a serious failure.

Portability — export all your book data as a CSV file (Premium: Settings → Export Data).

Objection — object to processing based on legitimate interests. For crash reporting you can do this directly in the app: Settings → Privacy → Send crash reports. For anything else, contact us and we will assess the request.

Restriction — ask us to limit how we use your data while a dispute is resolved.

Withdraw consent — unsubscribe from waitlist emails using the link in every email, or withdraw consent for analytics, personalised ads and cloud sync in Settings (for app usage analytics: Settings → Privacy → Share app usage data; for ads in the UK and EEA: Settings → Privacy → Ad privacy choices; for tracking on iOS: the device's Settings → Privacy & Security → Tracking). This doesn't affect the lawfulness of processing before withdrawal.

We respond to all rights requests within one calendar month, as GDPR requires.


08 · Age requirement

Foxed is intended for users aged 18 and over. Book search results (powered by the Google Books and Open Library APIs) are not filtered for mature content, so we cannot guarantee the catalogue is appropriate for younger readers. We do not knowingly collect personal data from anyone under 18. If you believe someone under 18 has used Foxed and provided personal information, contact us and we will delete it promptly.


09 · Cookies and tracking

The app. No cookies. Your library is stored with SQLite and MMKV, both entirely on your device. For free users, Google's Mobile Ads SDK also stores your ad consent choices and ad-related data on your device, and may read your device's advertising identifier where you allow it.

getfoxed.app. No tracking cookies and no third-party analytics scripts. The waitlist form sends your email address and selected test platform to Mailjet. To protect that form, we use Cloudflare Turnstile and temporarily store a one-way hash of your IP address for one hour; we do not store the IP address itself. The relevant providers are listed in section 4 above.


10 · Changes to this policy

We may update this policy as the app gains features or the law changes. Material changes are announced by in-app notification and the "last updated" date above changes with them. We will not reduce your rights without your explicit consent.


11 · Contact and complaints

Rebecca Brown, trading as "Foxed" — data controller

Contact address: Rebecca Brown, Level One, Basecamp Liverpool, 49 Jamaica Street, Liverpool, L1 0AH
privacy@getfoxed.app
getfoxed.app

Complaints to the ICO

Information Commissioner's Office
ico.org.uk · 0303 123 1113
Wycliffe House, Water Lane, Wilmslow, Cheshire, SK9 5AF

If you are based in the EU, you may instead contact the data protection authority in your country of residence.