Datenschutzerklärung
Stand: Oktober 2026
1. Verantwortlicher
Sebastian Lemens
E-Mail: [email protected]
2. Welche Daten erhebt AlpiCheck?
AlpiCheck legt großen Wert auf deine Privatsphäre. Die App hat kein Konto und sendet keine Kennungen, solange du die „Mitteilung bei steigender Stufe“ nicht einschaltest und keiner Gruppe beitrittst (dann gilt Abschnitt 5a). Unser Server speichert keine vollständigen IP-Adressen und keine Zugriffsprotokolle. Beim Abruf von Daten wird deine IP-Adresse technisch bedingt verarbeitet, insbesondere von Cloudflare bei der Auslieferung von alpicheck.de (siehe Abschnitt 7a).
3. Lokal gespeicherte Daten
Folgende Daten werden ausschließlich lokal auf deinem Gerät gespeichert:
- Favoriten: Deine als Favorit markierten Skigebiete
- Checklisten: Von dir erstellte Checklisten
- Einstellungen: Ausgewählte Region, Onboarding-Status
- Kaufstatus: Ob ein Pro-Kauf aktiv ist (über Apple StoreKit)
- Offline-Lagebericht: Der zuletzt geladene Lagebericht, damit er ohne Netz verfügbar ist
- Widget: Gefahrenstufe und Region für das Widget, in einem gemeinsamen Speicher von App und Widget
- Mitteilungen: Die zuletzt bekannten Gefahrenstufen (um einen Anstieg zu erkennen) und deine Einstellungen zur Morgen-Mitteilung
- Diagnose: Absturz- und Leistungsberichte von Apple (MetricKit), siehe Abschnitt 9
- Gruppen (ab Version 1.3): deine Gruppen mit Spitznamen der Mitglieder, siehe Abschnitt 5a „Auf deinem Gerät“
Diese Daten verlassen dein Gerät nicht und werden nicht an Dritte übermittelt.
4. Standortdaten
AlpiCheck fragt optional nach deinem Standort, um die passende Lawinenregion automatisch auszuwählen, nahegelegene Skigebiete anzuzeigen und im Notfall die Bergrettungsnummer des Landes zu ermitteln, in dem du dich befindest (anhand mitgelieferter Landesgrenzen, ohne Internet). Der Standort wird:
- Nur bei aktiver Nutzung abgefragt ("When In Use")
- Ausschließlich lokal verarbeitet
- Nicht gespeichert, nicht an Server gesendet (Ausnahmen: „Standort teilen“, siehe unten; die Fahrzeit im Skitag-Planer, für die Apple deinen Startpunkt erhält; „Mein Standort“ als Zuhause oder Unterkunft merken: Dann bleibt die Position im Schlüsselbund dieses iPhones, und Apple erhält sie einmal für den Ortsnamen; ab Version 1.3.1 ein Abstimmungslink ab „Mein Standort“: Dann steht die Position verschlüsselt im Plan, siehe Skitag-Planer)
Standort teilen (ab Version 1.3): In einer Gruppe kannst du selbst „Standort teilen“ einschalten und eine Dauer wählen (heute bis 18 Uhr, 1, 3 oder 7 Tage, nie über das Ende der Gruppe hinaus). Rechtsgrundlage ist deine Einwilligung (Art. 6 Abs. 1 lit. a DSGVO), je Gruppe und je Einschalten; du kannst sie jederzeit mit „Standort teilen beenden“ widerrufen. Dann gilt:
- Gesendet wird nur, solange dein Gerät in einem Skigebiet ist. Ob das so ist, prüft die App auf dem Gerät anhand der Gebietsfläche (Pisten und Lifte mit 300 m Puffer, aus OpenStreetMap-Daten; wegen der GPS-Streuung gilt bis etwa 350 m als im Gebiet). Außerhalb sendet sie nichts und löscht deine Position beim Dienst.
- Die genaue Position (bis 50 m Genauigkeit) geht höchstens jede Minute, im Stillstand alle 5 Minuten, Ende-zu-Ende verschlüsselt an unseren Gruppendienst (Abschnitt 5a). Nur die Mitglieder dieser Gruppe können sie lesen, wir nicht.
- Es gibt keinen Verlauf: Der Dienst hält je Mitglied nur die letzte Position und löscht sie spätestens 15 Minuten nach dem letzten Senden, sofort beim Beenden, beim Verlassen der Gruppe und mit der Gruppe. Endet die gewählte Dauer, löscht die App die Position, sobald sie läuft; ist sie von iOS beendet oder ohne Netz, löscht der Dienst sie spätestens 15 Minuten nach dem letzten Senden.
- Unser Dienst sieht dabei nur, wann eine verschlüsselte Position ankommt oder gelöscht wird. Daraus ließe sich ablesen, wann du teilst, dich bewegst oder ein Skigebiet betrittst bzw. verlässt, nicht aber wo du bist. Wir werten das nicht aus.
- Damit es mit gesperrtem Bildschirm funktioniert, nutzt die App den Standort im Hintergrund, solange du teilst; iOS zeigt das mit der blauen Standortanzeige. Die Berechtigung bleibt „Beim Verwenden“.
- Unter 30 % Akku pausiert das Teilen; deine Gruppe sieht dann „Standort pausiert – Akku“ statt deiner Position.
- Damit die App die Gebietsfläche kennt, lädt sie die Pistenplan-Datei der nächstgelegenen Skigebiete von alpicheck.de (wie die Karte, ohne Koordinaten oder Kennung). Welche Gebietsdateien angefragt werden, zeigt alpicheck.de und Cloudflare zusammen mit deiner IP-Adresse ungefähr, in welcher Gegend du bist; unser Server führt keine Zugriffsprotokolle (Abschnitt 7a).
Standort teilen ist kein Notruf und keine Ortung im Notfall. Im Notfall wähle 112.
Wetter- und Schneedaten lädt die App als eine gemeinsame Datei für alle Skigebiete von alpicheck.de (siehe Abschnitt 7). Dabei werden weder dein Standort noch das gewählte Skigebiet übermittelt.
Im Notfall kannst du deine Koordinaten über das Teilen-Menü weitergeben. Das geschieht nur, wenn du es selbst auslöst, und an den Empfänger, den du auswählst.
5. Mitteilungen
Die Morgen-Mitteilung und die Hinweise „Gefahrenstufen-Warnungen“ (beim Aktualisieren in der App erkannter Anstieg) werden auf deinem Gerät erzeugt und geplant. Dafür wird nichts an einen Server gesendet.
Anders ist es bei der Funktion „Mitteilung bei steigender Stufe“, die du in der App selbst einschaltest (ohne Pro für ein Gebiet, mit Pro für alle Favoriten). Sie funktioniert auch bei geschlossener App und braucht daher unseren Gruppendienst (Abschnitt 5a). Ohne Einschalten wird dafür nichts übertragen.
5a. Mitteilung bei steigender Stufe und Gruppen (Gruppendienst)
Der Gruppendienst ist ein eigener Server von AlpiCheck bei Hetzner (siehe Abschnitt 7a). Es gibt kein Konto, keinen Namen und keine Telefonnummer oder E-Mail-Adresse. Er wird nur angesprochen, wenn du die Mitteilung bei steigender Stufe einschaltest oder (ab Version 1.3) einer Gruppe beitrittst oder eine gründest.
Welche Daten?
- Geräteschlüssel (App Attest): Beim ersten Einschalten erzeugt dein iPhone einen Schlüssel, den Apple als echt bestätigt („App Attest“, Apple Inc.). Der Dienst speichert den öffentlichen Schlüssel, einen Zähler und die Zeit der letzten Anfrage. Damit weist die App nach, dass sie eine echte, unveränderte AlpiCheck-App auf einem echten Gerät ist (Schutz vor Missbrauch). Der Schlüssel enthält keine Angaben zu dir, ist aber eine dauerhafte, zufällige Kennung deines Geräts gegenüber dem Dienst.
- Mitteilungs-Token: Die Kennung, mit der Apple Mitteilungen an dein Gerät zustellt (APNs), und ob dein Build mit der Entwicklungs- oder Produktionsumgebung arbeitet.
- Mikroregionen deiner Favoriten: Die Kennungen der Warnregionen (z. B. „AT-07-05“) der Gebiete, für die du Mitteilungen willst, und die Sprache (de, en, it, fr). Der Dienst prüft stündlich die amtlichen Lageberichte und speichert je Region die zuletzt gesehene Gefahrenstufe (unabhängig von dir, höchstens 30 Tage).
- Gruppen (ab Version 1.3): Zufällige Gruppen- und Mitglieds-Kennungen, Art und Ablaufzeit der Gruppe. Spitzname, Position, Chat-Nachrichten und Kennzahlen werden auf deinem Gerät mit einem Gruppenschlüssel verschlüsselt; der Dienst speichert und sieht nur den Chiffretext. Der Schlüssel steht im Einladungslink hinter dem „#“ und wird nie an unseren Server gesendet. Die Einladungsseite alpicheck.de/g/… liest den Link nur in deinem Browser, um ihn beim Tippen auf „AlpiCheck laden und beitreten“ in die Zwischenablage zu legen; sie sendet und speichert ihn nicht.
- Gruppenchat (ab Version 1.3): Zu jeder Nachricht speichert der Dienst die Kennung des Absenders, die Zeit und die Größe. Inhalt, Art (Text, Schnellnachricht, Treffpunkt), Ort und Uhrzeit eines Treffpunkts sind verschlüsselt. Schaltest du eine Gruppe stumm oder blockierst du ein Mitglied, speichert der Dienst das zu deiner Mitglieds-Kennung, damit er dir keine Mitteilungen der Gruppe bzw. dieses Mitglieds mehr schickt; das blockierte Mitglied erfährt davon nichts. Links, Fotos und Sprachnachrichten lassen sich nicht senden.
- Meldungen (ab Version 1.3): Meldest du eine Nachricht oder ein Mitglied, geht nach deiner Bestätigung der Klartext der gemeldeten Nachricht (bzw. der Spitzname) mit Zeit und Art an uns, dazu die Kennungen der Gruppe, von dir und vom gemeldeten Mitglied sowie dessen Geräteschlüssel, damit wir es bei einem Verstoß sperren können. Andere Nachrichten gehen nicht mit. Melden kannst du über das Menü einer Nachricht („Melden …“) oder in der Mitgliederliste der Gruppe, außerdem per E-Mail an [email protected]. Wir prüfen Meldungen innerhalb von 24 Stunden. Jede Meldung sieht sich ein Mensch an, bevor ein Gerät gesperrt wird; der Dienst sperrt nie selbst, weder nach einer Zahl von Meldungen noch nach einem Wortfilter. Damit sich eine Meldung nicht durch Austreten umgehen lässt, behält der Dienst nach dem Verlassen einer Gruppe (auch mit „Alle meine Gruppendaten löschen“) 8 Tage lang nur die Zuordnung deiner früheren Mitglieds-Kennung zu deinem Geräteschlüssel, ohne Inhalte; Nachrichten Ausgetretener bleiben bei den anderen Mitgliedern bis zu 8 Tage sichtbar und meldbar.
- Sperre (ab Version 1.3): Bei einem Verstoß gegen die Regeln für Gruppen sperren wir den Geräteschlüssel des gemeldeten Mitglieds. Der Dienst nimmt das Gerät dann aus allen Gruppen und löscht seine Daten beim Dienst (Mitgliedschaften, Mitteilungs-Token, Warnregionen). Er behält nur den öffentlichen Geräteschlüssel, einen kurzen Grund mit dem Kürzel des Prüfers und die Zeit, damit das Gerät nicht sofort wieder beitreten kann. Hältst du eine Sperre für falsch, schreib uns.
- IP-Adresse: Siehe Abschnitt 7a. Der Dienst speichert sie nicht; für die Begrenzung der Anfragen liegt sie nur flüchtig, als nicht umkehrbarer Hashwert mit zufälligem Salz, im Arbeitsspeicher.
Zweck und Rechtsgrundlage
Zweck ist, dir die von dir eingeschaltete Funktion bereitzustellen (Art. 6 Abs. 1 lit. b DSGVO) und den Dienst vor Missbrauch zu schützen (Art. 6 Abs. 1 lit. f DSGVO, berechtigtes Interesse an sicherem Betrieb; dazu gehören Meldungen, Blockieren und Sperren). Eine Zusammenführung mit anderen Daten, Profilbildung, Werbung oder Weitergabe zu anderen Zwecken findet nicht statt. Die Berechtigung für Mitteilungen fragt die App erst beim Einschalten bzw. beim ersten Öffnen eines Gruppenchats, du kannst sie jederzeit in den iOS-Einstellungen entziehen.
Empfänger
- Hetzner Online GmbH (Hosting) und Cloudflare, Inc. (Auslieferung), jeweils als Auftragsverarbeiter, siehe Abschnitt 7a.
- Apple Inc.: Zustellung der Mitteilungen über den Apple Push Notification Service und Bestätigung des Geräteschlüssels (App Attest). Eine Mitteilung bei steigender Stufe enthält die Kennungen der betroffenen Regionen und die Stufen; Apple verarbeitet sie als Zusteller. Mitteilungen aus Gruppen enthalten nur Kennungen und den verschlüsselten Inhalt; erst die Mitteilungserweiterung der App entschlüsselt ihn auf deinem Gerät („Anna: Bin am Lift“). Es gilt die Datenschutzrichtlinie von Apple.
- Mitglieder deiner Gruppe sehen, was du in der Gruppe teilst (Spitzname, Position, Nachrichten, Treffpunkte, nach Einwilligung deine Summen für die Rangliste). Das ist der Zweck der Funktion.
Cloudflare und Apple können Daten in den USA verarbeiten (EU-US Data Privacy Framework).
Speicherdauer und Löschung
- Geräteschlüssel (mit Zähler und Zeit der letzten Anfrage): bis du ihn mit einem der Knöpfe unten löschst; hat sich das Gerät 90 Tage lang nicht gemeldet, löscht der Dienst es samt allen zugehörigen Daten (Gerät in laufenden Gruppen: mit der Gruppe).
- Mitteilungs-Token: solange eine deiner Gruppen läuft oder die Mitteilung bei steigender Stufe eingeschaltet ist. Danach löscht ihn der Dienst sofort beim nächsten Aufräumen (alle 5 Minuten), sobald dein Gerät eine Stunde lang keine Anfrage gesendet hat. Beim Ausschalten der Mitteilung löscht die App ihn selbst.
- Warnregionen (Mitteilung bei steigender Stufe): bis du die Mitteilung ausschaltest. Hat Apple den Mitteilungs-Token verworfen (App gelöscht) und kommt 7 Tage lang keine Anfrage, löscht der Dienst sie.
- Gruppe und Mitgliedschaft (Kennungen, verschlüsselter Spitzname): Skigruppe bis zum Ablauf (1 Stunde bis 7 Tage), Clique bis Saisonende (1. Juni), deine Mitgliedschaft sofort beim Verlassen. Der Merker „Pro in der Clique“ endet mit der Clique.
- Chat-Nachrichten: 7 Tage, höchstens bis zum Ende der Gruppe.
- Position: 15 Minuten nach dem letzten Senden, sofort beim Beenden des Teilens oder beim Verlassen des Skigebiets.
- Einladungen: höchstens 24 Stunden (Standard), bei einer Skigruppe höchstens bis zu ihrem Ende.
- Summen für die Rangliste: bis zum Widerruf, zum Verlassen oder zum Ende der Gruppe (siehe Abschnitt 6).
- Stumm und Blockieren: bis du es aufhebst, die Gruppe verlässt oder sie endet.
- Zuordnung nach dem Austritt (frühere Mitglieds-Kennung zu Geräteschlüssel, ohne Inhalte): 8 Tage.
- Meldungen: bis zum Abschluss der Prüfung, spätestens 6 Monate.
- Sperren: bis wir sie aufheben; „Alle meine Gruppendaten löschen“ hebt eine Sperre nicht auf.
- Sofort selbst löschen: In der App unter „Mehr“ oder „Favoriten“ bei „Mitteilung bei steigender Stufe“ den Knopf „Meine Daten beim Dienst löschen“. Er entfernt Gruppen-Mitgliedschaften, Mitteilungs-Token, Warnregionen und den Geräteschlüssel auf dem Server. Das bloße Deinstallieren der App löscht serverseitige Daten nicht; schalte vorher die Funktion aus oder nutze diesen Knopf. Diesen Knopf zeigt die App, sobald du die Mitteilung bei steigender Stufe einmal genutzt hast.
- Alle meine Gruppendaten löschen (ab Version 1.3): In der App unter „Mehr“ → „Gruppen“ → „Alle meine Gruppendaten löschen“. Der Knopf erscheint, sobald du eine Gruppe erstellt hast oder einer beigetreten bist. Sind Gruppen gerade abgeschaltet, steht er unter „Mehr“ als eigene Karte „Deine Daten“. Er löscht beim Dienst dasselbe wie der Knopf oben (Gruppen-Mitgliedschaften, Mitteilungs-Token, Warnregionen, Geräteschlüssel) und auf deinem Gerät alle Gruppenschlüssel, die Gruppen-Datei mit den Spitznamen, die Chat-Verläufe, die Einwilligungen und Summen der Rangliste samt Rückblicken, vorgemerkte Beitritte, dein eigenes Profil, die Altersbestätigung und die Bestätigung der Chat-Nutzungsregeln, dazu die Abstimmungslinks, die gemerkten Orte Zuhause und Unterkunft und die zuletzt gewählten Startpunkte des Skitag-Planers. Ist das Gerät dabei gesperrt, merkt sich die App das Löschen und holt es beim nächsten Öffnen nach.
- Es gibt keine Datensicherung des Dienstes.
Auf deinem Gerät liegen der Gruppenschlüssel und die Kennung deines Geräteschlüssels im Schlüsselbund (nur dieses Gerät, nicht in iCloud oder Gerätesicherungen). Der iOS-Schlüsselbund bleibt beim Löschen der App zunächst erhalten; AlpiCheck entfernt diese Einträge beim ersten Start nach einer Neuinstallation. Wer die App nie wieder öffnet, kann sie in den iOS-Einstellungen nicht einsehen; sie liegen verschlüsselt und nur für AlpiCheck lesbar auf dem Gerät und enthalten keine Klartext-Inhalte der Gruppen.
Auf deinem Gerät
Damit die App deine Gruppen ohne Netz anzeigen kann, speichert sie in einem App-eigenen Speicher (App Group, auch für die Mitteilungserweiterung) eine Datei mit deinen Gruppen: Art und Ablauf, die zufälligen Kennungen der Mitglieder und ihre entschlüsselten Spitznamen und Emojis. Daneben liegen dein zuletzt verwendetes eigenes Profil (Spitzname und Emoji, für den nächsten Beitritt) und eine Warteschlange für Beitritte und Austritte ohne Netz; der Einladungslink eines vorgemerkten Beitritts liegt nur im Schlüsselbund. Der Gruppenchat liegt entschlüsselt in einer weiteren Datei (höchstens 500 Nachrichten je Gruppe, ältere als 8 Tage entfernt die App), zusammen mit noch nicht gesendeten Nachrichten und deiner Liste blockierter Mitglieder. Die Mitteilungserweiterung liest Gruppenschlüssel, Spitznamen und diese Liste, um eingehende Mitteilungen zu entschlüsseln; sie sendet nichts. Beim Setzen eines Treffpunkts startet die Karte an deinem Standort, falls du ihn freigegeben hast; gesendet wird nur der Punkt, den du wählst. Diese Dateien sind von iCloud- und Rechner-Sicherungen ausgenommen und verlassen dein Gerät nicht. Abgelaufene Gruppen und Einladungen löscht die App beim nächsten Start, alles zusammen mit „Alle meine Gruppendaten löschen“ oder beim Deinstallieren der App.
Alter
Gruppen sind für Menschen ab 16 Jahren (Art. 8 DSGVO). Vor der ersten Gruppe bestätigst du in der App, dass du mindestens 16 bist (Selbstauskunft, ohne Nachweis). Die Bestätigung bleibt nur auf deinem Gerät und wird mit „Alle meine Gruppendaten löschen“ zurückgesetzt.
5b. Skitag-Planer und Abstimmung (alpicheck.de/plan und /p/)
Der Skitag-Planer auf alpicheck.de schlägt nach Startpunkt, Umkreis und Tag Skigebiete vor. Die Bewertung rechnet dein Browser. Er lädt dafür von unserem Server die Gebiets-, Saison- und Startortdaten, die Liste der Skipässe, die Wetterdatei, die aktuelle Lawinenlage, die Karte und die Ortsliste; an unseren Server gehen dabei weder Startpunkt noch Tag noch deine Auswahl, und gespeichert wird nichts davon (zur Suche nach Hotels und Adressen siehe unten). Die Entfernung rechnet dein Browser als Luftlinie. Für die ungefähre Fahrzeit (ohne Verkehr, von uns aus OpenStreetMap-Straßendaten vorberechnet) lädt er von unserem Server die Tabelle für ein Feld von etwa 55 × 38 km, in dem der Startpunkt liegt. Daraus lässt sich grob ablesen, in welcher Gegend der Startpunkt liegt; der genaue Startpunkt wird dabei nicht übertragen. Die Seite lädt nichts von Google, Apple oder anderen Dritten.
Mein Standort: Nur wenn du auf „Mein Standort“ tippst, fragt die Seite über deinen Browser nach deinem Standort; der Browser fragt dich vorher um Erlaubnis, und du kannst ablehnen. Die Position bleibt im Arbeitsspeicher der Seite: Sie geht nicht im Klartext an unseren Server, und die Seite speichert sie nicht. Grob erkennbar ist die Gegend über den geladenen Kartenausschnitt und das Feld der Fahrzeit-Tabelle (siehe oben). Die Karte lädt beim Start nur den Ausschnitt des ganzen Umkreises (mindestens 25 km); der Startmarker sitzt genau auf der Position. Erstellst du einen Abstimmungslink, steht die Position als Startpunkt im verschlüsselten Plan, mit dem Namen „eigener Standort“ (siehe unten); der Hinweis über dem Knopf sagt dir das vorher. Der Server speichert sie dann nur als Teil des Chiffretexts und löscht sie mit dem Plan 7 volle Tage nach dem Skitag; vorher lässt sich der Plan nicht löschen. Rechtsgrundlage für das Abfragen des Standorts im Browser ist deine Einwilligung (Art. 6 Abs. 1 lit. a DSGVO), die du mit dem Schließen der Seite oder in den Einstellungen des Browsers beendest. Für den Startpunkt im Plan gilt wie für den übrigen Plan die Bereitstellung der Abstimmung (Art. 6 Abs. 1 lit. b DSGVO).
Meine Skipässe: Wählst du im Planer unter „Meine Skipässe“ Skipässe aus, schlägt er nur Gebiete vor, in denen einer davon gilt. Damit die Auswahl beim nächsten Besuch noch da ist, merkt sich die Seite die Kennungen der gewählten Skipässe im localStorage deines Browsers. Die Auswahl geht nicht an unseren Server und nicht in den Abstimmungslink. „Skipass-Filter zurücksetzen“ oder das Abwählen aller Skipässe löscht den Eintrag, ebenso das Löschen der Websitedaten in den Einstellungen des Browsers.
Mit „Abstimmungslink erstellen“ legst du eine Abstimmung im Gruppendienst an (siehe Abschnitt 5a, ohne App Attest). Plan (Tag, Name des Startorts, Lage des Startpunkts auf etwa 10 m gerundet, Vorschläge mit Luftlinie und, soweit bekannt, ungefährer Fahrzeit ab dem Startpunkt, optional dein Vorname), Stimmen (optional ein Vorname und die gewählten Gebiete) und das festgelegte Ziel verschlüsselt dein Browser Ende-zu-Ende mit einem Schlüssel, der nur im Link hinter dem „#“ steht und nie an unseren Server geht.
- Was der Server speichert: nur den Chiffretext von Plan, Stimmen und Ergebnis, den er nicht lesen kann; den Skitag im Klartext (für die Löschfrist); vom Link-Token, vom Geheimnis des Erstellers und von den Geheimnissen der Stimmen nur Hashwerte (SHA-256); zufällige Kennungen der Stimmen; Zeitpunkte von Anlage und Änderung.
- In deinem Browser: Das Geheimnis zum Festlegen liegt nur im localStorage des Browsers, in dem du die Abstimmung erstellt hast; nur dort lässt sich das Ziel festlegen. Wenn du abstimmst, liegen Kennung und Geheimnis deiner Stimme im localStorage, damit du sie ändern oder zurückziehen kannst. Sonst speichert die Seite in deinem Browser nur deine Auswahl unter „Meine Skipässe“ (siehe oben) und, wenn du sie umschaltest, die Wahl zwischen heller und dunkler Darstellung. Diese Einträge löscht die Seite selbst, sobald der Dienst die Abstimmung gelöscht hat (7 volle Tage nach dem Skitag) oder sie nicht mehr findet.
- Wer was sieht: Alle, die den Link haben, sehen Plan, Vornamen und Wahl, bei Links aus dem Web-Planer auch den Startpunkt auf der Karte (bei jeder Art von Startpunkt, auch beim eigenen Standort), ebenso bei Links aus der App ab Version 1.3.1. Unser Server kann den Startpunkt nicht lesen. Die Abstimmungsseite zeigt die Namen erst, wenn man selbst abgestimmt hat, vorher nur die Zahl der Stimmen je Gebiet. Es gibt keine öffentliche Liste und keine Suche. Freitext außer dem Vornamen gibt es nicht.
- Was die Abstimmungsseite lädt: Für Gefahrenstufe, Wetter und geschätzte Auslastung lädt sie von unserem Server die Gebietsdaten, die Wetterdatei, die Ferientabelle und die aktuelle Lawinenlage. Diese Dateien sind für alle Abstimmungen gleich, an ihnen ist nicht erkennbar, welche Abstimmung du ansiehst. Die Fahrzeit-Tabelle lädt die Abstimmungsseite nicht. Die Karte über den Vorschlägen lädt Kartenausschnitte von alpicheck.de wie die Karte im Planer (siehe Karte und Ortsliste). Welche Ausschnitte das sind, zeigt alpicheck.de und Cloudflare zusammen mit deiner IP-Adresse grob, in welcher Gegend die Gebiete der Abstimmung und der Startpunkt liegen. Die Ebenen „Hangneigung“ und „Pisten“ sind beim Öffnen aus. Schaltest du sie ein, lädt die Seite wie der Planer die Kacheln der Hangneigung und die Pistendateien der Skigebiete im sichtbaren Ausschnitt von alpicheck.de, nicht nur die der Abstimmung; gezeichnet werden nur die Pisten der Gebiete der Abstimmung. Auch daran ist also nur die Gegend erkennbar. Plan, Vornamen und Stimmen erfährt der Server dabei nicht; unser Server führt keine Zugriffsprotokolle (Abschnitt 7a).
- Löschung: Plan, Stimmen und Ergebnis löscht der Dienst 7 volle Tage nach dem Skitag. Deine Stimme kannst du vorher jederzeit mit „Stimme zurückziehen“ löschen.
- IP-Adresse: nur flüchtig im Arbeitsspeicher, als nicht umkehrbarer Hashwert mit zufälligem Salz, für die Begrenzung der Anfragen; nie in der Datenbank oder im Protokoll.
- Messung: nur Zähler ohne Kennung (angelegte Pläne, Stimmen, festgelegte Pläne und, wenn eine Abstimmung endet, wie viele Stimmen sie hatte). Keine Cookies, kein Tracking, keine Analyse-Werkzeuge.
Zweck ist, dir und deiner Gruppe die Abstimmung bereitzustellen (Art. 6 Abs. 1 lit. b DSGVO) und den Dienst vor Missbrauch zu schützen (Art. 6 Abs. 1 lit. f DSGVO). Empfänger sind Hetzner und Cloudflare als Auftragsverarbeiter (Abschnitt 7a). Die Links „Route in Google Maps“ und „Apple Karten“ sind einfache Links ohne Skript von Google oder Apple. Erst dein Klick öffnet den fremden Dienst (Google Ireland Limited bzw. Apple Inc.); er erhält dann die Koordinate des Skigebiets und, außer bei „Mein Standort“, auch die Koordinate deines Startpunkts. Bei „Mein Standort“ steht kein Startpunkt im Routenlink. Dort gelten die Datenschutzbestimmungen von Google bzw. Apple.
Karte und Ortsliste
Die Karte im Planer liefert unser eigener Server aus (Kartendaten © OpenStreetMap-Mitwirkende, Open Database License; Kartenstil Protomaps). Schriften, Symbole und die Programmbibliothek (MapLibre) liegen ebenfalls auf alpicheck.de; kein Dritter erhält dabei Daten. Dein Browser lädt nur die Kartenausschnitte, die du ansiehst. Welche das sind, verrät alpicheck.de und Cloudflare zusammen mit deiner IP-Adresse grob, welche Gegend du ansiehst; unser Server speichert keine Zugriffsprotokolle (Abschnitt 7a). Die Vorschläge beim Tippen in das Suchfeld kommen aus einer Ortsliste, die dein Browser einmal vollständig von alpicheck.de lädt; was du tippst, verlässt deinen Browser dabei nicht. Tippst du auf die Karte, heißt der Startpunkt im Abstimmungslink „Punkt auf der Karte nahe …“ mit dem nächsten Ort aus der Liste; seine Lage steht verschlüsselt im Plan (siehe oben). Schaltest du die Ebene „Hangneigung“ ein, lädt dein Browser die Kacheln des sichtbaren Ausschnitts von alpicheck.de. Die Hangneigung berechnen wir selbst aus dem Copernicus-Höhenmodell (produced using Copernicus WorldDEM-30 © DLR e.V. 2010-2014 and © Airbus Defence and Space GmbH 2014-2018 provided under COPERNICUS by the European Union and ESA; all rights reserved); sie liegt fertig auf unserem Server, weitere Dienste sind nicht beteiligt. Die Organisationen, die das Copernicus-Programm kraft Gesetzes oder Auftrags betreiben, haften nicht für die Nutzung der Copernicus WorldDEM-30. Die Ebene „Pisten“ lädt die Pistendateien der Skigebiete im Ausschnitt von alpicheck.de. Beide Ebenen sind beim Öffnen der Seite aus.
Suche nach Hotels und Adressen
Erst wenn du auf „Suchen“ tippst oder im Suchfeld Enter drückst, schickt dein Browser den Suchtext an unseren Server (Gruppendienst, Abschnitt 5a). Beim Tippen allein passiert das nie.
- Weitergabe: Unser Server fragt mit dem Suchtext den Dienst Nominatim der OpenStreetMap Foundation (Vereinigtes Königreich; für das Vereinigte Königreich gilt ein Angemessenheitsbeschluss der EU-Kommission). Nominatim erhält nur den Suchtext, nicht deine IP-Adresse, keinen Referer und kein Cookie. Es gilt die Datenschutzerklärung der OpenStreetMap Foundation.
- Speicherung: Suchtext und Treffer hält unser Server bis zu 7 Tage im Arbeitsspeicher als Zwischenspeicher, damit gleiche Suchen Nominatim nicht erneut belasten. Der Suchtext kommt nicht ins Protokoll. Deine IP-Adresse verarbeitet der Server nur flüchtig für die Begrenzung der Anfragen, wie in Abschnitt 5a.
- Was mit dem Ergebnis passiert: Name, Anschrift und Koordinate des gewählten Treffers bleiben im Arbeitsspeicher der Seite. Dein Browser rechnet daraus die Luftlinie, und die Links zu Google Maps und Apple Karten starten an diesem Punkt. In den Abstimmungslink kommen der kurze Name (z. B. der Name der Unterkunft) und die Lage auf etwa 10 m gerundet, verschlüsselt wie der ganze Plan; die Anschrift nie. Die Treffer stammen aus OpenStreetMap (© OpenStreetMap-Mitwirkende, Nominatim).
- Rechtsgrundlage: Bereitstellung der von dir angefragten Suche (Art. 6 Abs. 1 lit. b DSGVO) und Schutz des Diensts vor Missbrauch (Art. 6 Abs. 1 lit. f DSGVO). Ohne Suche geht ein Startpunkt auch über die Ortsliste, die Karte oder „Mein Standort“.
Skitag-Planer in der App
Ab App-Version 1.3 gibt es den Planer auch in der App unter „Planen“ → „Skitag planen“. Die Bewertung rechnet dein iPhone mit denselben Regeln wie die Webseite. Von unserem Server lädt die App dafür nur die Wetterdatei, die aktuelle Lawinenlage sowie die Saisonzeiten und Regeln des Planers (dieselben Dateien wie die Webseite unter alpicheck.de/plan/daten/), ohne Startpunkt, Tag oder Auswahl. Für die Auslastung nutzt sie wie überall in der App eine Tabelle der Schul- und Feiertage, die sie ebenfalls von alpicheck.de lädt (Abschnitt 7). Anders als im Web nutzt die App für Karte, Suche, Ortsnamen und Fahrzeit Apple Karten (MapKit, Apple Inc.):
- Suche: Beim Tippen zeigt die App zweierlei: Treffer, die sie nur auf dem iPhone sucht (im Planer Zuhause, Unterkunft und Skigebiete, in „Passende Gebiete finden“ Zuhause, Unterkunft und die zuletzt gewählten Startpunkte), und ab zwei Zeichen Vorschläge von Apple. Dafür schickt die App den Suchtext schon während des Tippens an Apple (nach einer kurzen Pause, nicht bei jedem Tastendruck). Tippst du einen Vorschlag an, erhält Apple ihn noch einmal, um die Koordinate zu ermitteln. „Suchen“ bzw. Return schickt den Suchtext ebenfalls an Apple, um Orte, Hotels und Adressen zu finden. Das gilt im Planer und in „Passende Gebiete finden“. Mit dem Suchtext gibt AlpiCheck keinen Standort mit, nur den festen Suchbereich Alpenraum; Apple verarbeitet die Anfrage nach seiner Datenschutzrichtlinie.
- Ortsname beim Tippen auf die Karte: Die App fragt Apple mit der angetippten Koordinate nach dem Namen des Orts (Rückwärtssuche). Als Name steht im Abstimmungslink „Punkt auf der Karte nahe <Ort>“. Dasselbe gilt, wenn du „Mein Standort“ als Zuhause oder Unterkunft merkst; dann steht dort „Adresse in <Gemeinde>“. Die Lage des Startpunkts steht ab Version 1.3.1 zusätzlich im Plan (siehe „Eigene Abstimmungen“).
- Fahrzeit: Sobald ein Startpunkt gesetzt ist, fragt die App Apple nach der Fahrzeit mit dem Auto, nur für die bis zu fünf Vorschläge. Ändert sich Startpunkt, Tag, Abfahrt, Umkreis oder eine Einstellung, fragt sie erst nach einer kurzen Pause erneut, und Ergebnisse, die sie schon kennt, fragt sie nicht noch einmal ab. Apple erhält dafür die Koordinate deines Startpunkts (auch bei „Mein Standort“), die Koordinaten der Gebiete und die gewählte Abfahrtszeit. Die Fahrzeit berücksichtigt den üblichen Verkehr zu dieser Zeit. Die App merkt sich die Ergebnisse bis zu 6 Stunden im Arbeitsspeicher.
- Routen: Die Knöpfe „Apple Karten“ und „Google Maps“ öffnen erst beim Antippen den jeweiligen Dienst (Apple Inc. bzw. Google Ireland Limited). Er erhält dann die Koordinate der Talstation des Gebiets (falls unbekannt, die Lage des Gebiets) und die Koordinate deines Startpunkts, auch eines gemerkten Zuhauses oder einer Unterkunft. Nur bei „Mein Standort“ steht kein Start im Link, dann nimmt der Kartendienst deinen Standort selbst.
- Anfahrt im Gebietsblatt: Die Knöpfe „Apple Karten“ und „Google Maps“ öffnen erst beim Antippen den jeweiligen Dienst, mit der Talstation als Ziel und ohne Start (der Kartendienst nimmt deinen Standort selbst; AlpiCheck fragt dafür nicht nach deinem Standort). Hast du im Planer Zuhause oder Unterkunft gemerkt, zeigt das Gebietsblatt die Luftlinie dorthin, gerechnet auf dem iPhone. Erst wenn du auf „Fahrzeit“ tippst, erhält Apple die Koordinate dieses Orts, die der Talstation und die aktuelle Uhrzeit als Abfahrt.
- Passende Gebiete finden: Die Auswahl nach Startpunkt, Können und Größe rechnet das iPhone. Saisonzeiten und Regeln lädt die App dafür wie der Planer von alpicheck.de (auch für das Kurzprofil und die Regionen in „Planen“); Startpunkt, Antworten und Auswahl gehen nicht an unseren Server. „Mein Standort“ fragt erst nach dem Tippen; die Position bleibt auf dem iPhone. Öffnest du von dort mit „Skitag planen mit diesem Startpunkt“ den Planer, gilt für den Startpunkt dessen Beschreibung hier (z. B. die Fahrzeit über Apple). Die bis zu drei zuletzt gewählten Startpunkte (Name, Anzeige, die die Anschrift enthalten kann, und Koordinate; nie der eigene Standort) liegen im Schlüsselbund dieses iPhones wie Zuhause und Unterkunft. Lange auf einen Eintrag drücken entfernt ihn, „Verlauf löschen“ entfernt alle.
- Meine Skipässe: Wählst du in der App unter „Mehr“ oder im Planer Skipässe aus, merkt sich die App nur deren Kennungen auf dem iPhone (App-Einstellungen). Die Liste der Skipässe lädt sie von alpicheck.de, ohne Angaben zu dir. Deine Auswahl geht nicht an unseren Server und nicht in den Abstimmungslink. „Zurücksetzen“ oder das Abwählen aller Skipässe löscht den Eintrag, ebenso das Löschen der App.
- Zuhause und Unterkunft: Merkst du einen Startpunkt, liegen Name, Anschrift und Koordinate nur im Schlüsselbund dieses iPhones („nur dieses Gerät“, nicht in der iCloud). Sie gehen nicht an unseren Server. Erstellst du ab Zuhause oder der Unterkunft einen Abstimmungslink, stehen ab Version 1.3.1 der kurze Name (z. B. „Adresse in <Gemeinde>“) und die Lage auf etwa 10 m gerundet verschlüsselt im Plan, die Anschrift nie. Lange auf den Eintrag drücken löscht ihn.
- Eigene Abstimmungen: Den Plan verschlüsselt die App genauso wie der Web-Planer (siehe oben). Ab Version 1.3.1 steht darin wie im Web bei jeder Art von Startpunkt die Lage auf etwa 10 m gerundet, dazu Luftlinie und, soweit bekannt, Fahrzeit; beim eigenen Standort ist das deine aktuelle Position. Der Hinweis über dem Knopf „An die Gruppe schicken“ sagt dir das vorher. Alle mit dem Link sehen den Startpunkt auf der Karte der Abstimmungsseite, unser Server kann ihn nicht lesen. Rechtsgrundlage ist wie für den übrigen Plan die Bereitstellung der Abstimmung (Art. 6 Abs. 1 lit. b DSGVO). Bis Version 1.3.0 standen im Plan der App nur der Name des Startpunkts und, außer ab Zuhause und dem eigenen Standort, Luftlinie und Fahrzeit. Erstellst du einen Abstimmungslink in der App, liegen Link, Schlüssel und das Geheimnis zum Festlegen im Schlüsselbund dieses iPhones. Nur hier lässt sich das Ziel festlegen. Stimmst du selbst in der App ab (ab Version 1.3.1), verschlüsselt die App deine Stimme (Vorname aus dem Plan und gewählte Gebiete) genauso wie die Abstimmungsseite; Kennung und Geheimnis der Stimme liegen dann ebenfalls im Schlüsselbund. Die App löscht die Einträge 7 volle Tage nach dem Skitag, spätestens beim nächsten Öffnen des Planers. Was der Server speichert, steht oben im Abschnitt 5b; die Geheimnisse liegen hier im Schlüsselbund statt im localStorage. Deinen Vornamen für den nächsten Abstimmungslink merkt sich die App ebenfalls nur im Schlüsselbund dieses iPhones.
- Kalender: „In den Kalender“ nach dem Festlegen des Ziels öffnet den Termin-Editor von iOS mit Tag, Gebiet und Talstation. Ob und in welchem Kalender du ihn sicherst, entscheidest du dort. AlpiCheck erhält dafür keinen Zugriff auf deinen Kalender und liest keine Termine. Der Abstimmungslink steht nicht im Termin.
- Nach dem Löschen der App: Einträge im Schlüsselbund kann iOS über das Löschen der App hinaus aufbewahren. Installierst du die App neu, löscht der Planer beim ersten Öffnen alle seine Einträge (eigene Abstimmungen, Zuhause, Unterkunft, zuletzt gewählte Startpunkte). „Alle meine Gruppendaten löschen“ (Abschnitt 5a) löscht sie ebenfalls.
- Kartenfilter: Der Filter „Nur im Umkreis um meinen Standort“ auf der Lawinenkarte rechnet nur auf dem iPhone. Schaltest du die Filter für Gebiete ohne Skibetrieb oder heute geschlossene Gebiete ein, lädt die App die Saisonzeiten von alpicheck.de (dieselbe Datei wie der Planer, ohne Standort oder Auswahl).
Rechtsgrundlage ist die Bereitstellung der Funktionen, die du nutzt (Art. 6 Abs. 1 lit. b DSGVO). Für die Daten bei Apple gilt die Datenschutzrichtlinie von Apple; Apple kann sie in den USA verarbeiten (EU-US Data Privacy Framework).
6. Gesundheitsdaten (HealthKit)
AlpiCheck kann optional auf HealthKit zugreifen, um Ski-Saison-Statistiken anzuzeigen. Gelesen werden Workouts (mit Höhenmetern abwärts und Höchstgeschwindigkeit, soweit deine Aufzeichnungs-App sie speichert), Abfahrtsstrecke im Schnee und Aktivitätsenergie sowie die Route eines Workouts, um es einem Skigebiet zuzuordnen. AlpiCheck schreibt nichts in Health. Diese Daten werden:
- Auf deinem Gerät gelesen und ausgewertet; die Workouts selbst, Routen und Kalorien verlassen dein Gerät nie
- Nur übertragen, wenn du in einer Gruppe „Meine Werte teilen“ einschaltest (ab Version 1.3, siehe unten)
- Nicht für Werbung oder Tracking verwendet
Werte teilen für die Rangliste (ab Version 1.3): In einer Clique oder Skigruppe kannst du „Meine Werte teilen“ einschalten. Vorher bestätigst du eine eigene Einwilligung je Gruppe; nichts ist vorausgewählt. Rechtsgrundlage ist deine ausdrückliche Einwilligung (Art. 9 Abs. 2 lit. a und Art. 6 Abs. 1 lit. a DSGVO); wir behandeln die Werte vorsorglich als Gesundheitsdaten. Dann gilt:
- Was: Summen und Kennzahlen für Titel: Kilometer, Höhenmeter abwärts, Skitage, Zahl der Gebiete, Zeit auf Ski, Langlauf-Kilometer und dein Saison-Höchstwert der Geschwindigkeit (Werte über 120 km/h werden verworfen), dazu dein erster und letzter Skitag als Kalendertag, die Zahl deiner Früh-Tage (Start vor 9 Uhr) und Spät-Tage (Ende nach 16 Uhr) und einige Ja/Nein-Werte für Titel. In einer Clique gelten die Summen für die Saison. In einer Skigruppe gehen nur Kilometer, Höhenmeter, Zeit, Zahl der Skitage und der Höchstwert für ihren Zeitraum mit, keine Kennzahlen für Titel. Keine einzelnen Workouts, keine Routen oder Orte, keine Uhrzeiten, keine Herzfrequenz, keine Kalorien.
- Wie: Die App rechnet die Summen auf deinem Gerät aus, rundet sie und verschlüsselt sie Ende-zu-Ende mit dem Gruppenschlüssel. Unser Gruppendienst (Abschnitt 5a) speichert nur den Chiffretext (immer gleich groß), deine Mitglieds-Kennung und die Zeit; er kann die Werte nicht lesen. Die App sendet höchstens einmal pro Stunde: beim Öffnen der Rangliste oder der App und, solange du teilst, im Hintergrund (Hintergrundaktualisierung von iOS, abschaltbar in den iOS-Einstellungen unter „Allgemein“ → „Hintergrundaktualisierung“). Im Hintergrund lädt sie dieselben Summen hoch wie beim Öffnen, nichts anderes.
- Wer sieht sie: Nur die Mitglieder dieser Gruppe. Ihre Apps berechnen daraus Rangliste, Tempo-Spanne und Titel.
- Widerruf und Löschung: Jederzeit mit „Meine Werte teilen“ aus; dann löscht die App deine Summen sofort beim Dienst (ohne Netz beim nächsten Öffnen). Beim Verlassen der Gruppe und mit dem Ende der Gruppe (Skigruppe nach Ablauf, Clique am 1. Juni) sind sie ebenfalls gelöscht. Auf den Geräten der anderen Mitglieder bleiben die zuletzt geladenen Werte bis zu deren nächstem Abgleich, bei einer Skigruppe im Rückblick bis zu 14 Tage.
- Auf deinem Gerät: Die App speichert deine Einwilligungen und die zuletzt geladenen Summen der Mitglieder in einer eigenen Datei (nicht in Sicherungen). Nach dem Ende einer Skigruppe bleibt ein Rückblick mit ihrer Tages-Rangliste bis zu 14 Tage auf deinem Gerät, bis du ihn ausblendest. „Alle meine Gruppendaten löschen“ entfernt beides.
- Pro in der Clique: Hat der Gastgeber einer Clique AlpiCheck Pro, merkt sich der Dienst bis Saisonende, dass die Saison-Rangliste für alle Mitglieder freigeschaltet ist. Ob jemand Pro hat, prüft nur die App; an den Dienst gehen dafür keine Kaufdaten.
7. Externe Dienste
AlpiCheck ruft folgende öffentliche APIs ab, um aktuelle Daten anzuzeigen:
- Lawinenwarndienste (avalanche.report und static.avalanche.report für Tirol, Südtirol, Trentino, Kärnten und weitere EAWS-Regionen; aws.slf.ch für die Schweiz; die Berichte von Météo-France für das französische Chablais ebenfalls über static.avalanche.report): Abruf der Lageberichte je Region
- AlpiCheck-Wetterdaten (alpicheck.de): eine Datei mit Wetter, Neuschnee und Schneehöhe für alle Skigebiete, höchstens alle 15 Minuten und beim Aktualisieren. Unser Server stellt sie stündlich aus offenen Daten der Wetterdienste zusammen (MET Norway, GeoSphere Austria, Land Tirol, SLF, MeteoSchweiz, Deutscher Wetterdienst, Provinz Bozen, Meteotrentino). Von deinem Gerät gelangen keine Daten an diese Wetterdienste. Der Abruf läuft über das Netz von Cloudflare zu unserem Server (siehe Abschnitt 7a); der Server führt keine Zugriffsprotokolle, Fehlermeldungen enthalten IP-Adressen nur gekürzt (IPv4 auf die ersten zwei Blöcke, IPv6 auf die ersten 32 Bit) und keine Anfrage-Header.
- Schul- und Feiertage (alpicheck.de): eine Tabelle für alle Länder für die Auslastungsprognose, ohne Angaben von dir. Die Daten stammen von der OpenHolidays API (openholidaysapi.org, ODbL); wir übernehmen sie einmal je Saison, dein Gerät fragt OpenHolidays ab Version 1.3 nicht mehr an. Bis Version 1.2 fragte die App OpenHolidays direkt an, mit Land und Region.
- Lift- und Pistenstatus (alpicheck.de, ab dem Saisonstart 2026/27): eine Datei mit der Zahl offener Lifte und Pisten für einige Skigebiete, ohne Angaben von dir. Die App lädt sie höchstens alle 5 Minuten, wenn du ein Gebiet oder den Skitag-Planer öffnest oder auf „Aktualisieren“ tippst, der Web-Planer und die Abstimmungsseite einmal beim Laden der Seite. Unser Server übernimmt die Zahlen aus den offenen Daten von Dolomiti Superski und LTS (Südtiroler Tourismusdaten) über den Open Data Hub Südtirol (CC0); dein Gerät fragt diese Dienste nicht an. Der Link „Lift- und Pistenstatus (Gebiet)“ ist ein einfacher Link: Erst dein Tippen öffnet die Seite des Betreibers, dort gelten dessen Datenschutzbestimmungen.
- AlpiCheck-Hangneigung (alpicheck.de): Kartenkacheln der Hangneigung für den sichtbaren Kartenausschnitt, nur wenn du die Hangneigung auf der Karte einschaltest. Die Hangneigung berechnen wir selbst aus dem Copernicus-Höhenmodell (produced using Copernicus WorldDEM-30 © DLR e.V. 2010-2014 and © Airbus Defence and Space GmbH 2014-2018 provided under COPERNICUS by the European Union and ESA; all rights reserved); sie liegt fertig auf unserem Server, weitere Dienste sind nicht beteiligt. Die Organisationen, die das Copernicus-Programm kraft Gesetzes oder Auftrags betreiben, haften nicht für die Nutzung der Copernicus WorldDEM-30. Der Abruf läuft wie die Wetterdatei über Cloudflare (Abschnitt 7a).
- OpenSlopeMap (wmts.openslopemap.org): nur ältere App-Versionen laden die Kartenkacheln der Hangneigung von dort, für den sichtbaren Kartenausschnitt und nur, wenn du die Hangneigung einschaltest. Ein Update auf die aktuelle Version stellt auf die AlpiCheck-Hangneigung um.
- Apple Karten: Kartendarstellung über Apple; es gilt die Datenschutzrichtlinie von Apple. Dein Standortpunkt wird nur auf dem Gerät angezeigt.
Bei diesen Abfragen wird deine IP-Adresse technisch bedingt an den jeweiligen Dienst übermittelt, zusammen mit den genannten Abfragedaten (Region, Land für Feiertage, Kartenausschnitt). Es werden keine Kennungen, Konten oder sonstigen persönlichen Daten gesendet. Eine Übersicht aller Datenquellen und Lizenzen findest du in der App unter „Mehr“ → „Quellen und Lizenzen“.
7a. Hosting und Cloudflare
Die Webseite alpicheck.de und die Wetterdatei liegen auf einem Server bei Hetzner Online GmbH in Deutschland (Nürnberg). Hetzner ist als Hoster für uns als Auftragsverarbeiter tätig. Alle Anfragen an alpicheck.de laufen über das Netz von Cloudflare, Inc. (USA).
- Rolle: Cloudflare verarbeitet die Daten in unserem Auftrag (Auftragsverarbeitung nach den Bedingungen von Cloudflare).
- Zweck: Auslieferung der Webseite und der Wetterdatei sowie Schutz vor Angriffen und Missbrauch.
- Daten: Cloudflare sieht deine vollständige IP-Adresse und die technischen Anfragedaten (z. B. abgerufene Adresse und Zeitpunkt).
- Rechtsgrundlage: unser berechtigtes Interesse an einer sicheren und zuverlässigen Auslieferung (Art. 6 Abs. 1 lit. f DSGVO).
- Drittland: Cloudflare kann Daten in den USA verarbeiten. Cloudflare ist nach dem EU-US Data Privacy Framework zertifiziert.
Unser Server bei Hetzner erhält die Anfragen von Cloudflare, führt keine Zugriffsprotokolle und speichert keine vollständigen IP-Adressen; Fehlermeldungen enthalten sie nur gekürzt (siehe Abschnitt 7).
8. In-App-Käufe
Käufe werden über Apple StoreKit abgewickelt. AlpiCheck hat keinen Zugriff auf deine Zahlungsdaten. Die Kaufabwicklung erfolgt ausschließlich über Apple.
9. Kein Tracking, keine Werbung
AlpiCheck verwendet:
- Kein Tracking
- Keine Analytics
- Keine Werbung
- Keine Drittanbieter-SDKs die Daten erheben
Hast du in den iOS-Einstellungen zugestimmt, Analysedaten mit App-Entwicklern zu teilen, stellt Apple der App Absturz- und Leistungsberichte (MetricKit) bereit. AlpiCheck speichert sie nur auf deinem Gerät zur Fehlersuche und sendet sie nicht weiter. Ob Apple solche Daten erhebt, steuerst du in den iOS-Einstellungen unter „Datenschutz & Sicherheit“ → „Analyse & Verbesserungen“.
10. Deine Rechte
Auf unserem Server speichert AlpiCheck keine vollständigen IP-Adressen und keine Zugriffsprotokolle; Fehlermeldungen enthalten IP-Adressen nur gekürzt. Die App-Daten liegen auf deinem Gerät und können durch Deinstallation der App entfernt werden (Einträge im Schlüsselbund bleiben bis zum nächsten Start der App erhalten und werden dann gelöscht); Daten im Gruppendienst (Abschnitt 5a) löschst du in der App mit „Meine Daten beim Dienst löschen“ oder, wenn du Gruppen genutzt hast, mit „Alle meine Gruppendaten löschen“. Für die Verarbeitung deiner Daten im Gruppendienst und deiner IP-Adresse durch Cloudflare und Hetzner (Abschnitte 5a und 7a) hast du die Rechte auf Auskunft, Berichtigung, Löschung, Einschränkung und Widerspruch (Art. 15–18 und 21 DSGVO) sowie das Recht auf Beschwerde bei einer Datenschutz-Aufsichtsbehörde. Wende dich dafür an uns.
11. Kontakt
Bei Fragen zum Datenschutz erreichst du uns unter: [email protected]
Privacy Policy
Last updated: October 2026
1. Data Controller
Sebastian Lemens
Email: [email protected]
2. What data does AlpiCheck collect?
AlpiCheck values your privacy. The app has no account and sends no identifiers as long as you do not turn on “Alert when the danger level rises” and do not join a group (section 5a then applies). Our server stores no full IP addresses and no access logs. When data is requested, your IP address is processed for technical reasons, in particular by Cloudflare when delivering alpicheck.de (see section 7a).
3. Locally stored data
The following data is stored exclusively on your device:
- Favorites: Ski resorts you marked as favorites
- Checklists: Checklists you created
- Settings: Selected region, onboarding status
- Purchase status: Whether a Pro purchase is active (via Apple StoreKit)
- Offline avalanche report: The most recently loaded report, so it is available without a connection
- Widget: Danger level and region for the widget, in storage shared between app and widget
- Notifications: The last known danger levels (to detect an increase) and your morning notification settings
- Diagnostics: Crash and performance reports from Apple (MetricKit), see section 9
- Groups (from version 1.3): your groups with the members’ nicknames, see section 5a “On your device”
This data never leaves your device and is not shared with third parties.
4. Location data
AlpiCheck optionally requests your location to automatically select the appropriate avalanche region, show nearby ski resorts and, in an emergency, determine the mountain rescue number of the country you are in (using bundled country borders, without internet access). Your location is:
- Only accessed during active use ("When In Use")
- Processed locally only
- Not stored, not sent to any server (exceptions: “Share location”, see below; the driving time in the ski day planner, for which Apple receives your starting point; saving “Mein Standort” as home or accommodation: the position then stays in this iPhone’s keychain, and Apple receives it once for the place name; from version 1.3.1 a voting link from “Mein Standort”: the position is then in the encrypted plan, see ski day planner)
- Your location is only sent while your device is inside a ski resort. The app checks this on the device using the resort area (runs and lifts with a 300 m buffer, from OpenStreetMap data; because of GPS scatter, up to about 350 m counts as inside). Outside it sends nothing and deletes your position from the service.
- The precise position (accuracy up to 50 m) is sent at most once a minute, every 5 minutes when you are not moving, end-to-end encrypted to our group service (section 5a). Only the members of this group can read it, we cannot.
- There is no history: the service keeps only the latest position per member and deletes it at the latest 15 minutes after the last transmission, immediately when you stop sharing, when you leave the group and together with the group. When the chosen duration ends, the app deletes the position as soon as it runs; if iOS has terminated it or there is no network, the service deletes it at the latest 15 minutes after the last transmission.
- Our service only sees when an encrypted position arrives or is deleted. From this one could infer when you share, move, or enter or leave a ski resort, but not where you are. We do not analyse this.
- To work with the screen locked, the app uses your location in the background while you share; iOS shows this with the blue location indicator. The permission remains “While Using the App”.
- Below 30 % battery, sharing pauses; your group then sees “Standort pausiert – Akku” (location paused – battery) instead of your position.
- To know the resort area, the app downloads the slope map file of the nearest ski resorts from alpicheck.de (like the map, without coordinates or identifier). Which resort files are requested tells alpicheck.de and Cloudflare, together with your IP address, roughly which area you are in; our server keeps no access logs (section 7a).
Sharing your location is not an emergency call and not a way to locate you in an emergency. In an emergency, dial 112.
The app loads weather and snow data as one shared file for all ski resorts from alpicheck.de (see section 7). Neither your location nor the selected ski resort is transmitted.
In an emergency you can share your coordinates via the share sheet. This only happens when you trigger it yourself, and only with the recipient you choose.
5. Notifications
The morning notification and the “danger level warnings” (an increase detected while refreshing in the app) are created and scheduled on your device. Nothing is sent to a server for them.
The feature “Alert when the danger level rises”, which you turn on yourself in the app (one area without Pro, all favorites with Pro), is different: it works while the app is closed and therefore needs our group service (section 5a). Nothing is transmitted for it unless you turn it on.
5a. Alert when the danger level rises, and groups (group service)
The group service is a server operated by AlpiCheck at Hetzner (see section 7a). There is no account, name, phone number or email address. It is only contacted when you turn on the alert or (from version 1.3) join or create a group.
What data?
- Device key (App Attest): When you first turn it on, your iPhone creates a key that Apple confirms as genuine (“App Attest”, Apple Inc.). The service stores the public key, a counter and the time of the last request. This lets the app prove that it is a genuine, unmodified AlpiCheck app on a genuine device (abuse protection). The key contains nothing about you but is a permanent random identifier of your device towards the service.
- Notification token: The identifier Apple uses to deliver notifications to your device (APNs), and whether your build uses the development or production environment.
- Micro-regions of your favorites: The identifiers of the warning regions (e.g. “AT-07-05”) of the areas you want alerts for, and the language (de, en, it, fr). The service checks the official avalanche bulletins hourly and stores the last seen danger level per region (independent of you, at most 30 days).
- Groups (from version 1.3): Random group and member identifiers, type and expiry of the group. Nickname, position, chat messages and figures are encrypted on your device with a group key; the service only stores and sees ciphertext. The key is in the invitation link after the “#” and is never sent to our server. The invitation page alpicheck.de/g/… reads the link only in your browser to put it on the clipboard when you tap “AlpiCheck laden und beitreten” (download AlpiCheck and join); it neither sends nor stores it.
- Group chat (from version 1.3): For each message the service stores the sender’s identifier, the time and the size. Content, type (text, quick message, meeting point), and the place and time of a meeting point are encrypted. If you mute a group or block a member, the service stores this with your member identifier so that it no longer sends you notifications of the group or of that member; the blocked member is not told. Links, photos and voice messages cannot be sent.
- Reports (from version 1.3): If you report a message or a member, after your confirmation the plaintext of the reported message (or the nickname) is sent to us with time and type, together with the identifiers of the group, of you and of the reported member and that member’s device key, so that we can block it in case of a violation. No other messages are included. You can report through the menu of a message (“Melden …”, Report) or in the group’s member list, and also by email to [email protected]. We review reports within 24 hours. A person looks at every report before a device is suspended; the service never suspends on its own, neither after a number of reports nor because of a word filter. So that a report cannot be avoided by leaving, after you leave a group (also with “Delete all my group data”) the service keeps, for 8 days, only the link between your former member identifier and your device key, without any content; messages of members who left remain visible and reportable to the other members for up to 8 days.
- Suspension (from version 1.3): If the rules for groups are violated, we suspend the reported member’s device key. The service then removes the device from all groups and deletes its data at the service (memberships, notification token, warning regions). It keeps only the public device key, a short reason with the reviewer’s initials and the time, so that the device cannot rejoin right away. If you think a suspension is wrong, write to us.
- IP address: See section 7a. The service does not store it; for rate limiting it exists only transiently in memory as a non-reversible salted hash.
Purpose and legal basis
The purpose is to provide the feature you turned on (Art. 6(1)(b) GDPR) and to protect the service against abuse (Art. 6(1)(f) GDPR, legitimate interest in secure operation; this includes reports, blocking and suspensions). There is no combination with other data, profiling, advertising or disclosure for other purposes. The app asks for permission for notifications only when you turn it on or first open a group chat; you can withdraw it in iOS Settings at any time.
Recipients
- Hetzner Online GmbH (hosting) and Cloudflare, Inc. (delivery), each as processors, see section 7a.
- Apple Inc.: delivery of notifications through the Apple Push Notification Service and confirmation of the device key (App Attest). A notification about a rising danger level contains the identifiers of the affected regions and the levels; Apple processes them as the delivery service. Notifications from groups contain only identifiers and the encrypted content; the app’s notification extension decrypts it on your device (“Anna: Bin am Lift”). Apple's Privacy Policy applies.
- Members of your group see what you share in the group (nickname, position, messages, meeting points and, with your consent, your totals for the leaderboard). That is the purpose of the feature.
Cloudflare and Apple may process data in the USA (EU-US Data Privacy Framework).
Retention and deletion
- Device key (with counter and time of the last request): until you delete it with one of the buttons below; if the device has not contacted the service for 90 days, the service deletes it with all related data (devices in running groups: with the group).
- Notification token: as long as one of your groups is running or the alert is turned on. After that the service deletes it at the next clean-up (every 5 minutes) once your device has not sent a request for one hour. When you turn the alert off, the app deletes it itself.
- Warning regions (alert when the danger level rises): until you turn the alert off. If Apple has invalidated the notification token (app removed) and no request arrives for 7 days, the service deletes them.
- Group and membership (identifiers, encrypted nickname): ski group until it expires (1 hour to 7 days), clique until the end of the season (1 June), your membership immediately when you leave. The “Pro in the clique” flag ends with the clique.
- Chat messages: 7 days, at most until the group ends.
- Position: 15 minutes after the last transmission, immediately when you stop sharing or leave the ski resort.
- Invitations: at most 24 hours (default), for a ski group at most until it ends.
- Totals for the leaderboard: until you withdraw consent, leave or the group ends (see section 6).
- Mute and block: until you undo it, leave the group or it ends.
- Link after leaving (former member identifier to device key, without content): 8 days.
- Reports: until the review is completed, at most 6 months.
- Suspensions: until we lift them; “Delete all my group data” does not lift a suspension.
- Delete immediately yourself: In the app under “More” or “Favorites”, at “Alert when the danger level rises”, use “Delete my data at the service”. It removes group memberships, notification token, warning regions and the device key on the server. Merely uninstalling the app does not delete server-side data; turn the feature off first or use this button. The app shows this button once you have used the alert.
- Delete all my group data (from version 1.3): In the app under “More” → “Groups” → “Delete all my group data” (“Alle meine Gruppendaten löschen”). The button appears once you have created or joined a group. If groups are currently switched off, it is shown under “More” as a separate card “Your data”. At the service it deletes the same as the button above (group memberships, notification token, warning regions, device key); on your device it deletes all group keys, the group file with the nicknames, the chat histories, the leaderboard consents and totals including reviews, pending joins, your own profile, the age confirmation and the confirmation of the chat rules, as well as the ski day planner’s voting links, the saved places home and accommodation and the recently chosen starting points. If the device is locked at that moment, the app remembers the deletion and completes it the next time you open it.
- The service has no backups.
On your device, the group key and the identifier of your device key are stored in the keychain (this device only, not in iCloud or device backups). iOS keeps keychain items when an app is deleted; AlpiCheck removes these entries on its first launch after a reinstall. If you never open the app again, they remain on the device, encrypted and readable only by AlpiCheck, and contain no plaintext group content.
On your device
So that the app can show your groups without a connection, it stores a file with your groups in app-owned storage (an App Group, also used by the notification extension): type and expiry, the members’ random identifiers and their decrypted nicknames and emojis. Next to it are your most recently used own profile (nickname and emoji, for the next join) and a queue for joining and leaving without a connection; the invitation link of a pending join is stored only in the keychain. The group chat is stored decrypted in a further file (at most 500 messages per group; the app removes messages older than 8 days), together with messages not yet sent and your list of blocked members. The notification extension reads group keys, nicknames and this list to decrypt incoming notifications; it sends nothing. When you set a meeting point, the map starts at your location if you have allowed it; only the point you choose is sent. These files are excluded from iCloud and computer backups and never leave your device. The app deletes expired groups and invitations on its next launch, and everything with “Delete all my group data” or when you uninstall the app.
Age
Groups are for people aged 16 and over (Art. 8 GDPR). Before your first group you confirm in the app that you are at least 16 (self-declaration, no proof). The confirmation stays on your device only and is reset by “Delete all my group data”.
5b. Ski day planner and vote (alpicheck.de/plan and /p/)
The ski day planner on alpicheck.de suggests ski areas for a starting point, radius and day. Your browser does the ranking. It loads area, season and starting point data, the list of ski passes, the weather file, the current avalanche situation, the map and the place list from our server; your starting point, day and choices are not sent to our server and not stored (for the search for hotels and addresses, see below). Your browser calculates the distance as a straight line. For the approximate driving time (without traffic, precalculated by us from OpenStreetMap road data) it loads the table for an area of about 55 × 38 km containing the starting point from our server. This roughly shows the region of the starting point; the exact starting point is not transmitted in the process. The page loads nothing from Google, Apple or other third parties.
My location: Only if you tap “Mein Standort” (my location) does the page ask your browser for your location; the browser asks for your permission first, and you can refuse. The position stays in the page’s memory: it is not sent to our server in plain text, and the page does not store it. The loaded map section and the area of the driving time table (see above) roughly reveal the region. At the start the map only loads the section of the whole radius (at least 25 km); the start marker sits exactly on the position. If you create a voting link, the position is included as the starting point in the encrypted plan, named “eigener Standort” (own location) (see below); the note above the button tells you this beforehand. The server then stores it only as part of the ciphertext and deletes it with the plan 7 full days after the ski day; the plan cannot be deleted earlier. The legal basis for requesting your location in the browser is your consent (Art. 6(1)(a) GDPR), which you end by closing the page or in your browser’s settings. For the starting point in the plan, as for the rest of the plan, the legal basis is providing the vote (Art. 6(1)(b) GDPR).
My ski passes: If you select ski passes in the planner under “Meine Skipässe” (my ski passes), it only suggests areas where one of them is valid. So that the selection is still there on your next visit, the page stores the IDs of the selected ski passes in your browser’s localStorage. The selection is not sent to our server and is not included in the voting link. “Skipass-Filter zurücksetzen” (reset ski pass filter) or deselecting all ski passes deletes the entry, as does deleting the website data in your browser’s settings.
“Abstimmungslink erstellen” (create voting link) creates a vote in the group service (see section 5a, without App Attest). Your browser end-to-end encrypts the plan (day, name of the starting point, location of the starting point rounded to about 10 m, suggestions with straight-line distance and, where known, approximate driving time from the starting point, optionally your first name), the votes (optionally a first name and the chosen areas) and the chosen destination with a key that is only in the link after the “#” and never reaches our server.
- Stored on the server: only the ciphertext of plan, votes and result, which it cannot read; the ski day in plain text (for deletion); hashes (SHA-256) of the link token, the creator’s secret and the vote secrets; random vote IDs; times of creation and change.
- In your browser: The secret for choosing the destination is stored only in the localStorage of the browser that created the vote; only there can the destination be set. When you vote, the ID and secret of your vote are stored in localStorage so you can change or withdraw it. Apart from that, the page only stores your selection under “Meine Skipässe” (see above) in your browser and, if you switch it, the choice between light and dark mode. The page deletes these entries itself once the service has deleted the vote (7 full days after the ski day) or no longer finds it.
- Who sees what: Everyone with the link sees the plan, first names and choices, for links from the web planner also the starting point on the map (for every kind of starting point, also your own location), and likewise for links from the app from version 1.3.1. Our server cannot read the starting point. The voting page shows the names only after you have voted yourself, before that only the number of votes per resort. There is no public list and no search. There is no free text apart from the first name.
- What the voting page loads: For the danger level, weather and estimated crowding it loads the resort data, the weather file, the holiday table and the current avalanche situation from our server. These files are the same for every vote, so they do not reveal which vote you are looking at. The voting page does not load the driving-time table. The map above the suggestions loads map sections from alpicheck.de, like the planner map (see Map and place list). Which sections are loaded roughly tells alpicheck.de and Cloudflare, together with your IP address, in which region the areas of the vote and the starting point are. The “Hangneigung” (slope angle) and “Pisten” (ski runs) layers are off when the page opens. If you turn them on, the page loads the slope angle tiles and the run files of the ski areas in the visible section from alpicheck.de, like the planner, not only those of the vote; only the runs of the areas of the vote are drawn. So these, too, only reveal the region. The server does not learn the plan, first names or votes from this; our server keeps no access logs (section 7a).
- Deletion: The service deletes plan, votes and result 7 full days after the ski day. You can delete your vote at any time before that with “Stimme zurückziehen” (withdraw vote).
- IP address: only briefly in memory, as a non-reversible hash with a random salt, to limit requests; never in the database or log.
- Measurement: only counters without identifiers (plans created, votes, plans decided and, when a vote ends, how many votes it had). No cookies, no tracking, no analytics tools.
The purpose is to provide the vote to you and your group (Art. 6(1)(b) GDPR) and to protect the service against abuse (Art. 6(1)(f) GDPR). Recipients are Hetzner and Cloudflare as processors (section 7a). The links “Route in Google Maps” and “Apple Karten” (Apple Maps) are plain links without scripts from Google or Apple. Only your click opens the other service (Google Ireland Limited or Apple Inc.); it then receives the coordinate of the ski area and, except with “Mein Standort”, the coordinate of your starting point. With “Mein Standort” the route link contains no starting point. Google’s or Apple’s privacy policies apply there.
Map and place list
The planner’s map is delivered by our own server (map data © OpenStreetMap contributors, Open Database License; map style Protomaps). Fonts, symbols and the program library (MapLibre) are also hosted on alpicheck.de; no third party receives any data. Your browser only loads the map sections you look at. Which ones tells alpicheck.de and Cloudflare, together with your IP address, roughly which area you are looking at; our server keeps no access logs (section 7a). The suggestions while you type into the search field come from a place list that your browser loads once in full from alpicheck.de; what you type does not leave your browser. If you tap on the map, the starting point in the voting link is called “Punkt auf der Karte nahe …” (point on the map near …) with the nearest place from the list; its location is in the encrypted plan (see above). If you turn on the “Hangneigung” (slope angle) layer, your browser loads the tiles of the visible area from alpicheck.de. We calculate the slope angles ourselves from the Copernicus elevation model (produced using Copernicus WorldDEM-30 © DLR e.V. 2010-2014 and © Airbus Defence and Space GmbH 2014-2018 provided under COPERNICUS by the European Union and ESA; all rights reserved); they are stored ready-made on our server, no other services are involved. The organisations in charge of the Copernicus programme by law or by delegation do not incur any liability for any use of the Copernicus WorldDEM-30. The “Pisten” (ski runs) layer loads the run files of the ski areas in view from alpicheck.de. Both layers are off when the page opens.
Search for hotels and addresses
Only when you tap “Suchen” (search) or press Enter in the search field does your browser send the search text to our server (group service, section 5a). Typing alone never does.
- Forwarding: Our server queries the Nominatim service of the OpenStreetMap Foundation (United Kingdom; an EU Commission adequacy decision applies to the United Kingdom) with the search text. Nominatim receives only the search text, not your IP address, no referer and no cookie. The OpenStreetMap Foundation’s privacy policy applies.
- Storage: Our server keeps search text and results in memory as a cache for up to 7 days, so that identical searches do not burden Nominatim again. The search text is not logged. Your IP address is processed only briefly to limit requests, as in section 5a.
- What happens with the result: name, address and coordinate of the chosen result stay in the page’s memory. Your browser calculates the straight-line distance from it, and the links to Google Maps and Apple Maps start at this point. The voting link contains the short name (e.g. the name of the accommodation) and the location rounded to about 10 m, encrypted like the whole plan; never the address. The results come from OpenStreetMap (© OpenStreetMap contributors, Nominatim).
- Legal basis: providing the search you requested (Art. 6(1)(b) GDPR) and protecting the service against abuse (Art. 6(1)(f) GDPR). Without the search you can still choose a starting point from the place list, on the map or with “Mein Standort”.
Ski day planner in the app
From app version 1.3, the planner is also in the app under “Planen” (Plan) → “Skitag planen”. Your iPhone does the ranking with the same rules as the website. From our server the app only loads the weather file, the current avalanche situation and the planner’s season dates and rules (the same files as the website at alpicheck.de/plan/daten/), without starting point, day or choices. For the crowding estimate it uses, as everywhere in the app, a table of school and public holidays that it also loads from alpicheck.de (section 7). Unlike the website, the app uses Apple Maps (MapKit, Apple Inc.) for the map, search, place names and driving time:
- Search: While you type, the app shows two things: results it finds only on the iPhone (in the planner home, accommodation and ski areas; in “Passende Gebiete finden” home, accommodation and the recently chosen starting points) and, from two characters on, suggestions from Apple. For this the app sends the search text to Apple while you type (after a short pause, not on every keystroke). If you tap a suggestion, Apple receives it once more to determine the coordinate. “Suchen” (search) or Return also sends the search text to Apple to find places, hotels and addresses. This applies to the planner and to “Passende Gebiete finden” (find suitable areas). AlpiCheck adds no location to the search text, only the fixed search area of the Alps; Apple processes the request under its privacy policy.
- Place name when tapping the map: The app asks Apple for the name of the place at the tapped coordinate (reverse geocoding). As its name, the voting link contains “Punkt auf der Karte nahe <place>”. The same applies when you save “Mein Standort” as home or accommodation; the link then says “Adresse in <municipality>”. From version 1.3.1 the location of the starting point is also in the plan (see “Your votes”).
- Driving time: As soon as a starting point is set, the app asks Apple for the driving time by car, only for the up to five suggestions. If the starting point, day, departure, radius or a setting changes, it asks again only after a short pause, and it does not ask again for results it already has. Apple receives the coordinate of your starting point (also with “Mein Standort”), the coordinates of the areas and the chosen departure time. The driving time takes the usual traffic at that time into account. The app keeps the results in memory for up to 6 hours.
- Routes: The buttons “Apple Karten” and “Google Maps” open the respective service (Apple Inc. or Google Ireland Limited) only when you tap them. It then receives the coordinate of the area’s valley station (if unknown, the location of the area) and the coordinate of your starting point, including a saved home or accommodation. Only with “Mein Standort” does the link contain no start; the map service then uses your location itself.
- Directions in the area sheet: The buttons “Apple Karten” and “Google Maps” open the respective service only when you tap them, with the valley station as destination and without a start (the map service uses your location itself; AlpiCheck does not ask for your location for this). If you saved home or accommodation in the planner, the area sheet shows the straight-line distance to it, calculated on the iPhone. Only when you tap “Fahrzeit” (driving time) does Apple receive the coordinate of that place, the coordinate of the valley station and the current time as departure.
- Find suitable areas: The selection by starting point, skill and size is calculated on the iPhone. For this the app loads season dates and rules from alpicheck.de like the planner (also for the short profile and the regions in “Planen” (Plan)); your starting point, answers and choices are not sent to our server. “Mein Standort” asks only after you tap it; the position stays on the iPhone. If you open the planner from there with “Skitag planen mit diesem Startpunkt”, the planner’s description here applies to the starting point (e.g. the driving time via Apple). Up to three recently chosen starting points (name, label, which may contain the address, and coordinate; never your own location) are kept in this iPhone’s keychain like home and accommodation. A long press on an entry removes it, “Verlauf löschen” (clear history) removes all.
- My ski passes: If you select ski passes in the app under “Mehr” (more) or in the planner, the app only stores their IDs on the iPhone (app settings). It loads the list of ski passes from alpicheck.de, without any information about you. Your selection is not sent to our server and is not included in the voting link. “Zurücksetzen” (reset) or deselecting all ski passes deletes the entry, as does deleting the app.
- Home and accommodation: If you save a starting point, its name, address and coordinate are kept only in this iPhone’s keychain (“this device only”, not in iCloud). They are not sent to our server. If you create a voting link from home or accommodation, from version 1.3.1 the short name (e.g. “Adresse in <municipality>”) and the location rounded to about 10 m are in the encrypted plan, never the address. A long press on the entry deletes it.
- Your votes: The app encrypts the plan in the same way as the web planner (see above). From version 1.3.1, like on the web, it contains the location of the starting point rounded to about 10 m for every kind of starting point, plus straight-line distance and, where known, driving time; for your own location this is your current position. The note above the “An die Gruppe schicken” button tells you this beforehand. Everyone with the link sees the starting point on the map of the voting page; our server cannot read it. The legal basis, as for the rest of the plan, is providing the vote (Art. 6(1)(b) GDPR). Up to version 1.3.0 the app’s plan only contained the name of the starting point and, except from home and your own location, straight-line distance and driving time. If you create a voting link in the app, the link, key and the secret for setting the destination are kept in this iPhone’s keychain. Only here can you set the destination. If you vote yourself in the app (from version 1.3.1), the app encrypts your vote (first name from the plan and the chosen areas) in the same way as the voting page; the ID and secret of the vote are then also kept in the keychain. The app deletes the entries 7 full days after the ski day, at the latest the next time you open the planner. What the server stores is described in section 5b above; the secrets are kept in the keychain here instead of localStorage. The app also keeps your first name for the next voting link only in this iPhone’s keychain.
- After deleting the app: iOS may keep keychain entries after the app is deleted. If you reinstall the app, the planner deletes all its entries (your votes, home, accommodation, recently chosen starting points) the first time you open it. “Delete all my group data” (section 5a) deletes them as well.
- Map filter: The filter “Nur im Umkreis um meinen Standort” on the avalanche map is calculated on the iPhone only. If you turn on the filters for ski areas without operation or closed today, the app loads the season dates from alpicheck.de (the same file as the planner, without location or choices).
The legal basis is providing the features you use (Art. 6(1)(b) GDPR). Apple’s Privacy Policy applies to the data at Apple; Apple may process it in the USA (EU-US Data Privacy Framework).
6. Health data (HealthKit)
AlpiCheck can optionally access HealthKit to display ski season statistics. It reads workouts (with elevation descended and maximum speed, if your recording app stores them), downhill snow sports distance and active energy, as well as a workout's route to match it to a ski resort. AlpiCheck does not write anything to Health. This data is:
- Read and evaluated on your device; the workouts themselves, routes and calories never leave your device
- Only transmitted if you switch on “Share my values” (“Meine Werte teilen”) in a group (from version 1.3, see below)
- Not used for advertising or tracking
Sharing values for the leaderboard (from version 1.3): In a clique or ski group you can switch on “Share my values”. Before that you confirm a separate consent for each group; nothing is preselected. The legal basis is your explicit consent (Art. 9(2)(a) and Art. 6(1)(a) GDPR); as a precaution we treat the values as health data. Then:
- What: totals and figures for titles: kilometres, elevation descended, ski days, number of resorts, time on skis, cross-country kilometres and your season’s maximum speed (values above 120 km/h are discarded), plus your first and last ski day as a calendar date, the number of your early days (start before 9 am) and late days (end after 4 pm) and a few yes/no values for titles. In a clique the totals cover the season. In a ski group only kilometres, elevation, time, number of ski days and maximum speed for its period are sent, no figures for titles. No individual workouts, no routes or places, no times of day, no heart rate, no calories.
- How: The app calculates the totals on your device, rounds them and encrypts them end to end with the group key. Our group service (section 5a) stores only the ciphertext (always the same size), your member identifier and the time; it cannot read the values. The app sends at most once per hour: when you open the leaderboard or the app and, while you share, in the background (iOS background app refresh, which you can turn off in iOS Settings under “General” → “Background App Refresh”). In the background it uploads the same totals as when you open the app, nothing else.
- Who sees them: Only the members of this group. Their apps calculate the leaderboard, the speed range and titles from them.
- Withdrawal and deletion: At any time by switching “Share my values” off; the app then deletes your totals at the service immediately (without a connection, the next time you open it). They are also deleted when you leave the group and when the group ends (ski group on expiry, clique on 1 June). On the other members’ devices the most recently loaded values remain until their next update, and for a ski group in the review for up to 14 days.
- On your device: The app stores your consents and the most recently loaded totals of the members in a separate file (not in backups). After a ski group ends, a review with its daily leaderboard stays on your device for up to 14 days or until you dismiss it. “Delete all my group data” removes both.
- Pro in a clique: If the host of a clique has AlpiCheck Pro, the service records until the end of the season that the season leaderboard is unlocked for all members. Only the app checks whether someone has Pro; no purchase data is sent to the service for this.
7. External services
AlpiCheck queries the following public APIs to display current data:
- Avalanche warning services (avalanche.report and static.avalanche.report for Tyrol, South Tyrol, Trentino, Carinthia and other EAWS regions; aws.slf.ch for Switzerland; Météo-France reports for the French Chablais also via static.avalanche.report): avalanche reports per region
- AlpiCheck weather data (alpicheck.de): one file with weather, new snow and snow depth for all ski resorts, at most every 15 minutes and when you refresh. Our server compiles it hourly from open data of the weather services (MET Norway, GeoSphere Austria, Land Tirol, SLF, MeteoSwiss, Deutscher Wetterdienst, Province of Bolzano, Meteotrentino). No data from your device reaches these weather services. The request passes through Cloudflare's network to our server (see section 7a); the server keeps no access logs, and error messages contain IP addresses only truncated (IPv4 to the first two blocks, IPv6 to the first 32 bits) and no request headers.
- School and public holidays (alpicheck.de): one table for all countries for crowding estimates, without any data from you. The data comes from the OpenHolidays API (openholidaysapi.org, ODbL); we take it over once per season, and from version 1.3 your device no longer contacts OpenHolidays. Up to version 1.2 the app queried OpenHolidays directly, with country and region.
- Lift and slope status (alpicheck.de, from the start of the 2026/27 season): one file with the number of open lifts and slopes for some ski resorts, without any data from you. The app loads it at most every 5 minutes when you open a resort or the ski day planner or tap “Aktualisieren” (refresh), the web planner and the voting page once when the page loads. Our server takes the numbers from the open data of Dolomiti Superski and LTS (South Tyrol tourism data) via the Open Data Hub South Tyrol (CC0); your device does not contact these services. The link “Lift- und Pistenstatus (Gebiet)” is a plain link: only your tap opens the operator's page, where the operator's privacy policy applies.
- AlpiCheck slope angles (alpicheck.de): slope angle map tiles for the visible map area, only when you turn on slope angles on the map. We calculate the slope angles ourselves from the Copernicus elevation model (produced using Copernicus WorldDEM-30 © DLR e.V. 2010-2014 and © Airbus Defence and Space GmbH 2014-2018 provided under COPERNICUS by the European Union and ESA; all rights reserved); they are stored ready-made on our server, no other services are involved. The organisations in charge of the Copernicus programme by law or by delegation do not incur any liability for any use of the Copernicus WorldDEM-30. The request passes through Cloudflare like the weather file (section 7a).
- OpenSlopeMap (wmts.openslopemap.org): only older app versions load slope angle map tiles from there, for the visible map area and only when you turn on slope angles. Updating to the current version switches to AlpiCheck slope angles.
- Apple Maps: map display via Apple; Apple's Privacy Policy applies. Your location dot is only shown on the device.
Your IP address is technically transmitted to these services, together with the query data mentioned (region, country for holidays, map area). No identifiers, accounts or other personal data are sent. An overview of all data sources and licenses is available in the App under “More” → “Sources and Licenses”.
7a. Hosting and Cloudflare
The website alpicheck.de and the weather file are hosted on a server at Hetzner Online GmbH in Germany (Nuremberg). Hetzner acts as our processor for hosting. All requests to alpicheck.de pass through the network of Cloudflare, Inc. (USA).
- Role: Cloudflare processes the data on our behalf (data processing under Cloudflare's terms).
- Purpose: delivering the website and the weather file and protecting them against attacks and abuse.
- Data: Cloudflare sees your full IP address and the technical request data (e.g. requested address and time).
- Legal basis: our legitimate interest in secure and reliable delivery (Art. 6(1)(f) GDPR).
- Third country: Cloudflare may process data in the USA. Cloudflare is certified under the EU-US Data Privacy Framework.
Our server at Hetzner receives the requests from Cloudflare, keeps no access logs and does not store full IP addresses; error messages contain them only truncated (see section 7).
8. In-App Purchases
Purchases are processed through Apple StoreKit. AlpiCheck has no access to your payment information. All payment processing is handled exclusively by Apple.
9. No tracking, no ads
AlpiCheck uses:
- No tracking
- No analytics
- No advertising
- No third-party SDKs that collect data
If you have agreed in iOS Settings to share analytics with app developers, Apple provides the App with crash and performance reports (MetricKit). AlpiCheck stores them only on your device for troubleshooting and does not send them anywhere. You control whether Apple collects such data in iOS Settings under “Privacy & Security” → “Analytics & Improvements”.
10. Your rights
AlpiCheck stores no full IP addresses and no access logs on its server; error messages contain IP addresses only truncated. App data resides on your device and can be removed by uninstalling the app (keychain entries remain until the app is next launched and are then deleted); data in the group service (section 5a) you delete in the app with “Delete my data at the service” or, if you have used groups, with “Delete all my group data”. For the processing of your data in the group service and of your IP address by Cloudflare and Hetzner (sections 5a and 7a) you have the rights of access, rectification, erasure, restriction and objection (Art. 15–18 and 21 GDPR) and the right to lodge a complaint with a data protection supervisory authority. Please contact us for this.
11. Contact
For privacy-related questions, contact us at: [email protected]