Sunbird ("the app") is published by Tridesetri doo Beograd, Narodnih heroja 43, 11070 Novi Beograd, Serbia, a company registered in Serbia under registration number 21720682, tax number (PIB) 112694162.
This policy explains what information the app handles and why. It is written to be read, not to be survived.
The short version
Sunbird has no sign-up, no password and nothing to type. Playing needs no server of ours: your progress is stored on your device and we never see it.
The online boards (the daily board, the monthly and all-time boards, and flocks of friends) are part of the game and are on unless you switch them off (Settings → Online, one switch, any time). While they are on, the app sends us a small record of each finished flight of the daily course so we can check it and rank it: a random board id created on your device, a handle assigned from our fixed list (changeable in Settings), which course you flew, your score, the timing of your taps, and whether you took a revive. Our server re-flies those taps in the same game code you played and keeps the score only if its own flight produces the same number. The taps are then discarded. What is kept is the score and a fingerprint of the flight, for 30 days. Your best score also stands on two longer boards, the month's and the all-time one, as a single row each: handle, bird, score. The monthly row expires with its season; the all-time row stays until you delete your online data, which removes all of it at any time.
On Android, Google Play Games Services signs you in to Google's games platform when the game starts, as it does for every game that uses it. That is Google's processing, under Google's policy. If you join a board we store only the opaque player id Google assigns you for this game, so your place survives a new phone. Never your gamer name, your avatar or your email.
Advertising is separate. The app shows ads through Google AdMob, and that SDK collects information in order to serve them. We never send AdMob's identifiers to our server, and we never send our board id to AdMob.
What is stored on your device
The app saves your game progress locally: your best scores, your daily results, which birds you have unlocked, the record of your last flight (a course number and the timing of your taps, about four kilobytes, so the highlights reel can be made from it), and whether you have purchased Remove Ads. With the online boards on, part of it is also backed up to your place on the board so that a lost phone does not lose it, and that part is listed under Your progress backup below. The rest never leaves your device at all: not the record of your last flight, not whether you bought Remove Ads, not your sound and vibration settings.
None of it identifies you. There is no name, no account and nothing you have typed. The app has no field to type into.
Deleting the app deletes this data.
Online play: the daily board and flocks ("Leaderboards")
Online boards are on by default and entirely optional: one switch in Settings → Online turns them off. While they are off, nothing about you or your flights is sent: no flight, no board read, no flock, no inbox, and nothing signed with your board identity. Three requests still go to our server with the boards off, and none of them carries anything about you: the app asks which day it is, so every phone flies the same course whatever its clock says; it asks the oldest version of the app we can still accept, so that a build we have found a fault in can be asked to update instead of flying a course it gets wrong; and only if you bought Remove Ads, it sends Google's purchase token so we can confirm the purchase with Google (see Purchases). Every request the app makes names the version of the app making it, which is how the second of those is answered, and nothing else about your device. With the boards off we do not store it. The first time the app can reach our server with the boards on, it takes a place on the board for you (under a random handle from our fixed list, never anything about you) and tells you so.
What is sent. A board entry is the run itself, signed by an identity your device made for itself when it joined (128 random bits, never shown to anyone; our server keeps only a hash of them and gives the place it opens a short board id, shown to you in Settings): a handle from our fixed list of 225 names, the bird you fly, the course you flew (a calendar day, or a shared-course code), the screen height you flew it at, your score, the moments you tapped, and how many times you took a revive during the flight (at most one). That is a few kilobytes. When the place is first taken, and when it is moved to a new phone, the app also tells us which platform it runs on (Android or iOS) and which version of the app it is, and those two facts are kept on the device record. Our server re-flies those taps in the same game code you played and keeps the score only if its own flight produces the same number; the taps are then discarded, and what remains is the score and a fingerprint of the flight. A revived flight is sent like any other: the record says how many revives were taken, and our server applies the same ones at the same deaths when it re-flies the taps, so the flight is still proved rather than believed. That count is used for the re-flight and nothing else. It is not kept with the board entry, and it never reaches any advertising service. A paused flight is never sent at all, because after a pause it can no longer be proved from its taps.
Why we process it. To provide the game's shared boards: verifying your flight and ranking it, and showing your handle and score to the other players on the board. The boards are part of the game rather than an account you sign up for, the data is pseudonymous by construction, and both the switch to stop and the button to erase are one screen away; our legal basis is legitimate interest in running the game's shared boards this way (Article 6(1)(f) GDPR; the Serbian Law on Personal Data Protection equivalently), and the Settings switch is your objection, honoured immediately. Re-flying runs to reject impossible scores, and limiting how often a board id may submit, is the same interest in keeping the board honest.
Your progress backup. With the boards on, the app also keeps a copy of the achievement half of your save beside your place: your best score and best firefly count, your lifetime totals, how far into the day you have flown, your daily bests, your missions and which birds you have earned. It is there for one reason: so that clearing your browser, losing your phone or buying a new one does not erase what you did. It is about the size of a photograph's caption, a few kilobytes.
Two things about it are worth saying plainly. It is your own claim, not something we verified: our server cannot re-fly a lifetime total, so it stores what your app says and hands the same thing back to you, and it is never used to decide anything on a board. And it is yours alone: no other player can read it, and it goes with everything else the moment you delete your data.
Getting back in. Because there is no account and no password, the only thing that proves a place is yours is a credential your device made for itself. On Android, Google Play Games can vouch for you and bring your place back on a new phone. Everywhere else, Settings gives you a recovery code: twelve characters you write down, which restore your place and your progress on any device. We keep only a fingerprint of it, never the code itself, so it can be shown to you exactly once and a copy of our database is not a drawer full of working keys. Making a new one replaces the old.
Who can see it. Players on the same board see your handle, your bird and your score. The daily board is visible to everyone who joins it; a flock only to the people who hold its code. Nobody, including us, can turn a handle or a board id back into a person.
Your network address. Our server sees your device's IP address when it receives a request, as every server does. It is used only to limit how fast requests arrive, and it is hashed in memory with a key that changes every time the server starts; it is never written to our database. Where a request carries your board id, that limit is counted against the board id rather than the address, so that everyone behind one mobile network does not share a single allowance. Those counts are held in memory too, and are never written down.
Recognising you across devices
On Android the game uses Google Play Games Services. Google signs you in to its games platform when the game starts; you can manage or remove that in Android Settings → Google → Play Games. We do not control that sign-in and receive nothing from it while the boards are off.
When a place is taken, we ask Google for the opaque player id it assigns you for this game and store it beside your board id. That is what lets a reinstall, or a new phone, bring back your handle, your flocks and your history. We never receive or store your gamer name, your avatar, your real name or your email address, and we never ask Google for them.
If you have no Play Games profile, or you decline, nothing changes about the game: you can still join a board, and you can move to a new phone with a one-time code from Settings. On iOS, Game Center will be used the same way when the iOS version ships.
Flocks
A flock is a private group joined with a short code. Whoever you give the code to can join it. The app never reads your contacts, never asks for phone numbers or email addresses, and offers no messaging: a flock shows handles, birds and verified scores, and nothing else. Flocks are named by their code, because there is no way to type a name.
Leaving a flock removes you from it. A flock with no verified flight for 90 days is deleted, along with everything in it.
A flock can also set a course: one seed everybody in it flies, open for a day to three days. Entries go through the same check as the daily board, and the same things are stored about them. When the hours run out we write one line to the inbox of each person who flew it, saying that it has closed. Nobody who did not fly it is told anything, and nothing is pushed to your phone: an inbox is read in the app, when you open it.
How long we keep it
| What | Kept for |
|---|---|
| Daily-board entries (board id, handle, bird, score, flight fingerprint) | 30 days after the day of the course |
| Monthly-board entries (board id, handle, bird, your best score of the month) | 400 days, so last season is still there to talk about |
| All-time-board entries (board id, handle, bird, your best score ever) | until you delete your online data |
| The fingerprint index that stops one flight being submitted twice | 2 days |
| Flock challenge entries | 30 days after the challenge closes |
| Inbox messages (who joined, who beat your score, a course your flock set, how a course or a week ended) | 14 days |
| Flock membership | until you leave, or 90 days after the flock's last verified flight |
| Your player record (board id, handle, bird, Play Games player id, and the platform and app version that joined) | 365 days after your last online activity, or until you delete it |
| Your progress backup (best scores, totals, daily bests, missions, birds earned) | 365 days after your last online activity, or until you delete it |
| Recovery-code fingerprints | 365 days after the code was made or last used, or until you delete your data |
| Move-to-a-new-phone codes | 10 minutes |
| Our hosting provider's access logs, which include IP addresses | up to 30 days |
| Backups | up to 35 days |
Nothing is kept longer for advertising, analytics or profiling. We do none of those with board data.
Deleting your online data, and your other rights
In the app: Settings → Online → Delete my online data removes your player record, your progress backup, every board entry, every flock membership, every inbox message, any recovery-code fingerprint and the stored Play Games player id, usually within minutes and always within 7 days. Backups expire within 35 days. A new board id is created if you ever join again.
Without the app: if you have already uninstalled, go to https://sunbird.tridesetri.com/delete and send us your board id, or email office@tridesetri.com. The board id is the only thing that links an entry to you: many players share each handle, so we genuinely cannot find your data by handle alone. If you linked Play Games, say so and we will match the stored player id after you sign in once more.
You also have the right to ask what we hold under your board id, to correct it, to object to our processing, and to complain to a supervisory authority. We answer within 30 days (Serbian law) and in any event within one month (GDPR). Our supervisory authority is the Commissioner for Information of Public Importance and Personal Data Protection, Belgrade (poverenik.rs); in the EEA or the UK you may also complain to your local authority.
Where the data lives, and who processes it for us
The board server runs on Microsoft Azure, in a data centre in the European Union (West Europe, the Netherlands). Microsoft acts as our processor under a data-processing agreement that includes the EU standard contractual clauses, and does not use board data for its own purposes. Under Serbian law an EU member state provides an adequate level of protection, so this transfer needs no further safeguard.
Google is an independent controller for the Play Games sign-in it performs on Android, under its own policy: https://policies.google.com/privacy
We use no other processor for board data. We do not use an analytics service.
Advertising
The app uses Google AdMob to show three kinds of ads: a small banner across the top of the menu screens, occasional full-screen ads between runs, and optional rewarded videos that you choose to watch in exchange for continuing a run. Nothing is shown while you are flying: the banner leaves the screen for the length of a flight.
To serve these, the AdMob SDK may collect and process:
- your device's advertising identifier
- device information such as model, operating system version and language
- coarse location inferred from IP address
- information about ad interactions (impressions, clicks)
This processing is carried out by Google as an independent data controller. Google's privacy policy governs it: https://policies.google.com/privacy
Google's information about how it uses data from partner apps: https://policies.google.com/technologies/partner-sites
On iOS, the app asks for your permission before any tracking identifier is used (App Tracking Transparency). If you decline, ads still work; they are simply less relevant. You can change this at any time in iOS Settings → Privacy & Security → Tracking.
On Android, you can reset or delete your advertising ID in Settings → Privacy → Ads.
In the EEA and UK, you will be shown a consent form before personalised ads are used, as required by GDPR and Google's consent policy. To change or withdraw that choice at any time, open Settings and tap Privacy choices, or use the device-level controls above.
Removing ads. A one-time in-app purchase removes the banner and the full-screen ads permanently. The optional rewarded video for revives remains available, and it only ever plays when you ask for it, so the AdMob SDK stays in the app and continues to process the information above when a rewarded ad is loaded or shown.
Purchases
The Remove Ads purchase is processed entirely by Apple or Google. We never receive or store your payment details, card number, or billing address. On Android the app sends our server the purchase token Google issued for the purchase, so our server can ask Google whether it is still valid; that check repeats every few hours while the app runs, whether or not the online boards are on, and it carries no board id and nothing else about you. We keep the answer (valid or not), which is used to turn off the banner and the full-screen ads, and we do not use the token for anything else.
Restoring a purchase asks the store whether your account owns it. No personal information is transferred to us in the process.
What we do not do
- We do not require or offer a sign-up, a password, a name, an email address or a phone number.
- We do not read your contacts, and there is no chat, no messaging and no way to type anything to another player.
- We do not collect location.
- We do not sell personal information, and we do not use board data for advertising or profiling.
- We do not use analytics SDKs beyond what AdMob requires to serve ads.
- We do not send any advertising identifier to our server, or our board id to any advertising service.
Children
Sunbird is not directed at children under 13 (or the equivalent minimum age in your country) and we do not knowingly collect personal information from them. The app has no account, no name, no photo and no way to type anything; a board entry is a handle from our fixed list, a bird and a score. The app store's own age rating is the age gate; the app does not ask your age and does not want to know it.
If you believe a child has joined a board, contact us at office@tridesetri.com with the board id and we will delete the entries.
Changes
If this policy changes materially, the updated version will be published here and the "Last updated" date changed. Continued use of the app after an update means you accept the revised policy.
Contact
Tridesetri doo Beograd Narodnih heroja 43, 11070 Novi Beograd, Serbia Registration number 21720682 · PIB 112694162 office@tridesetri.com