This is a courtesy English translation. The legally binding version is
the Spanish original.
1. Who is responsible
This policy describes how the alemarble mobile application
(hereafter, "the app") handles the personal data of those who use it.
Controller: Ronny Montano (natural person)
Contact: rmontano1992@gmail.com
Jurisdiction: Spain (European Union)
2. Quick summary
Two ways to play: guest mode (no account, no identifying data)
and optional Google sign-in (in which case we receive your
Google profile name and email).
We do not use advertising or third-party trackers.
We do not sell or share data with anyone.
Game data is stored on your own device, with these exceptions
that do pass through our server in Germany:
Online mode: room code, match state (positions, cards,
turns), an anonymous session token, and your IP in logs.
End-of-match metrics (all modes): a random device identifier,
mode, difficulty, duration, winning seat, and whether you won.
If you sign in with Google: your name and email pass through
briefly so we can verify the sign-in (we don't store them); we
do keep your Google sub, your displayed nickname, and an
internal playerId.
3. What data we process
3.1 On your device (does not leave it)
Using Android/iOS's standard SharedPreferences, the app stores
locally:
Your game statistics (wins, losses, streak, captures, difficulty).
If you have signed in with Google, an aggregated copy of these
statistics is also synced to our server (see §3.5).
Your preferences (language, light/dark theme, sound on/off, AI
speed).
The last saved game (so you can resume if you close the app).
An anonymous random token to reconnect to an online match if your
connection drops.
These data never leave your device unless you uninstall the app
(then they are erased) or back up/restore your phone through other
means. We do not see them.
3.2 On the server (online mode only)
If you play an online match ("Online with room code" mode), our
server:
Generates a 4-character room code.
Maintains the match state while it lasts (positions, cards,
turns), stored in a Postgres database.
Generates an anonymous session token tied to your seat in the
room, so you can reconnect if you lose Wi-Fi. This token is not
linked to any email, name, or profile.
Records the IP address of your connection in the server logs
for technical purposes (error diagnosis). Typical retention: up to
30 days.
The LAN and vs. AI modes are played without connection to our
services, except for the anonymous metrics described in 3.3.
3.3 Anonymous usage statistics
When each match starts and ends (in any mode), the app sends an
anonymous metric to our server with:
A random identifier generated on the device (UUID, not tied to
your identity and erasable by uninstalling the app).
The game mode (solo / LAN / online) and variant (teams / free for
all).
The AI difficulty when applicable.
The match duration.
The winning seat and whether you (or your team) won.
The app's language and installed version.
The operating system (Android / iOS) and the approximate country
inferred from your device's language and region setting (just the
2-letter country code, e.g. "ES"; this is not geolocation).
If you have signed in with Google, your internal player ID (a
UUID the app and server use to associate your history — see 3.5).
This helps us understand how many matches are played and which modes
are popular; we do not collect match content (cards, positions,
plays) or anything that could identify you without Google sign-in.
3.4 What we do NOT collect (in any mode)
Geolocation.
Game history beyond your local stats and the anonymous aggregated
outcomes.
Biometric data.
Device contacts.
Advertising identifiers (IDFA, AAID, etc.).
3.5 Google sign-in (optional)
The welcome screen offers two options: play as guest (no account)
or sign in with Google. If you choose Play as guest, the rest of
this policy follows sections 3.1–3.4 and none of what follows applies
to you.
If you choose to sign in with Google:
We receive the basic profile fields openid, email and
profile from Google (your name or display name, your email,
and a stable Google-internal identifier called sub).
We generate an internal playerId (random UUID) that links
your Google account with the games you play. We do not store
your email; we only store your Google sub, the display name you
choose (editable in-app), and an anonymous device identifier.
From that point on, the end-of-match metrics in 3.3 also travel
with your playerId, so you can see your history on any device
where you sign in with the same Google account.
Your aggregated statistics (games played, wins, losses,
current and best streak, captures, and wins by difficulty) are
synced to our server while you are signed in, so we can restore
them if you reinstall the app or sign in on another device. They
do not include detailed match history.
Anonymous crash reports (Sentry): the app integrates Sentry to
detect technical failures. Reports include the app version, device
model, and error trace, without user-identifying data.
How to delete your account: in the app, open the Account
menu (person icon in the lobby) and tap Delete account. The
action is immediate and irreversible: we drop your row from the
players table (sub + nickname + playerId), your row from the
player_stats table (the synced aggregated statistics), and
anonymise all your past events in telemetry_events (player_id
becomes NULL — the rows stay but no longer link back to you).
If for some reason you can't access the app (lost phone, prior
uninstall), email rmontano1992@gmail.com from the Google account
you signed in with, stating "delete alemarble account". We process
those manually within 30 days.
4. Device permissions
Camera: only if you choose "Join LAN" and scan the host's QR
code. If you don't use LAN or type the IP by hand, we don't need
the camera.
Local network: so your device can discover the host of a LAN
match on the same Wi-Fi.
Both permissions are requested at the moment they are used and can be
revoked from system settings.
5. Where data is stored
Game server, database and crash reports:Hetzner, data
centre in Germany (EU territory).
Anonymous crash reports: Sentry GmbH (Germany), without
personal identifiers.
Authentication: Google ID tokens are verified against Google's
official servers (Google LLC) and discarded immediately; we only
keep the sub and the derived playerId.
No data is transferred outside the European Economic Area, except
for the punctual exchange with Google needed to verify your ID
token at sign-in.
6. How long we keep data
Data on your device: until you delete it (uninstall the app or
clear its data from system settings).
Online match state: kept while the match lasts. When it ends,
the room is marked as concluded and kept in the database for
internal purposes (diagnosis, aggregated statistics) without
linkage to identified persons. We may purge concluded matches at
any time.
Session tokens: deleted when the room ends.
Google account data (if signed in): kept while the account is
active. If you request deletion or do not use the app for 24
months, we remove your sub, nickname, playerId, and the
associated aggregated statistics; historical events are
anonymised (with no playerId).
Server logs with IP: typical retention up to 30 days.
7. Your rights (GDPR)
Although we don't collect identifying data, you retain the rights
recognised by the General Data Protection Regulation:
Access: you can ask us what data tied to your device we hold
(in practice, almost nothing, because we don't link data to
persons).
Rectification: correct inaccurate data.
Erasure ("right to be forgotten"): delete your in-progress
online match or your session token.
Portability: export the data we hold.
Objection and restriction: object to processing you consider
illegitimate.
Complaint: you can lodge a complaint with the Spanish Data
Protection Agency (aepd.es).
To exercise any of these rights, write to rmontano1992@gmail.com.
We respond within 30 days.
8. Minors
The app does not collect identifying data, so the risk for minors is
low. Still, it is not specifically designed for or directed at
children under 13, and we recommend adult supervision for online mode
(interaction with other players via room code).
9. Changes to this policy
If what we process changes significantly, we will update this page
and the date in the header. For major changes, we will notify within
the app before they take effect.
10. Contact
Any questions about this policy or about the data the app handles,
write to: