SingaporeMahjong Club

Singapore Mahjong Club · 26 September 2026

Privacy

This page explains the data used by the Singapore Mahjong Club website and iPhone app.

Apple and Google sign-in

We request your provider's account identifier and, where supplied, email address and profile name. We use these to authenticate you, create your Mahjong account and reconnect you to saved tables. Apple can supply a private relay address if you choose Hide My Email. We do not request your Apple or Google password, Gmail, Drive or contacts.

Google identity tokens are verified by the game server and are not persisted there. The native Google Sign-In SDK manages the provider sign-in on your device. For Sign in with Apple, the server stores an encrypted refresh token so it can revoke the connection when you delete your account. Our own native sign-in credential is stored in the iPhone Keychain and restricted to this device.

Google's sign-in service can receive your user identifier and IP address, including an approximate location used to prevent fraud. Its bundled privacy declaration also covers contact details, device identifiers and usage or other data for sign-in and analytics. These provider practices are described in Google's sign-in data disclosure and Google's privacy policy.

What we save

The game server saves your account, chosen name, tile avatar and introduction; game state and moves; table chat; and muted-player preferences. Account-level player blocks and table-access suspensions are stored until removed or the account is deleted. If you use Friends, we save your friend link, the friends you and they have added, and table invitations between friends; friendships stay until either of you removes them or one of you blocks the other, and invitations end when the table starts or after two hours. Account sessions expire after seven days. Accounts and profiles remain until you delete them. Active tables and their chat expire within 24 hours of creation; inactive lobbies and completed tables can be removed sooner.

Reports include the reported message or profile, reason and identifiers needed for moderation. Report evidence is retained for up to 30 days. Cleanup runs while the service is operating.

Memberships and payments

We save your plan, monthly wind usage and all completed-game score summaries until you delete your account. My account lets Basic members view their newest 10 recorded rounds, and Pro members 20,000, including amounts won from and lost to individual opponents and bots where detailed results are available. A downgrade hides older results without deleting them. Opponent records include their display name and tile avatar, with a private identifier that keeps different players with the same name separate. Wind identifiers prevent reconnects from counting the same wind twice. Practice results are reported by your browser; online results come from the game server.

Apple processes subscriptions purchased in the iPhone app. PayPal or Stripe processes browser subscriptions, according to the payment method you choose. We send your selected provider an internal account reference, the chosen plan and checkout return addresses. We store subscription and payment references, checkout recovery records and the verified paid period. Card details and payment-provider passwords are handled by your payment provider and are not stored by this game. PayPal handles payment information under its own privacy statement; Stripe uses its privacy policy. Apple uses its privacy policy. For App Store purchases, we verify signed transaction records and save product and transaction identifiers, purchase environment, expiry, revocation status and an internal Mahjong account reference to provide and restore the correct membership.

Coaching waitlist

The optional coaching launch mailing list is separate from paid membership. Signing in or subscribing does not join it. If you choose to join and tick the email consent box, we save your internal account identifier, signup time and the version of your consent. We use the email address on your Mahjong account to contact you when coaching is ready. Joining is free and does not start a paid membership.

You can withdraw at any time on the Coaching page, or delete your Mahjong account. This removes your active waitlist signup. Otherwise, we retain it until we have sent the launch notice or the planned launch is cancelled. Waitlist membership is private and is not shown to other players.

Record Score

If you keep score with Record Score (recordscore) we save each table you make or join: its name, its players (names typed by its members, a tile picture and, for players who joined, which account joined as them), usual points per tai, invitation link, and every session recorded there: the date, points per tai, each player’s final points, who recorded it, corrections and which players agreed with the result. A table is shown only to the account that made it and the accounts that joined it through its invitation; everyone at a table sees all of its sessions, players and records. Unfinished drafts are shown only to whoever is writing them. This is a private scorebook for your own games. Points are only a score: the club doesn’t hold, transfer or exchange anything.

The host can rename a table, replace its invitation link, remove players or undo a join, and delete the table with all of its sessions. A member can rename their own player or leave the table. Tables and sessions stay until their host deletes them.

Who can see it

If you create a public table, other signed-in players can see your display name, table points and available seats in the public lobby list. Private invite tables and existing games are not listed. Public listings close when play starts or the host leaves.

Players at your table see your display name, avatar, introduction, table statistics and chat. Your email address, account identifier and other players' concealed tiles are not included in their game views. The operator can review reports and access stored information when necessary for support and operation.

