Ribbo

Privacy Policy

Last updated: 12 October 2026

This is a translation of the German privacy policy. If the two versions differ, the German version prevails.

In short: Without an account, the Ribbo app doesn’t collect any personal data: your progress stays on your device, and there are no ads and no analytics. Since version 1.1.0 you can create an account if you want to. Then I process your name, your daily puzzle times, your friendships and, since version 1.4.2, your game progress so you can see your rank and your friends and your progress comes back after a reinstall. Since version 1.5 your friends also see your position on the path, your checked best times with your ghost and your weekly points (section 4). Purchases of Ribbo Plus (since version 1.2) are handled by Apple or Google; I don’t receive any payment details (section 3). This website doesn’t set cookies and doesn’t use tracking.

1. Controller

The controller responsible for processing personal data in the Ribbo app and on this website is:

Fabian Meyer
Marbacher Str. 11/1
78086 Brigachtal
Germany
Email: hallo@ribbo.de

2. The app without an account

This section applies to all versions of Ribbo as long as you don’t have an account. Version 1.0.0 has no account.

No personal data

Without an account, Ribbo doesn’t collect any personal data. The app shows no ads and contains no analytics or tracking tools. Without an account, it doesn’t send any data to me and doesn’t open an internet connection of its own. The only exception since version 1.2: on Android, Google’s billing library, which is part of the app, connects to Google when it comes to Ribbo Plus (section 3). On iPhone, purchases go through a service of the operating system, not through the app.

What is stored on your device

So that you can keep playing, the app stores the following only on your device:

I don’t receive this information and have no access to it. If you delete the app, it is deleted along with it.

The app schedules the 8 pm reminder only on your device. It doesn’t use any push service from Apple or Google for this and doesn’t transmit any data.

Ratings in the store (since version 1.2)

After a few solved daily puzzles, the app asks for a rating at most once per version. The window for this is shown by the system of Apple or Google Play; they decide whether it appears. I don’t receive any data from you in the process. A rating you give goes to Apple or Google and is published there under their terms.

Sharing

When you share your result, the app (since version 1.3) creates an image of it, only on your device and without the day’s solution; before that, and for invitations, it’s a text. The image or text goes wherever you send it using your device’s share feature. If you challenge someone (since version 1.4), the app shares a text with a link (ribbo.de/h/…). It contains the level, your time and the record of how you solved it, so that it plays alongside as a ghost in the challenge, but not your name. The record is in the link after “#”; a browser doesn’t send this part to ribbo.de when it opens the link.

Device backups

If you’ve turned on backups on your device (such as iCloud Backup from Apple or Google backup on Android), this game data may be included in the backup like other app data. That way your progress is kept when you set up a new device from the backup. The backup is made by Apple or Google according to your settings and under their own responsibility; I have no access to it.

Download from the App Store and Google Play

You get Ribbo from Apple’s App Store or from Google Play. When you download it, Apple or Google process data such as your account details and information about your device and the download under their own responsibility. Their privacy policies apply:

Usage and crash statistics from Apple and Google

If you’ve agreed in your device settings to share analytics data with app developers, Apple or Google provide me with aggregated statistics on how the app is used (such as the number of installations and sessions) and with crash reports. I receive this information anonymously, without names, email addresses or device identifiers; I can’t tell from it who you are. I use it only to find bugs and improve the app. Whether you share such data is up to you in the privacy or Google settings on your device, and you can change it there at any time.

3. Purchases (since version 1.2)

Since version 1.2 you can buy Ribbo Plus (see the terms of use). You don’t need a Ribbo account for this.

No payment details with me

Purchase, payment and billing are handled exclusively by Apple (App Store) or Google (Google Play) under their own responsibility; their privacy policies apply (see “Download from the App Store and Google Play” in section 2). I don’t receive any payment details. The app checks on your device whether you have Plus, based on the purchases Apple or Google report there, and remembers this only on your device. There is no server of my own for this; nothing is sent to me in the process.

On iPhone

On iPhone, offers, purchases and restoring purchases go through the operating system’s purchase service. The app itself doesn’t open a connection for this.

On Android

On Android, Google’s billing library (Google Play Billing) is part of the app. It sends technical data to Google when the Plus page loads the offers, when you buy, when you restore a purchase, when you manage your subscription and when the app starts on devices on which a purchase has already been started. Without one of these occasions, the app doesn’t call the library. Google processes this data under its own responsibility according to the Google Privacy Policy.

The legal basis is Art. 6(1)(b) GDPR: the requests serve to show you the offers at your request, to process your purchase and to unlock Plus in the app.

4. Your account (since version 1.1.0)

Since version 1.1.0 you can create an account in the app if you want to. It unlocks your rank in the daily puzzle, friends and, since version 1.5, the weekly league. You can create an account from the age of 16. If you’re younger, you need your parents’ consent. I process the following data only if you have an account.

