This policy explains what personal data Crossword Club ("the app") collects, why, how it is stored, and what choices you have. The app is operated by Rella (Liang). If you have questions, contact us at privacy@rella.im.
1. What we collect
We collect only the data needed to run the game and keep your account working. Nothing is shared with advertisers, analytics networks, or third-party data brokers.
Account information (linked to you)
- Email address — required to create an account, verify it, recover your password, and sign in on other devices.
- Display name (nickname) and avatar emoji — shown to other players in online games.
- Password — stored only as a one-way bcrypt hash on our server. We never see your plaintext password.
- Internal user ID — an integer assigned by our server to tie your data together.
Gameplay data (linked to you)
- Game history — moves, scores, board state, opponents, and game outcomes for games you have played.
- Game statistics — win/loss counts, best word scores, streak counters, etc.
- Online game state — current room membership, turn order, and move history for active multiplayer rooms.
- User preferences — word list, theme mode, haptics, and similar settings, synced across your devices.
Technical data (linked to you)
- Push notification token — the Firebase Cloud Messaging (FCM) token for your device, so we can notify you when it becomes your turn in an online game. Stored only while a token is registered.
- IP address — temporarily logged by our web server (nginx) and by our application server for abuse prevention, rate limiting, and diagnostic purposes. Not used to identify you.
- Device and app version — sent as HTTP headers on every request so the server can enforce minimum supported app versions.
Voluntary content (linked to you)
- Feedback messages you submit through the in-app Send Feedback form, tied to your user ID so we can reply.
Analytics and ad attribution
So that we can measure which Google Ads campaigns actually bring us players (rather than spending blindly), we integrate Google's measurement tools on both the website and inside the apps. These integrations are scoped narrowly to ad-attribution data and do not capture in-app behaviour:
- Website (
wordclub.ai) — pages load Google's gtag.js script, which sends page-view events and a Google-set cookie to Google Ads (customer ID AW-16842706896). This is what tells Google whether a click on a Google Ads result became a real visit. Nothing you type on the site is sent to Google.
- iOS and Android apps — the apps link Firebase Analytics solely so Google's On-Device Measurement (ODM) flow can attribute installs and conversions to Google Ads campaigns. On first launch the app records the Play Install Referrer (Android) or a first-launch timestamp (iOS) and logs it as a single Firebase event. On sign-in the app sets a SHA-256 hash of your trimmed/lowercased email as the Google Analytics user-id — never the plaintext email — so the same Google Ads identity links your install to any later conversion you make.
- What we deliberately do not collect with these tools — we have not added custom events for in-app behaviour (which screens you visit, how long you play, what words you score with). No game state, no rack contents, no moves, no chat. The analytics integrations exist only to measure ad campaign effectiveness.
What we do not collect
- We do not collect your precise or approximate location.
- We do not access your contacts, photos, microphone, camera, or health data.
- We do not use Apple's IDFA advertising identifier or prompt for App Tracking Transparency — our Google Ads integration is built on first-party signals (hashed email, install referrer) and does not need it.
- We do not sell or rent personal data to anyone.
2. Why we use it
- To run the game: authenticate you, match you with other players, deliver and record moves, and keep your history in sync across devices.
- To send turn notifications: when it becomes your turn in an online game and the app is closed or backgrounded, we send a push notification via Apple Push Notification service (APNs) or Google Firebase Cloud Messaging (FCM).
- To improve the app: diagnosing bugs and crashes reported through the in-app Send Feedback form or inferred from server error logs.
- To enforce our terms and protect against abuse: rate limiting, spam detection, and version gating.
3. Who we share it with
The only third parties that ever receive your data are service providers we rely on to run the game:
- Apple Push Notification service (APNs) and Google Firebase Cloud Messaging (FCM): we send them the turn notification text and your device push token so your device can receive the alert. No other personal data is shared. See the Firebase privacy policy and Apple's privacy information.
- Resend: our transactional email provider. Used only to send account verification and password reset emails. They see your email address and the email body.
- Google (Google Ads & Firebase Analytics): the website loads
gtag.js, which sends page-view events and a Google-set cookie to Google for ad-conversion measurement. The mobile apps send a Play Install Referrer / first-launch timestamp event and a hashed-email user-id to Firebase Analytics for the same purpose. Google processes this data under its own privacy policy; we receive only the aggregated campaign-attribution reports.
- Apple (App Store) and Google (Play Store): the paid app download itself, and any future in-app subscriptions, flow through Apple's and Google's billing systems. Neither store shares your identity with us beyond a purchase token that we use to verify the transaction. The same applies during our free promotional periods — even when the price is $0, the download is still a Store-mediated transaction.
We do not share your data with advertisers, data brokers, or any party not listed above.
4. How it is stored and protected
- Data is stored in a PostgreSQL database on servers we operate. The database is not publicly reachable and is accessible only through our application server.
- All traffic between your device and our servers is encrypted in transit with HTTPS (TLS 1.2+). The API endpoint at
api.wordclub.ai and the web client at web.wordclub.ai enforce HTTPS only.
- Passwords are stored only as bcrypt hashes. Even we cannot recover your original password if you forget it — you can only reset it.
- Backups are stored encrypted at rest.
5. How long we keep it
- While your account exists: we keep your gameplay data so you can see your history and continue your games.
- When you delete your account (from the app's Account screen): we immediately scrub your email, nickname, avatar, and password hash from our database, remove your push notification tokens, and mark the account as deleted. The account cannot be reactivated. Shared game records (where another player is also a participant) are preserved for the other players' historical record but no longer contain your identifying information.
- Server logs (IP addresses, user-agent strings, request paths) are retained for up to 30 days for diagnostics and abuse prevention, then rotated out.
6. Account deletion
You have two ways to delete your Crossword Club account and all associated personal data:
- From inside the app (fastest): open Crossword Club → tap your avatar to open the Account screen → Delete Account. Confirm on the dialog. The deletion runs immediately: your email, nickname, avatar, password hash, preferences, and push notification tokens are scrubbed from our database. The account cannot be reactivated.
- By email (if you no longer have the app installed): email privacy@rella.im with the subject line "Delete my account" from the address registered on the account. We will delete the account within 7 days and reply to confirm.
In both paths, shared game records (where another player was also a participant) are preserved for the other players' historical record, but with no remaining information identifying you. Server logs containing your IP address are rotated out on our normal 30-day schedule.
7. Your other rights
Because we store so little about you, your rights are straightforward to exercise.
- Access: the app already shows you everything we have. Your profile screen shows your email, nickname, and avatar. The game history tab shows every game we have on record for you.
- Correction: you can change your nickname, avatar, and password from the Account screen inside the app.
- Opt out of notifications: iOS and Android let you disable notifications for the app in system Settings at any time. You can also uninstall the app to revoke all push permissions.
- Opt out of in-app purchases: subscriptions can be cancelled from your device's Settings → Apple ID → Subscriptions.
- Opt out of ad-attribution tracking: you can opt out of Google's ad personalisation at adssettings.google.com, and block
gtag.js at the browser level with an ad blocker (uBlock Origin, Brave Shields, Safari content blockers) — the rest of the site works fine without it. In the apps, signing out prevents the hashed-email user-id signal from being set on subsequent launches; the install-attribution event has already fired by then and cannot be recalled.
- Contact us: email privacy@rella.im with any privacy question or request.
8. Children's privacy
Crossword Club is suitable for all ages but is not directed at children under 13. We do not knowingly collect personal data from children under 13. If you believe a child under 13 has created an account, please email us and we will delete it.
9. International users
Our servers are located in the Netherlands. If you use the app from outside that jurisdiction, your data will be transferred to and stored on our infrastructure there. By using the app, you consent to this transfer.
10. Changes to this policy
If we change what we collect or how we use it, we will update this page and change the "Last updated" date at the top. If the change is material, we will also notify you inside the app on the next launch.
11. Contact
Privacy questions or requests: privacy@rella.im.