Privacy Policy

Last updated: 20 September 2026

Event Bingo ("the App") is developed and operated by Lukas Oberbeck ("we", "us", "our"). This policy explains what data the App handles, where it goes, who can see it, and what you can do about it. It covers the App on iOS and Android and the public game leaderboard on our website. The website has its own legal notices.

The short version

1. Who is responsible

The controller for the data processing described here is:

2. Your account

Accounts are managed by Firebase Authentication, a Google service.

3. Game data — and who can see it

Game data is stored in Cloud Firestore, a Google database. It consists of:

A game is as private as its link. Anyone who has a game's invite link or ID can open it — without an account — and see the game's details and every player's display name, user ID, squares, marks, marking times and comments. This is how invitations work and how the public leaderboard on our website works. Only share the link with people you want in the game, and do not put anything into a game that you would not want everyone with the link to read.

We — the operator — have access to the provided data.

4. Push notifications

The App can notify you about your games: someone joined or left, marked or un-marked a square, got a bingo, a game starts in 15 minutes, a game is live, or a game was deleted. Delivery uses Firebase Cloud Messaging (Google) and, on iOS, Apple Push Notification service. The messages are composed by our backend, which runs on Cloudflare Workers.

You can allow or withdraw the notification permission at any time in your device's settings.

5. iOS: widgets, Siri, Spotlight and Live Activities

On iOS the App integrates with the system so that your games are available without opening the App. There is no equivalent on Android.

A copy of your games on your device. The App keeps a copy of your active games in a storage area that is shared between the App, its widgets, its notification extension and Siri. The copy contains, for every active game, the game's name, description, start time and creator, and for every player in it their user ID, display name, rank and progress, the text of their squares and which are marked. It also lists the names and descriptions of your archived games. The copy is stored as plain data protected by the device's normal storage protection. It is updated while the App runs and, in the background, by the App's notification extension whenever a game notification arrives. It is deleted when you sign out or switch accounts.

6. Square suggestions

When creating your bingo card you can ask for suggestions. The App then sends the game's name and description, the squares you have already written and the squares other players in the game have written to our backend, which generates suggestions from them automatically. The request is signed with your account so our backend can check that it comes from you and apply its rate limit; your user ID and, on a linked account, your e-mail address are part of that signature. No user IDs, display names or comments are used for generating suggestions. The request is marked as not to be stored, and our backend keeps neither the request nor the result (backend logs: section 4). The App briefly reuses a result on your device so the same request is not sent twice; the cached entries, which include the game's name and description, are cleared later. We can switch this feature off for everyone; it is only offered when it is switched on.

7. Usage statistics (Matomo)

The App uses Matomo, an open-source analytics tool that we host ourselves (hosting provider: section 14).

Anonymous by default

Out of the box, the App reports usage events (screens viewed and in-app actions) cookielessly and without an identifier: no analytics identifier is created or stored on your device and none is sent, so sessions cannot be linked to each other or to your account. Every report includes the App version, your device model and operating system version, screen size, language, the local time, and the date the App was first opened on the device. Events about signing in name the provider used (Google or Apple). Game IDs and feedback text are included only as one-way hashes. IP addresses are shortened before analysis. Game names, square texts, comments, display names and e-mail addresses are never sent. If you sponsor the App, the purchase, its store product ID and its outcome are reported (no price, receipt or transaction number).

Optional: statistics linked by a random ID

When you open your first game the App asks whether you want to share usage statistics. If you agree, the App creates a random analytics ID, stores it privately with your account, and attaches it to your usage events — including the events of the session in which you agree. This lets us see your usage as one continuous profile across sessions and devices. The ID is random and cannot be derived from your account.

You can withdraw at any time in Settings → Privacy. Withdrawal deletes the stored analytics ID; events collected so far remain in Matomo but can no longer be attributed to you. If you later opt in again, a new ID and a fresh profile are created. If you decline, the App may ask once more after at least 30 days; a second decline is final.

The legal basis for linked statistics is your consent (Art. 6(1)(a) GDPR); for anonymous statistics it is our legitimate interest in understanding and improving the App (Art. 6(1)(f) GDPR).

8. Crash reports (Firebase Crashlytics)

The App uses Firebase Crashlytics, a crash reporting service by Google, to detect and diagnose crashes and malfunctions. When a crash or error occurs, the following may be sent to Google: the stack trace and the App's technical state at that moment, device model, operating system version, orientation and free memory and disk space, the App version, an installation identifier created by Crashlytics for the App installation, and the time of the event. Error details can include technical identifiers such as game or user IDs and server responses. The App does not attach your account ID or e-mail address to crash reports.

Crash reporting is on by default and can be switched off in Settings → Privacy; the switch takes effect immediately. The legal basis is our legitimate interest in providing a stable App (Art. 6(1)(f) GDPR).

9. Sponsoring (in-app purchases)

The App offers optional subscriptions to support its development. Payments are handled entirely by Apple's App Store or Google Play. We receive no payment details and store nothing about your purchase on our servers; the App checks your subscription status with the store each time it starts. What a purchase adds to our usage statistics is described in section 7.

10. Feedback and support

Feedback sent from within the App is stored in our database with your user ID, the feedback type, your text, the App version and the time. It is not deleted when you delete your account. When you e-mail us, we keep the correspondence as long as needed to handle your request.

11. Data on your device

Besides the shared copy described in section 5, the App stores on your device: your settings (sounds, design, consent decisions, crash-reporting switch), the random device identifier used for push notifications, the date of first launch, a short-lived cache of square suggestions, and technical state such as which games have shown a bingo recap. Searching for a game in the App happens entirely on your device and searches only game names and descriptions.

12. How long we keep data

We do not delete data automatically. Games, cards, progress, comments, profiles and feedback stay in our database until you delete them — by leaving or deleting a game, or by deleting your account (section 13). The shorter retention periods stated in sections 4 and 5 apply to the data named there. Google, Cloudflare and Hetzner apply their own retention to the services they run for us.

13. Export and deletion

Export. In Settings → Data Management (and via Siri) you can export your data as a JSON file and save or share it wherever you choose. The export contains your user ID, your profile, your game lists, your notification settings and mutes (without device tokens), some locally stored technical data (first-launch date, migration state), and every game you are in including the other players' cards, marks and comments in those games.

Deletion. In Settings → Data Management you can delete your account. If your account is linked to Google or Apple this requires a fresh sign-in. The App then: removes you from every game you did not create and deletes your card and progress there; deletes every game you created; deletes your profile, account data, analytics ID and push-token entries; ends Live Activities and unregisters their tokens; clears the on-device copy, the Spotlight entries and the Siri suggestions on that device; and finally deletes the account itself. Please note:

14. Who receives data

We do not sell or rent data. Data is processed by these providers on our behalf or as required to run the App:

Google and Cloudflare are companies based in the USA; data may be processed there. Google is certified under the EU-U.S. Data Privacy Framework. For the other providers, please see their policies linked above.

The App contains no advertising and no advertising or tracking SDKs, and does not use Google Analytics.

15. Your rights

Under the GDPR you have the right to access the personal data we hold about you, to have it corrected or deleted, to restrict or object to its processing, to receive it in a portable format, and to withdraw any consent you have given with effect for the future. The export and deletion tools in the App (section 13) and the switches in Settings → Privacy cover most of this directly; for anything else, contact us at the address in section 1. You also have the right to lodge a complaint with a data protection supervisory authority.

16. Changes to this policy

We update this policy when the App changes. The current version is always available from within the App and at this address; the date at the top tells you when it last changed.


If you have any questions about this policy, please contact us.

back