Last updated: 2026-10-11
Short version: Stumble has no accounts, no ads and no cross-site tracking. For anonymous visit statistics I use a cookieless analytics tool. I only process what's needed to put free stuff on a map.
1. Who's responsible
Simona Ziauberyte, 10249 Berlin, Germany (full address in the Impressum). Email: hello@stumble.city
2. What I process, and why
2.1 Visiting the app (server logs)
When you open Stumble, your browser sends technical data to the hosting provider: IP address, date and time, the page requested, browser type and operating system. This is needed to deliver the app and keep it secure. Legal basis: Art. 6(1)(f) GDPR. Vercel keeps these logs for a short period and then deletes them.
2.2 Your device ID (cookie)
Stumble has no accounts. The first time you visit, I set a cookie called device_id containing a random number. It isn't linked to your name, email or phone. It lets the app recognise what you did on this device (your posts, favorites, history) and limits abuse. It lasts 1 year from your last visit, is sent only over HTTPS and can't be read by scripts. It's technically necessary, so no consent is required (§ 25(2) No. 2 TDDDG). Legal basis: Art. 6(1)(b) and (f) GDPR.
If you use “Keep your Stumbles” on your profile, I create a random code and store only a hash of it, with your device ID and when it was made and last used. The code lets you use the same device ID in another browser; anything you already did there is moved over to it. The code is only in your link, not in my server logs. “Delete my data” removes it. Legal basis: Art. 6(1)(b) GDPR.
You can optionally save your Stumbles with a passkey. I then store a public key, an ID for the passkey, its provider (e.g. iCloud Keychain) and when it was created and last used, together with your device ID. Your face, fingerprint or screen-lock code never leave your device; I learn nothing about them. “Remove” on your profile or “Delete my data” deletes this. Legal basis: Art. 6(1)(b) GDPR.
2.3 Posting a Stumble
When you post, I store:
- the photos you upload (max. 5),
- the category, optional details and your note (max. 200 characters),
- the exact point you set on the map, and the street/neighbourhood name looked up for it,
- your nickname, only if you turn on “Show my nickname” when posting; it is then shown publicly on that post and deleted with it,
- timestamps, whether it's ongoing, “still there?” confirmations, edits and status changes,
- your device ID, so you can manage the post.
Posts are public. Anyone can see the photos, note and exact spot without logging in, and photos are stored at publicly accessible web addresses. Photos are re-saved in your browser before upload, which removes hidden metadata such as GPS coordinates and camera info. Please don't show faces, licence plates or doorbell names, and keep in mind: if you post in front of your own home, the map shows that spot. Legal basis: Art. 6(1)(b) GDPR.
2.4 Favorites, views and confirmations
When you heart an item, confirm it's still there, or mark it as gone, I store that with your device ID. When you open someone else's Stumble, I store once that this device has seen it, so the view counter counts each person only once. If a poster brings back a Stumble you marked as gone, I store that with your device ID for 30 days; after several of these, your “gone” reports stop ending posts. This protects posts from false reports. Legal basis: Art. 6(1)(b) and (f) GDPR.
2.5 Your location
If you allow it, Stumble uses your location to centre the map and show distances. Distances are calculated on your device, and your last location is stored there. To show your neighbourhood name, the app sends your location rounded to about 1 km to my server, which looks the name up with Nominatim. When you post, the app sends it once more, also rounded to about 1 km, so the server can check you're near the pin. Your location isn't stored in the database. You can revoke access at any time in your browser or phone settings.
2.6 Stored on your device only
Your browser's local storage holds: drafts, your nickname, your last location, language, dark-mode and sidebar settings, and small flags (intro seen, install and notification prompts, how often you tapped “Not now”). I can't see them. They disappear when you clear your browser data.
2.7 Abuse protection
To prevent spam, I count certain actions (e.g. posts per hour) per device ID and IP address at Upstash. The counters expire after one hour at the latest. Legal basis: Art. 6(1)(f) GDPR.
2.8 Anonymous visit statistics (Vercel Web Analytics)
To see which pages get used, I use Vercel Web Analytics. It records page views with the page address, referrer, country, browser, operating system and device type. It sets no cookies and stores nothing on your device. Visitors are only told apart by a hash of the IP address and request data that is discarded daily, so I can't recognise you or follow you across days or websites. I only see aggregated numbers. Legal basis: Art. 6(1)(f) GDPR (legitimate interest in improving the app).
2.9 What happened to your Stumble (activity)
So you can find out what happened to your Stumble, I store events about your post such as “someone saved it”, “confirmed still there”, “someone took it” or “not there anymore”, with your device ID as the recipient. You only see counts, never who did something, when exactly or where. The device that taps “I took it” is stored on the server so only that person can say thanks or share a photo; it is never shown. On ongoing giveaways, “I took something” stores your device ID and the time, so you count once a day and can say thanks; the poster only sees the number. “Delete my data” removes these entries. Legal basis: Art. 6(1)(b) and (f) GDPR.
2.10 Thank-yous and new-home photos
If you took something, you can say thanks with a fixed reaction (e.g. “Danke 🙏”). Your nickname is only sent if you choose “Show my nickname”; it is then shown to the person who posted the Stumble. You can also upload a photo of its new home. Like all photos it is re-saved before upload (no GPS or camera data). By default only the person who posted sees it; it becomes public on the Stumble's page only if you choose “Show it on Stumble”. The poster can hide it. Please don't show faces or anything that shows where you live. Legal basis: Art. 6(1)(a) (your choice) and (b) GDPR.
2.11 Reports
When you report a Stumble, I store the reason, your optional text, your device ID and the time, so I can review it (EU Digital Services Act). Legal basis: Art. 6(1)(c) and (f) GDPR. If two different devices report the same Stumble, it is hidden automatically until I've reviewed it; the poster sees a note. Reports are deleted together with the Stumble they're about.
2.12 Contact and feedback
If you email me, I use your address and message only to answer you, and delete them when the matter is closed, unless I have to keep them longer for legal reasons. The feedback form runs on Google Forms; what you enter there is processed by Google. Legal basis: Art. 6(1)(b) or (f) GDPR.
2.13 Notifications and alerts (optional)
If you turn on notifications, your browser gives me a push address (a long, random URL from your browser's push service) and two keys. I store them with your device ID and your language, so I can tell you about your Stumbles, the things you saved and your alerts. Messages are delivered through your browser maker's push service (Google Firebase Cloud Messaging for Chrome/Android, Apple Push Notification service for Safari/iPhone, Mozilla Push Service for Firefox). These services receive the notification text and the push address, never your device ID or location.
I keep a log of sent notifications (type, item, time, and whether you tapped it) to avoid duplicates, keep the daily limit and see which notifications are useful. Your settings (which notifications, quiet hours) are stored with your device ID. If you save an alert, I store its centre rounded to about 100 m, the radius, the categories, an optional keyword and the neighbourhood name.
What alerts look for is also used anonymously: after you post, I tell you how many alerts nearby match your Stumble (a number, never who). And the alert sheet shows what people in a neighbourhood are hunting for, but only words or kinds of things that at least three different devices want there, so no one's alert can be picked out. Legal basis for this: Art. 6(1)(f) GDPR (legitimate interest in bringing what's wanted and what's offered together).
You can turn notifications off at any time in Settings → Notifications or in your browser, and pause or delete alerts there; “Delete my data” removes all of it. Legal basis: Art. 6(1)(a) GDPR (your consent when you turn them on) and § 25(1) TDDDG.
3. Services I use
| Service | What for | Data | Location |
|---|---|---|---|
| Vercel Inc. (Web Analytics) | Anonymous visit statistics | Page views, country, browser/device type; daily hash instead of a cookie | USA; EU-US Data Privacy Framework |
| Vercel Inc. | Hosting the app | IP address, request data, server logs | EU (Frankfurt); US-based provider, EU-US Data Privacy Framework |
| Supabase Inc. | Database and photo storage | Posts, photos, new-home photos, device IDs, favorites, views, activity, thank-yous, reports, push addresses, notification settings and log, alerts | EU (Ireland) |
| Upstash Inc. | Abuse protection (counters) | Device ID, IP address, timestamps | EU (Frankfurt); US-based provider |
| OpenFreeMap | Map tiles | Your IP address and the map area you view (your browser loads tiles directly) | [[check]] |
| komoot GmbH (Photon) | Address search | Your IP address and what you type in the search field | Germany |
| OpenStreetMap Foundation (Nominatim) | Street/neighbourhood names | Only coordinates, sent from my server (your location rounded); no data about you | UK (adequacy decision) |
| Google (Firebase Cloud Messaging), Apple (Push Notification service), Mozilla (Push Service) | Delivering notifications (only if turned on), depending on your browser | Notification text, push address | USA/EU; EU-US Data Privacy Framework or Standard Contractual Clauses |
| Google Ireland Ltd. (Google Forms) | Feedback form (optional) | What you enter in the form, IP address | EU/USA; EU-US Data Privacy Framework |
I have data processing agreements with Vercel, Supabase and Upstash where required. Transfers to the USA are based on the EU-US Data Privacy Framework and/or the EU Standard Contractual Clauses. Fonts are served by Stumble itself; no connection to Google Fonts is made.
4. How long I keep things
- Posts: on the map until marked as gone or expired (3 days, 7 for ongoing giveaways). After that they stay stored for your history. You can delete your post at any time (“⋯” → Delete on your post). Photos are deleted automatically 30 days after an item leaves the map; the rest (category, place, times) stays for your history. [[active once CLEANUP_ENABLED is set in Vercel]]
- Favorites, views, confirmations, activity and thank-yous: until the item or your data is deleted.
- New-home photos: like the Stumble's photos (at the latest 30 days after it leaves the map), and immediately if the poster confirms it's still there.
- Push address: until you turn notifications off or the push service reports it invalid. Settings and alerts: until you change or delete them. Log of sent notifications: 90 days. Waiting notifications (e.g. during quiet hours): until they are sent.
- Device cookie: 1 year from your last visit, or until you delete it.
- Abuse counters: max. 1 hour.
- Server logs: a few days (hosting provider).
- Emails: until your request is resolved.
5. Your rights
You have the right to access (Art. 15), rectification (Art. 16), erasure (Art. 17), restriction (Art. 18), data portability (Art. 20) and to object (Art. 21 GDPR). Because there are no accounts, I can only find your data through your device ID. To delete your data: use “Delete my data” at the bottom of your profile page. It removes this device's posts and their photos, favorites, views, confirmations, reports, stickers, the thank-yous and new-home photos you sent, push addresses, notification settings and alerts, and gives the device a new ID. For anything else, email hello@stumble.city. You can also complain to a data protection authority, for example the one responsible for me: Berliner Beauftragte für Datenschutz und Informationsfreiheit, Alt-Moabit 59–61, 10555 Berlin, www.datenschutz-berlin.de.
6. No tracking
Apart from the anonymous, cookieless statistics above: no advertising, no tracking pixels, no profiles, no selling of data. If that ever changes, I'll update this page first and ask for your consent where required.
7. Changes
If Stumble changes, this page will too. The date at the top shows the latest version.