Where the data is stored

Your account and everything connected to it is stored on my behalf by Supabase Pte. Ltd., 65 Chulia Street #38-02/03, OCBC Centre, Singapore 049513, in the Frankfurt am Main region (eu-central-1). There is a data processing agreement with Supabase under Art. 28 GDPR. Where Supabase processes data outside the EU, for example for operations and support from Singapore or the USA, this is based on the European Commission’s standard contractual clauses, which are part of this agreement (Art. 46(2)(c) GDPR). There’s more in the Supabase privacy policy.

Backups

Supabase makes a backup of the database every day so that the data can be restored after an outage or error, and keeps each backup for seven days. So anything that is deleted disappears from the backups after seven days at the latest. If I have to restore a backup, I then delete again whatever was deleted since it was made. To make this possible, I keep only the identifier of each deleted account (a random number, without a name or other details) and the time of deletion for 14 days, and then delete them. The legal basis is Art. 6(1)(f) GDPR; my legitimate interest is protection against data loss and making sure that what was deleted stays deleted.

Sign in with Apple

On iPhone, you sign in with Apple. The app only asks for your name, not for your email address. The following is stored:

The app uses the first name that Apple sends with your first sign-in only on your device, to prefill “Choose a name”; it isn’t stored. The purpose is your account; the legal basis is Art. 6(1)(b) GDPR, the user agreement under the terms of use. The data remains until you delete your account. Apple is responsible for the sign-in itself; the Apple Privacy Policy applies to it.

Session and logs

While you’re signed in, the app keeps a session: encrypted on your device, and at Supabase with your IP address and the app’s identifier (user agent). It is removed when you sign out and when you delete your account. Each time the app connects, Supabase also stores the IP address, the time, the function called and the user agent in logs, for at most seven days. The purpose is secure operation and troubleshooting; the legal basis is Art. 6(1)(f) GDPR, my legitimate interest is a secure and working service.

Your name

You choose your name yourself. Only your friends see it, not other players. The app and the server check it against blocked words. The legal basis is Art. 6(1)(b) GDPR. The name remains until you change it or delete your account; if it breaks the terms of use, I can reset it.

Daily puzzle

When you solve the daily puzzle with an account and a name, the app sends your result: the day, your time, when it arrived and whether it was sent later, the record of how you solved it (every change to the path with the playing time, pauses and the solved path), the time you solved it on your device, the app version and the platform. The server recalculates your time from the record and checks it for anomalies; times that look unusual don’t count for other players.

Sending attempts: your account and the time of each attempt to send a result, to protect against mass requests. They are deleted after one hour.

Game progress (since version 1.4.2)

Since version 1.4.2, with an account and a name, the app also stores your game progress with your account so that it comes back after a reinstall or on a new device as soon as you sign in. The following is stored:

The server doesn’t store your daily streak separately; it works it out from your daily results, the saved days and, if there is one, your streak from before the account whenever the app asks for it. Your streak from before the account only counts for what you see yourself, never with friends, in the weekly league or for points. The app syncs when you start it with an account, after signing in, when it comes to the foreground and as soon as a result is in; for each level the server keeps the better time and the higher position. Other players don’t see this data; what your friends see of it since version 1.5 is explained under “Playing together”.

Playing together (since version 1.5)

Since version 1.5 you play together with your friends. For this, your friends see the following, as long as you’re friends and neither of you has blocked the other:

Checking best times: Before your friends see a best time and before it earns points, the server replays its record and checks it against the rules of the game for anything suspicious, such as an impossibly fast time. If a record fails the check, the time stays with your account, but your friends don’t see it. For this I store your account’s identifier, the level, the time, the reason and the time of the check.

Weekly points: For each day the server stores what you earned points for: whether you solved the daily puzzle and kept your streak, how many new levels you cleared and how many best times you improved, and the total for the day. It works them out itself from your daily results and your checked level times; the app doesn’t send anything extra for this. The app also remembers on your device which week it last showed you the weekly summary for.

Statistics without personal reference: With an account, the app shows after the daily puzzle and on a level’s card how fast everyone was on average. For this the server works out the number of players and the median from all counting times of the day or all checked best times of a level, the median only from 20 times. The app receives only these two numbers, no individual times and no names.

Friends, blocking and reporting

The legal basis for the friend code and friendships is Art. 6(1)(b) GDPR. For blocks, failed attempts, reports and moderation it is Art. 6(1)(f) GDPR; my legitimate interest is protection against abuse and offensive content.

Suspended accounts

If an account breaks the terms of use, I can suspend it temporarily or permanently. I store the date and reason for the suspension. A suspended account can’t sign in and therefore can’t be deleted in the app.

The legal basis is Art. 6(1)(f) GDPR; my legitimate interest is protecting players from abuse and enforcing the terms of use.

Analysis in totals

