Privacy Policy
This policy explains how RunCity ("we", "us") processes personal data when you use the RunCity game at runcity.today, as a website, an installed web app or a mobile app. It is written in accordance with Regulation (EU) 2016/679 (GDPR) and Hungarian data protection law (Act CXII of 2011). In short: we collect what the game needs to work and to keep the leaderboard fair, we read your location only when you ask us to, and we never sell your data or show you ads.
1. Data controller
RunCity is operated by inkode, which is the controller of your personal data.
Email: hello@inkode.co
Website: https://runcity.today
For any privacy question or request, write to hello@inkode.co.
2. Personal data we process
| Data | What it is | Legal basis (GDPR Art. 6) | Retention |
|---|---|---|---|
| Account | Display name, username, email address, password (stored only as a one-way hash), optional home city, generated avatar or the profile picture you upload, and hashed device and login tokens. | Art. 6(1)(b), performance of our contract with you | Until you ask us to delete your account |
| Check-in location | One GPS reading taken when you tap Validate: coordinates, accuracy, and where your device reports them, altitude, speed and whether the location looks simulated. Stored with the time, the checkpoint, your device's clock, browser or app version, and the result. | Art. 6(1)(b) to score the check-in; Art. 6(1)(f), our legitimate interest in a fair leaderboard, for cheat detection | Until account deletion |
| Route of a timed run | Only if you switch on route tracking for a city: a position sample at the interval you choose, while the run's clock is running. Used to draw your route on your finish map. | Art. 6(1)(a), consent, given by switching tracking on; switch it off at any time | Until account deletion, or earlier on request |
| Run and timer state | Unlocked cities, scores, start, pause and finish times, and the location when you paused a timed run (to check you did not move while the clock was stopped). | Art. 6(1)(b); Art. 6(1)(f) for the pause check | Until account deletion |
| Photos | Photos you take for photo checkpoints and for saved spots. They are reviewed by our team to confirm the check-in. | Art. 6(1)(b) | Until account deletion |
| Saved spots | Places you save and suggest: name, note, location and accuracy, and an optional photo. | Art. 6(1)(b) | Until you delete the spot or your account; a spot we turn into a checkpoint keeps its location, not your identity |
| Usage events | A small set of in-app events tied to your player (profile created, city unlocked, check-in attempted, check-in succeeded, photo submitted), used to understand where players get stuck. | Art. 6(1)(f), legitimate interest in improving the game | Until account deletion |
| Technical logs | Our servers log each request's method, path, status and duration, without your IP address. Our hosting ingress may log IP addresses for security and abuse prevention. | Art. 6(1)(f), security of the service | Short-term rotation, no longer than 90 days |
Your location is not collected in the background. RunCity asks your device for a position when you tap Validate, when you save a spot, when you pause a timed run, and, only if you switched it on, while a timed run's route is being tracked. Your browser or phone asks your permission before the first reading.
3. What other players can see
Leaderboards show your display name, your avatar or profile picture, and your score and time for each city you have played. Other players cannot see your username, email, home city, photos or locations. When you share a result, the card contains what you see on it, and you choose where it goes. Pick a display name you are happy for other players to see.
4. How we use your data
- Running the game: your account, unlocks, check-ins, scores and timers.
- Keeping it fair: server-side checks of distance, GPS accuracy, device clock and travel speed, and review of photos and flagged runs. A run that fails these checks can be removed from the leaderboard and an account that cheats can be banned. This is not an automated decision with legal effect; a person can review it on request.
- Improving the game: aggregate use of the usage events above, and the spots players suggest.
- Support and security: answering your messages and protecting the service from abuse.
We do not use your data for advertising, sell it, or build profiles for anyone else.
5. Cookies and storage on your device
RunCity sets no advertising, analytics or tracking cookies and runs no third-party analytics. The app keeps what it needs on your device in local storage: your login token, your profile, game preferences, and check-ins, photos and route samples that are waiting to upload when you are offline. A service worker caches the app so it opens without a connection. This storage is strictly necessary for the service you asked for, so it needs no consent (ePrivacy Directive Art. 5(3)), and no consent banner is shown. Logging out removes your login from the device.
6. Service providers and third parties
We do not sell, rent or share your personal data with third parties for their own purposes. We rely on:
- Hetzner Online GmbH, Germany: server hosting. All RunCity data, including photos and daily backups, is stored on servers in the EU.
- OpenFreeMap: serves the map tiles. Your device requests tiles directly, so the provider sees your IP address and which map area you are viewing, but no RunCity account data.
- Wikimedia Commons: city and checkpoint photos are loaded from Wikimedia's servers, which see your IP address when your device fetches an image.
- Legal obligations: we disclose data where Hungarian or EU law, a court order or a competent authority requires it.
7. International transfers
We store and process RunCity data in the European Economic Area. If a provider ever processes it outside the EEA, we will rely on an adequacy decision or Standard Contractual Clauses (GDPR Art. 45–46).
8. Retention and deletion
We keep your data while you have an account. To delete your account and everything attached to it, email hello@inkode.co from the address on your account; we will do it within 30 days and confirm. Deleted data disappears from our rolling database backups within 7 days after that. A checkpoint created from a spot you suggested stays in the game without any link to you.
9. Your rights
Under GDPR Chapter III you have the right to:
| Right | What it means |
|---|---|
| Access (Art. 15) | Get a copy of the personal data we hold about you. |
| Rectification (Art. 16) | Correct inaccurate data. You can edit your profile in the app at any time. |
| Erasure (Art. 17) | Have your data deleted. |
| Restriction (Art. 18) | Ask us to limit how we use your data in certain cases. |
| Portability (Art. 20) | Receive the data you gave us in a machine-readable format. |
| Objection (Art. 21) | Object to processing based on our legitimate interests. |
| Withdraw consent (Art. 7(3)) | Switch off route tracking, or revoke location or camera permission in your device settings, at any time. |
To use any of these rights, email hello@inkode.co. We answer within 30 days (GDPR Art. 12(3)) and do not charge for reasonable requests. We may ask you to confirm you own the account.
10. Complaints
You can lodge a complaint with the Hungarian supervisory authority:
Nemzeti Adatvédelmi és Információszabadság Hatóság (NAIH)
Address: 1055 Budapest, Falk Miksa utca 9–11., Hungary
Phone: +36 (1) 391-1400
Email: ugyfelszolgalat@naih.hu
Website: https://naih.hu
You may also complain to the supervisory authority where you live or work in the EU.
11. Security
All traffic is encrypted with HTTPS. Passwords are stored as one-way hashes, login and device tokens are stored only as hashes, login attempts are rate-limited, and access to the admin tools is restricted to our team.
12. Children
RunCity is not intended for children under 16 without a parent or guardian's consent. If you believe a child has given us personal data without that consent, contact us and we will delete it.
13. Changes to this policy
When we change this policy we update the date at the top. If a change materially affects how we use your data, we will tell you in the app or by email before it takes effect.