Legal
Last updated 30 August 2026
This policy describes, honestly and specifically, what we collect through the app, why we collect it, who we share it with, and what happens to it if you delete your account. It isn't filler text and it isn't a placeholder.
Account information. Your email address and password (handled entirely by our authentication provider, Supabase — we never see or store your password ourselves), your display name, handle, bio, profile photo, and any social link you add. This is what lets you sign in and lets other readers recognise you.
Date of birth. Collected once, at sign-up, to check you meet our minimum age requirement — see "Age requirement" below. It's self-declared (we ask, we don't independently verify it) and stored privately; it's never shown on your profile or to other readers.
Reading activity. Books you mark as read, want-to-read, or favourite, your star ratings, written reviews and comments, your reading goal, and the reading tags you pick (used to personalise recommendations and the groups shown to you). If you import a CSV export from Goodreads or StoryGraph, we read the title, author, ISBN, shelf, rating, review text, and date fields from that file to populate the same data.
Groups and events. Groups you create or join, your membership and join requests, events you host or RSVP to.
Messages and photos. Direct messages and group chat messages you send, including any photos and voice notes you attach. Messages are only visible to the people in that conversation or group through the app — access is enforced at the database level for every request, not just hidden in the interface. Messages are not end-to-end encrypted: they're protected in transit (TLS, the same encryption your bank or email uses in the browser) and at rest (our database provider's standard disk encryption), but not in a way that prevents Shelfmates itself from reading message content directly if genuinely necessary — for example, to investigate a reported account or respond to a legal request. There is currently no way for another reader to see your messages; there is no cryptographic guarantee that we can't.
Connections. Connection requests you send or receive, and their status (pending, accepted, declined), and any users you block.
Payment information, if you subscribe. Shelfmates+ subscriptions are processed entirely by Stripe. We never see or store your card details — we only store whether your subscription is currently active, so we know whether to apply the free-tier connection limit. Your email address and billing status are stored separately from your public profile, in a table with stricter access controls, since neither is something other readers should ever be able to see.
Technical and abuse-prevention data. Your IP address is used briefly, in memory or in a short-lived rate-limit counter, to enforce limits on public forms and endpoints (search, contact, newsletter signup, the GIF picker, billing) and is not retained as part of your profile. If the app errors or crashes, our error-monitoring tool (Sentry) may capture the error details, the page you were on, and technical context like your browser and IP address, to help us fix the bug.
Publisher submissions. If you use a publisher account, we store the book details and links you submit for moderation review.
We don't sell your data. We don't use your reading activity or messages for advertising. We don't share your direct messages or group chats with anyone outside that conversation, ever, other than the limited moderation access described below.
Before a profile photo, a group/event cover photo, or a chat photo is uploaded, it's run through an automated nudity/explicit-content classifier that runs entirely on your own device, in your browser. The image itself is not sent to a third party for this check; the check either passes (and the photo uploads normally) or fails (and the photo is never uploaded at all). This is a best-effort filter, not a guarantee. Separately, our file storage only accepts genuine image or audio files up to a fixed size limit, enforced on our servers regardless of what a browser claims a file is, so a disguised or oversized file can't be uploaded.
We use a small number of service providers ("subprocessors") to run Shelfmates. Each only receives the data it needs to do its specific job:
We may also disclose information if required by law, or to protect the safety of our users, in line with the moderation and enforcement practices described in our Terms of Use.
Reports you submit about a user, comment, or review are visible to our staff moderation team so they can review and act on them. Publisher submissions are visible to staff for the same reason. Staff access is restricted to accounts we've specifically designated, and is scoped only to what's needed to moderate the platform. There isn't currently a way to report an individual message the way you can report a user, comment, or review — if a reported account's messages are relevant to investigating that report, or we receive a legal request, staff can access message content directly in our database, as described above.
Choosing "Delete account" is real and permanent, not a soft deactivation. It removes your login, your profile, your reviews and comments, your reading activity, your messages, your connections, and your uploaded photos and voice notes from our systems.
There are a small number of deliberate exceptions where we keep shared content that other readers' own data depends on, rather than destroying it out from under them:
Your handle is also freed up for someone else to use once your account is deleted.
You can access and correct most of your own information directly in the app, under Edit profile. You can export a copy of your reading history as a CSV file at any time from the same screen. You can request deletion of your account and data at any time, as described above. If you have questions about your data that aren't answered here, get in touch through our contact page.
Shelfmates is intended for people aged 16 and over. We ask for your date of birth when you sign up and check it against that minimum before your account is created — an account can't be created at all if the date given doesn't meet it. This is a self-declared check, not independent identity or age verification: it stops an honest mistake or an accidental signup, not someone deliberately entering a false date of birth. We don't knowingly collect data from children under this age.
Our service providers may process and store data outside your own country, including in the United States and the European Union. Each provider we use maintains its own safeguards for handling data across borders.
Shelfmates is actively being built, so this policy may change as features change. We'll update the date at the top of this page when it does.
Questions about this policy or your data can be sent through our contact page.