Apple or Google authenticates your sign-in, depending on your chosen provider. The public service uses Google Cloud infrastructure in Singapore to host game data. Data is not sold. The website's analytics settings disable advertising storage, advertising data use, personalised advertising and Google Signals.

Website analytics

The public website offers optional Google Analytics to count visits and see which pages and features are used. Nothing is sent to Google and no Google script is loaded unless you choose “Allow analytics.” If you allow it, Google Analytics receives the page path, a limited set of campaign labels containing only letters, numbers, underscores or hyphens, the referring website's origin (not its path or query), browser information and an IP address used to estimate a rough location. Advertising click identifiers are removed. Advertising storage, Google Signals, advertising user data and personalised advertising remain switched off. No names, emails, chat, tile, invite or card/bank details are sent. A first-party Analytics cookie remembers visits for up to 90 days; its expiry is not extended on every visit. Activity before consent is not queued for later reporting. A later sign-up, first practice table or membership purchase may be reported as a conversion only after consent. A purchase event contains the membership, amount, currency and a pseudonymous reference, not card or bank details. Withdrawing consent also stops tracking in other open tabs of this website. The iPhone app, the App Store review sandbox and embedded club screens do not receive the Analytics identifier or load Google's tag. Google processes allowed information under Google's privacy policy. You can block measurement with a content blocker or Google's opt-out browser add-on.

Your device and security

A sign-in cookie keeps you authenticated. Browser storage keeps your table credential, settings, pending requests and solo-practice saves. These are needed for play and reconnection. The iPhone app stores table credentials in Keychain and interface preferences on your device. Its embedded practice screens keep sign-in cookies, practice saves and hand recordings in storage separated by Mahjong account and service. Exported videos are first saved in a temporary folder for that account before you choose where to share them. Ordinary sign-out preserves saved practice and recordings on this device. IP addresses are temporarily used for request limits; hosting diagnostic logs may include IP addresses and requested URLs. The game does not display advertising. Google handles sign-in under its own privacy policy.

Deletion and backups

In your browser, open My account, expand Account settings, then choose Delete account. In the iPhone app, open My account, tap the Account settings gear, then choose Delete account. This removes your account, profile, messages, active membership link, game summaries, blocks, friend link, friendships and table invitations, and coaching waitlist signup, and ends all account sessions. Shared game scores and tile state remain for the other players, with your name changed to Former player and your avatar and introduction removed. In Record Score, your player at each table becomes Former player with the points kept, so the other players' records still add up; your unfinished drafts are deleted; a table you host passes to the member who joined it first, with a new invitation link, or is deleted with its sessions if nobody else joined. Reports associated with your account or its retained seat credentials are removed. Other players keep their own scored results against you with your name anonymised.

Deleting your account does not cancel an App Store subscription. You can manage or cancel it through Apple's subscription settings; account deletion remains available without waiting for the paid period to end. For a PayPal or Stripe subscription or pending checkout, the service confirms cancellation before completing deletion. If that cancellation cannot be confirmed, you can retry. Each provider retains its own payment records under its policies. The service also retains Apple's original and latest transaction identifiers, product, environment, subscription status, paid-through and renewal details, relevant transaction dates, and a cryptographic hash of the deleted internal account identifier. These records are detached from the deleted account and cannot restore it. They are retained for the life of the service so Apple subscription updates, refunds and disputes can be reconciled, accounting records remain consistent and a historical transaction cannot be linked to a different account. Sign in with Apple authorisation is revoked as part of account deletion. Clear this site's browser storage to remove local practice saves and seat credentials. When deletion succeeds inside the iPhone app, it clears its saved sign-in and table credentials, the deleted account's embedded practice storage and recordings, and its temporary video copies on that device. If local cleanup is interrupted, an internal storage identifier is kept to retry it when the app reopens, then removed after cleanup finishes. Copies you already saved or shared outside the app remain under your control.

Daily database backups and cloud disk snapshots each rotate on a seven-day schedule. Older database copies inside disk snapshots can remain for up to roughly 14 days. Deleted records can remain in a backup until it expires; any restoration must reapply account-deletion requests and coaching waitlist withdrawals before the service reopens. A separate record contains the internal account identifier and request time so that backup recovery respects these choices, including any later explicit signup. It does not contain your name or email address.

Questions and requests

See Support for account deletion, reporting and subscription controls.

Changes

If these practices change, we will update this page and its date.