Privacy Policy
As of: 26 October 2026
Unofficial translation. This is a convenience translation. The legally binding version is the German original (datenschutz); in case of any discrepancy, the German version prevails.
1. Controllers
The controllers within the meaning of the Swiss Data Protection Act (FADP) are (simple partnership):
yuKast – Dennis Wilsmann & Mate Kurtin c/o Dennis Wilsmann, Hungerstrasse 58, 8832 Wilen bei Wollerau, Switzerland E-mail: [email protected]
For privacy enquiries: [email protected]
2. Scope
This policy follows the revised Swiss Federal Act on Data Protection (FADP, in force since 1 September 2023) and the Data Protection Ordinance (DPO). It applies to the apps “popUP by yuKast!” (“popUP” for short) and “yuKast” and to the web pages at yukast.app (e.g. shared contributions, verification pages and event pages). Where processing concerns only one of the two apps, this is stated in the relevant section.
3. What personal data we process
We process personal data in accordance with the principles of good faith, proportionality, purpose limitation and transparency (Art. 6 FADP). We obtain consent wherever the law or the feature requires it.
3.1 Use without an account
- App: both apps. Feed and shared contributions exist in yuKast; events, booths and the search exist in popUP.
- Scope: you can also view the map, feed, shared contributions, events, booths and the search in event offerings without an account.
- Data: we do not create a profile for this. Only technical connection data arises (see 3.11) and, if you allow it, your location for showing contributions near you (see 3.3).
3.2 Account and authentication
- App: both apps (one account, see 3.2a). The anonymous session without an e-mail address exists only in popUP.
- Data: e-mail address, chosen username, sign-in/session tokens. For sign-in we send you a one-time code or sign-in link by e-mail.
- Claiming a booth without an account: if, as an exhibitor, you claim a booth via code or QR without creating an account, we create an anonymous session without an e-mail address for it.
- Purpose: providing the user account, sign-in/sign-out, attribution of your contributions.
- Processor: Supabase (authentication, e-mail delivery, database), see section 4.
3.2a Two apps, one account
- Apps: we operate two apps: “popUP by yuKast!” (events, markets and booths; “popUP” for short) and “yuKast” (location-based photo and video contributions, “Kasts”). Both apps and the web pages at yukast.app are run by the same provider (section 1) with the same server, the same database and the same sign-in service (Supabase).
- One account per person, membership per app: you have one account (e-mail address, username). It is enabled per app. When you first sign in to an app, we record your membership there (user identifier, app, time, origin: first sign-in, confirmation in the second app or support). In the other app, your account is initially not enabled; the app tells you so. An anonymous session without an account (see 3.2) does not receive a membership.
- Second app, welcome step: if you deliberately sign in to the second app with your account, you see a one-time welcome step there. It shows your account and your name, links to the Terms of Use and the Privacy Policy, and states that moderation and account deletion apply to both apps. Only when you confirm “Continue with this account” do we enable your account for this app and store the membership with the time of confirmation. Without confirmation, your account stays in the previous app only; in a support case we can enable it at your request. In yuKast, your name becomes publicly visible with your first Kast.
- Across both apps: because the account belongs to the person, moderation, reports, blocks and suspensions apply in both apps. If you are suspended in one app, this also takes effect in the other.
- Separate per app: push notifications (the device token carries the app identifier; notices about Kasts go only to yuKast, notices about events and booths only to popUP, account and moderation messages to all devices of your account) and content: Kasts currently exist only in yuKast, events and booths only in popUP.
- Deletion: if you delete your account, it is deleted for both apps, including the memberships (see section 6).
- Purpose: access control per app, attribution of your content, uniform moderation and deletion.
3.3 Location data
- App: both apps. Location when creating a contribution and place name: yuKast only. Navigation to a booth: popUP only.
- Data: geo-coordinates (latitude/longitude) and time of capture of a contribution; approximate location to show contributions near you. Contributions can only be created with a current, precise GPS location of your device.
- Place name: to give a contribution a place name (e.g. the city), we transmit the contribution's coordinates to the Nominatim service of the OpenStreetMap Foundation (without any user identifier), see section 4/5.
- Purpose: core feature — contributions are geo-located and shown by proximity.
- Consent: you control location sharing via your device permissions and can revoke it there at any time.
- Navigation: if you choose "Navigate to the booth", we open Apple Maps or Google Maps with the booth's position as the destination. The privacy terms of their providers apply to your use of these apps.
3.3a Location while the app is open: presence at the market and events near you
App: popUP only.
If you switch it on in the settings under “Notifications”, popUP uses your location while the app is open to send you relevant notifications. There is no background tracking. The app reports your location at most every 5 minutes and only with an account. Both features are off by default. - Promotions at the market: you receive promotion notifications from booths of the event whose grounds you are on right now. We only store your user ID, the event and the time of your last report, no coordinates. - Events near you: we store your last location, rounded to about 1 km, with a timestamp (one entry per person). We use it to notify you when an event near you has opened, at most once per event and day and not at night. In addition, without any location, we store which events you received such a notification for. - Purpose: sending these notifications only. No analysis, no disclosure, no advertising. - Consent: by switching it on; revocable at any time. If you switch a feature off, we delete the related data immediately. You also control location access through your device's permissions.
3.4 Photo and video uploads
- App: yuKast (Kast contributions) and popUP (booth photos).
- Data: images/videos you capture or select (including audio track for videos) and associated metadata (e.g. capture source, time of capture, device model).
- Purpose: publishing your contributions.
- Storage and delivery: Amazon Web Services (AWS S3), Frankfurt region
(
eu-central-1); the media are delivered via the AWS CloudFront content delivery network, see section 4.
3.5 Sharing and authenticity seal
- App: yuKast only.
- Data: when you share a contribution, we generate an image or video with a
verification code (e.g.
YK-XXXX-XXXX). Anyone who checks the code at yukast.app/v/ sees whether the contribution was captured live with the yuKast camera, the place name and the time of capture — never the exact coordinates. If the contribution is deleted or hidden, the verification page no longer shows any details. - Reach measurement: for each share we record that a share took place (your user identifier, time, channel) and whether the shared link was opened. We do not store IP addresses or device identifiers in doing so.
- Purpose: proof of authenticity of shared content; evaluating how often shared content is opened.
3.6 Events and booths
- App: popUP only.
- Data: for events (e.g. flea markets), we process for exhibitors the booth name, description, photos, offerings/inventory, prices and the booth's position, as well as the assignment of the booth to the account or anonymous session.
- Public: these booth details are visible to everyone in the app and on the event page (yukast.app/e/…), even without an account, and are searchable.
- Purpose: presenting events, booths and offerings; searching for offerings.
- Saved list (“Gemerkt”): booths you save with the heart are stored by the app on your device (one list per account, one for guests). With an account, the app additionally reports the booth to us: we store which user identifier follows which booth (booth, user identifier, time). As a guest, the list stays on the device only and is carried over when you sign in. The purpose is the promotion notification from a saved booth to you (can be switched off in the settings under “Notifications”, on by default); for this we keep a log of notifications sent (identifiers and time only). Exhibitors see only the number of followers, not who follows. If you remove the heart, we delete the follow.
3.7 AI-assisted analysis and translation
- App: both apps. Scene description and tagging exist for Kast contributions (yuKast); capturing offers and prices, description suggestions and translation exist for booths (popUP). Moderation screening runs in both apps.
- Data: every uploaded image/video is analysed automatically. For booth photos we additionally detect offerings and prices and suggest descriptions. Booth offerings and prices are automatically translated into the other app languages. For this we use your device's language setting.
- Purpose: automatic scene description, tagging (search), moderation checks (detection of impermissible content), capture of booth offerings, and translation.
- Recipient: Anthropic (the "Claude" model) — content is transmitted to Anthropic for analysis. Disclosure abroad (USA), see section 5.
3.8 Map display
- App: both apps. The event web pages with the site plan belong to popUP.
- Data: when you use the map view in the app, map tiles are loaded from Google (Google thereby processes technical connection data, e.g. IP address). On the event web pages (yukast.app/e/…), your browser loads the background of the site map as an image directly from Google (Google Maps Static API); Google thereby also processes technical connection data such as the IP address. Your search terms and selected booths are not sent to Google.
- Purpose: displaying the map and the surroundings in the site map.
- Recipient: Google (Google Maps), see section 4/5.
3.9 Push notifications
- App: both apps, with a separate device token per app (see 3.2a). Notices about new Kasts only in yuKast, notices about events and booths only in popUP.
- Data: device push token and the app language (for notifications in your language).
- Location on the token: if you have allowed location access, we store the location last reported in the foreground together with the token (a single point, no trail; never the map's fallback position). yuKast uses it so that notices about new Kasts reach only people nearby (radius 25 km); if the location is missing or older than 24 hours, the notice is sent without a distance. A new registration with a current location overwrites the value; on sign-out we delete the location and deactivate the token. When you delete your account, all tokens and the log of notifications sent are deleted.
- Purpose: sending notifications (e.g. activity near you), only if you enable push.
- Recipient: Google Firebase Cloud Messaging, see section 4/5.
- Consent: via enabling it; revocable at any time in the settings.
3.10 Error diagnostics and status messages
- App: both apps.
- Data: technical diagnostic data (error messages, device/app info). For status and outage notices, the app retrieves a configuration from Google Firebase Remote Config (Google thereby processes technical data such as the IP address and an app installation identifier).
- Purpose: stability, troubleshooting and information about outages.
- Recipient: Sentry; Google (Firebase Remote Config), see section 4/5.
3.11 Connection data and abuse protection
- App: both apps.
- Data: when the app interfaces and the web pages at yukast.app are accessed, technical connection data arises (e.g. IP address, time, requested address, language setting of the browser or device). The web pages at yukast.app are delivered via Cloudflare.
- Purpose: delivering the content, security and protection against abuse. To limit excessive access, we count requests per IP address or per account. These counters are held in working memory only and expire after the respective time window (one hour at most).
- Recipient: Cloudflare, see section 4/5.
4. Disclosure to third parties / processors
| Service | Provider | Purpose | Seat/Region |
|---|---|---|---|
| Supabase | Supabase Inc. | Auth, e-mail delivery, database | EU (AWS eu-central-1 / eu-west-1) |
| AWS S3 | Amazon Web Services | Media storage | EU (eu-central-1, Frankfurt) |
| AWS CloudFront | Amazon Web Services | Media delivery (CDN) | worldwide (edge locations) |
| Claude | Anthropic PBC | AI analysis of media, translation | USA |
| Google Maps | Map display | USA / EU | |
| Firebase Cloud Messaging | Push notifications | USA / EU | |
| Firebase Remote Config | Status and outage notices | USA / EU | |
| Sentry | Functional Software, Inc. | Error diagnostics | USA (EU region available) |
| Cloudflare | Cloudflare, Inc. | Delivery of the web pages at yukast.app | worldwide (edge locations) |
| Nominatim | OpenStreetMap Foundation | Place name for coordinates | United Kingdom |
We have corresponding contracts for processing on our behalf (Art. 9 FADP) in place with our processors. The OpenStreetMap Foundation is not a processor; we pass only coordinates without any user identifier on to it.
5. Disclosure abroad
Some services process data in the USA or outside Switzerland. Since 15 September 2024 the Federal Council recognises the Swiss–U.S. Data Privacy Framework (Swiss-U.S. DPF): transfers to US companies certified under it enjoy adequate protection. Where a service is not DPF-certified, we base the transfer on the Standard Contractual Clauses (SCC) recognised by the FDPIC (Art. 16 et seq. FADP).
| Service | Safeguard for the disclosure abroad |
|---|---|
| Google (Maps, FCM, Remote Config) | Swiss-U.S. DPF + SCC |
| AWS (S3 Frankfurt, CloudFront) | Storage in the EU; Swiss-U.S. DPF + Swiss addendum with SCC |
| Sentry | Swiss-U.S. DPF + SCC |
| Anthropic (Claude) | EU-U.S. DPF + Standard Contractual Clauses (in the DPA) |
| Supabase | Hosting in the EU; EU Standard Contractual Clauses (2021/914) in the DPA |
| Cloudflare | Swiss-U.S. DPF + SCC |
| OpenStreetMap Foundation (Nominatim) | United Kingdom — recognised as adequate by the Federal Council (Annex 1 DPO) |
6. Retention
- Account data: for the duration of the account.
- Contributions/media: until deleted by you or by moderation. After deletion, content is first hidden (soft delete) and the associated media files are permanently removed from storage after 30 days.
- Booth details: until the booth or the event is deleted.
- Counters for abuse protection: one hour at most, in working memory only.
- Presence at an event (section 3.3a): 3 hours after the last report. Rounded last location (section 3.3a): 14 days, then deleted automatically.
- Log of sent nearby notifications (section 3.3a, IDs and time only): until the account is deleted.
- Location on the push token (section 3.9): until the next registration with a current location or until sign-out. Push tokens and log of notifications sent: until the account is deleted.
- Follows of saved booths and log of promotion notifications sent (section 3.6, identifiers and time only): until you remove the heart, the booth is deleted, or the account is deleted.
- On account deletion, your content is deleted/anonymised and the auth account is removed, in both apps; your app memberships (3.2a) are deleted too. Your booths are deleted as well; shares remain in the reach measurement only without your user identifier.
7. Your rights
Under the FADP you have in particular the right to information (Art. 25 FADP), rectification (Art. 32 FADP), deletion or destruction of your personal data, and to data release/portability (Art. 28 FADP). You may withdraw consent-based processing at any time with effect for the future.
You can delete your account directly in the app. For other requests: [email protected].
8. Federal Data Protection and Information Commissioner (FDPIC)
You may contact the FDPIC (www.edoeb.admin.ch). You may also assert civil-law claims before the competent courts.
9. Contact
Dennis Wilsmann & Mate Kurtin · [email protected]