To see how Ribbo is used and to improve it, I also analyse the account data in totals, for example how many accounts played on a day or in a week, how many come back the next day, how many have points in the weekly league and how the points are spread. I don’t collect any additional data for this. The only results are numbers across all accounts together, no analyses of individual people, and only I see the results.

The legal basis is Art. 6(1)(f) GDPR; my legitimate interest is running and developing Ribbo.

Deleting your account

You can delete your account in the app at any time (Me → Delete account). This immediately deletes your account with your name, game progress, weekly points, the details of failed checks, friend code, friendships, blocks, failed attempts, sending attempts and daily results including the record of how you solved them, as well as reports about you; your own reports remain without any link to you. If you signed in with Apple, your sign-in with Apple is also revoked; to confirm, you sign in with Apple once more. Logs expire after their retention period, backups after seven days at the latest. Your levels, times and streak stay on your device.

If you signed in with Google, you can also request deletion by email without the app; with an Apple Account you need the app for this. How this works and how I check that the request comes from you is explained under Delete account (in German).

Who receives the data

Supabase processes the data on my behalf; IONOS sends the notification email, which contains no personal data. Apple receives what is needed for signing in and for revoking it. Your friends see your name and your daily puzzle time and, since version 1.5, also your position on the path, your checked best times with stars and ghost and your weekly points. Beyond that, I don’t pass on any data and don’t sell any.

5. This website

No cookies, no tracking

This website doesn’t set cookies, doesn’t use analytics or tracking services and doesn’t load external fonts or scripts. There is JavaScript only on the invitation page (ribbo.de/f/…) and the challenge page (ribbo.de/h/…): a small script from this website shows the friend code or the level and time from the address there. It runs only in your browser and doesn’t transmit anything.

Hosting at Vercel and server logs

The website is hosted by Vercel Inc., 440 N Barranca Avenue #4133, Covina, CA 91723, USA. When you visit it, Vercel processes the technically necessary connection data on my behalf and stores it in server logs:

If you open an invite link (ribbo.de/f/…) or a challenge (ribbo.de/h/…), the friend code or the level and time appear in these logs as part of the requested page.

I need this data to deliver the website, protect it against attacks and find errors. The legal basis is Art. 6(1)(f) GDPR; my legitimate interest is a secure and working website. I don’t analyse the logs to identify visitors, don’t combine them with other data and don’t store them myself. In my Vercel account I can see them for at most one day. There is a data processing agreement with Vercel under Art. 28 GDPR.

Transfers to the USA

Vercel is a company based in the USA; the log data may therefore be transferred to the USA. Vercel Inc. is certified under the EU-U.S. Data Privacy Framework; according to the official list of the U.S. Department of Commerce, the certification is active (checked on 25 September 2026). For certified companies, the European Commission found an adequate level of data protection in Implementing Decision (EU) 2023/1795 of 10 July 2023; the transfer is therefore based on Art. 45 GDPR. In addition, the data processing agreement with Vercel contains the European Commission’s standard contractual clauses (Art. 46(2)(c) GDPR). There’s more in the Vercel privacy notice.

6. Contact by email

If you write to me at hallo@ribbo.de, I process:

Purpose and legal basis: I process this data to answer your request. The legal basis is Art. 6(1)(f) GDPR; my legitimate interest is answering your request.

Email provider: The mailbox hallo@ribbo.de is operated on my behalf by IONOS SE, Elgendorfer Str. 57, 56410 Montabaur, Germany. There is a data processing agreement with IONOS under Art. 28 GDPR.

Retention: I delete your message as soon as your request has been dealt with, unless statutory retention obligations prevent this.

7. Your rights

Where I process personal data about you, the General Data Protection Regulation (GDPR) gives you the right to

Right to object: You can object at any time, on grounds relating to your particular situation, to processing based on Art. 6(1)(f) GDPR (Art. 21 GDPR).

Just write to me at hallo@ribbo.de. Without an account, I have no data from the app; your progress is only on your device. If you have an account, tell me your name in the app. You can delete your account yourself in the app at any time.

8. Complaints to a supervisory authority

You have the right to lodge a complaint with a data protection supervisory authority (Art. 77 GDPR), in particular in the EU member state where you live or work or where the alleged infringement took place. The authority responsible for me is:

Der Landesbeauftragte für den Datenschutz und die Informationsfreiheit Baden-Württemberg (State Commissioner for Data Protection and Freedom of Information Baden-Württemberg)
Heilbronner Straße 35
70191 Stuttgart
Germany
www.baden-wuerttemberg.datenschutz.de

You can find the supervisory authorities of all EU member states in the list of the European Data Protection Board.

9. Changes

This privacy policy applies to all versions of Ribbo: section 2 to the app without an account, section 3 from version 1.2 to purchases of Ribbo Plus, section 4 from version 1.1.0 and only if you create an account. If what the app or the website processes changes, I adjust this policy beforehand and update the date at the top.