What the app collects
Your location, only while the app is open — and it only leaves your phone when you ask for a find-nearest.
The app uses Apple's standard "foreground-only" location permission. A fix is only used in three situations:
- You tap the ↺ Locate button — to drop the blue dot on the map.
- You use 🔭 Find nearest… (or the timeframe filter's find-nearest) — to ask "where's the closest sunny / shady bench, or place, from me?".
- When the app opens and you've already granted permission, it refreshes your position automatically — to place your blue dot and open the map at your local area. That automatic fix is used entirely on your phone; nothing is sent.
When you ask for the nearest bench or place, the app sends one HTTPS request to the server with your latitude and longitude. The server uses those coordinates only to compute the nearest matching bench, then returns the bench. The coordinates are not stored anywhere. The server is configured to omit lat/lon from its access logs.
No background tracking, no continuous fixes, no movement history.
Crash reports
If the app hits an error, it sends a one-off crash report to the server, so the bug can be found and fixed. A report contains only the error and basic build context:
- Message and stack trace — what failed and where in the code.
- Build context — platform (iOS / Android), OS version, app version, and update-bundle id. None of it identifies you.
A report never includes your location, any device or advertising identifier, or any other personal data. Reports are written to the server's logs and never stored by us — they live only in the hosting provider's rolling log window (a few days), are not linked to your IP address, and can't be tied back to you.
Bench and place reports
If you report a problem with a bench — or a place like a café or playground — that report goes to the server so the data can be corrected. A report contains:
- What you reported — that a bench is gone, in the wrong spot, or missing at a spot, or that a place is gone, in the wrong spot, or has the wrong details.
- A location — the bench's or place's coordinates, or the spot you marked for a missing bench.
- Your note — only the optional text you choose to type.
- Build context — app version, platform, and language. None of it identifies you.
- A random install id — an identifier made up on your device the first time you report, so the server can tell when several people report the same thing. It is linked to nothing, identifies no one, and resets if you reinstall the app.
There is no human reviewer. When enough independent bench reports agree, the map updates itself — a removed bench stops showing, a misplaced pin moves — within strict daily limits, and every change can be undone. Place reports aren't applied to the map automatically — they're only passed on to OpenStreetMap for the mapping community to review.
Your note may be published publicly to OpenStreetMap — the open map database the bench and place data comes from — so the mapping community can fix it at the source. Don't put personal information in a note.
Reports are kept for up to 180 days, and records of automated actions for 90 days after they are undone. No IP address is logged or stored with a report.
What the app does NOT collect
- No accounts, no logins, no profiles
- No analytics
- No cookies, no device fingerprinting
- No advertising identifiers
- No persistent user ID for using the map — bench and place reports carry a random, resettable install id (see Bench and place reports above)
For everything except a bench or place report, you are an anonymous, interchangeable HTTPS client to this server — we can't tell two requests apart, and we don't try to. A bench or place report is the one exception: it carries a random install id, on purpose, so reports that agree can be counted.
What the server keeps
- Bench data, building footprints, tree canopy — from OpenStreetMap, the Danish Datafordeler, and the Danish Map Agency's elevation model. Public data, no user information.
- Cloud forecast — fetched periodically from Met Norway. Also entirely user-free.
- Rate limits — to prevent abuse, the server temporarily holds a counter of requests per source IP. This counter is in memory only and resets continuously; nothing is written to disk.
Where your data goes
When you use the app, your phone talks to:
- The Bench de Soleil server (hosted on fly.io, region Stockholm) — for bench data, weather, find-nearest, and the map itself: the vector map tiles and the open-source map libraries are served from this same server, so no third-party map provider sees you. Server source is open and inspectable.
- Apple Maps (only when you tap a bench's "Walk here →") — opens with the destination bench's coordinates so Apple can compute walking directions from your current location.
No other third parties are contacted.
Settings stored on your phone
The app remembers your preferences on your device only — for example your cloud-tolerance threshold and what time the slider opens at. These never leave your phone. Deleting the app removes them.
Legal basis
The little data described above is processed on two bases under the GDPR (Article 6):
- Your consent — for using your location (you grant the permission and trigger each fix yourself) and for submitting a bench or place report. Withdraw it any time: turn off location in iPhone Settings, and simply don't submit reports.
- Our legitimate interest — in keeping the service available and free of abuse (the in-memory rate-limit counter) and in finding and fixing bugs (crash reports). Neither stores personal data.
Your rights
Under the GDPR you can access, correct, delete, restrict, or object to the processing of your personal data, and ask for portability. Because the app stores almost nothing about you and never links data to your identity, most of these have little to act on:
- Stop sharing location: revoke permission any time in iPhone Settings → Bench de Soleil → Location. The app keeps working — only the "find nearest bench from me" features stop.
- Erase all on-device data: uninstall the app. The saved settings and any cached map tiles go with it.
- Your reports: a report carries only a random install id linked to nothing, so we genuinely can't tell which reports are yours — there's nothing to look up, hand over, or delete on request (GDPR Article 11). The id resets if you reinstall, and every report auto-expires within 180 days.
- Complain to a regulator: if you believe your data rights weren't respected, you can lodge a complaint with Datatilsynet, the Danish Data Protection Agency (datatilsynet.dk).
- Ask anything: see contact below.
Children
This app has no profile, no chat, no social features, no advertising. It also collects no data fitting GDPR's "personal data of children" definition. Children aren't a special category here because there's nothing special about anyone — we have no way to tell who you are.
Changes
If the app's data handling changes meaningfully, this page is updated and the date at the top revised. Active testers are notified by email at the same time.
Contact
Bench de Soleil is run by Jakob Storm Rodenberg (Denmark) — the data controller under the GDPR. For any privacy question, or to exercise one of the rights above: jakobrodenberg@gmail.com.