Datenschutzerklärung
Verantwortlicher
Verantwortlich für die Verarbeitung personenbezogener Daten auf dieser Seite im Sinne der Datenschutz-Grundverordnung ist:
- Betreiber
- Marcel Steinmetz
- Anschrift
- Lüdemannstr. 66, 24114 Kiel
- kontakt@openxtrail.com
Einen Datenschutzbeauftragten muss openXtrail nicht benennen. Art. 37 DSGVO verlangt einen für Behörden, für Stellen, deren Kerngeschäft die umfangreiche Überwachung von Personen ist, und für die umfangreiche Verarbeitung besonderer Datenkategorien; § 38 BDSG ab zwanzig Personen, die ständig mit der Verarbeitung beschäftigt sind. Hier trifft nichts davon zu — openXtrail ist ein privates Projekt einer einzelnen Person. Fragen zum Datenschutz beantwortet deshalb dieselbe Adresse wie alles andere.
Hosting
openXtrail läuft auf einem eigenen Root-Server bei Strato in Deutschland, unter Proxmox VE 9, und ist dort seit dem 27. August 2026 erreichbar. Alles, was auf dieser Seite entsteht — Konten, Touren, Nachrichten, das Kartenmaterial —, liegt auf dieser einen Maschine. Es gibt keine zweite Kopie bei einem anderen Anbieter. Wo überhaupt ein anderes Unternehmen beteiligt ist, steht weiter unten: beim E-Mail-Versand, beim Newsletter und — sobald sie eingerichtet ist — bei der Anmeldung mit Google.
Strato stellt diesen Server bereit und kommt damit technisch an die Daten heran, verarbeitet sie aber ausschließlich für uns und nicht für eigene Zwecke. Das ist eine Auftragsverarbeitung; Art. 28 DSGVO schreibt dafür einen Vertrag zwischen uns und Strato vor, der das Unternehmen an unsere Weisungen und an die Vertraulichkeit bindet.
Rechtsgrundlage ist Art. 6 Abs. 1 lit. f DSGVO — ohne Server keine Seite — und, sobald du ein Konto hast, zusätzlich Art. 6 Abs. 1 lit. b DSGVO.
Server-Protokolle und Missbrauchsschutz
Jede Anfrage an diese Seite hinterlässt eine Zeile im Protokoll des Webservers: die IP-Adresse, an die geantwortet wurde, Datum und Uhrzeit, die angefragte Adresse, den Statuscode, die Größe der Antwort sowie die Kennung des Browsers und die zuvor besuchte Seite, soweit der Browser beides mitschickt.
Das ist der übliche Umfang eines Webserver-Protokolls, und es dient dem Betrieb: zu sehen, ob die Seite antwortet, und einen gemeldeten Fehler nachvollziehen zu können. Diese Zeilen bleiben auf demselben Server und gehen an niemanden. Rechtsgrundlage ist Art. 6 Abs. 1 lit. f DSGVO; das berechtigte Interesse ist ein Dienst, der läuft und dessen Fehler auffindbar sind.
Dieselbe Adresse begrenzt außerdem, wie oft hintereinander man sich anmelden, registrieren oder eine Mail anfordern kann — sonst ließen sich Passwörter durchprobieren oder fremde Postfächer mit Bestätigungsmails zuschütten. Die IP-Adresse steht dafür als Teil eines Zählerschlüssels in Redis, dem Zwischenspeicher der Anwendung, und in keiner Tabelle der Datenbank; der Zähler läuft mit seinem Zeitfenster ab, also nach Minuten bis Stunden. Die E-Mail-Adresse, gegen die dabei ebenfalls gezählt wird, liegt dort nur als SHA-256-Prüfsumme.
Die Adresse selbst stammt aus dem letzten Eintrag des Feldes X-Forwarded-For. Dort trägt unser eigener Webserver ein, welchen Absender er gesehen hat; was ein Aufrufer selbst in dieses Feld schreibt, zählt nicht — sonst hätte die Bremse einen Ausschalter.
Eine feste Löschfrist ist für diese Protokolldateien bisher nicht eingerichtet; sie liegen auf dem Server, bis der Dienst neu ausgerollt wird. Das steht hier, weil es so ist — eine Frist zu behaupten, die nirgends eingestellt ist, wäre der bequemere Satz und der falsche.
Dein Konto
Ein Konto brauchst du für alles, was dir gehört: eigene Touren, gespeicherte Routen, eigene Einstellungen. Dafür speichern wir:
- E-Mail-Adresse
- Deine Anmeldung, und der Weg, auf dem wir dich erreichen — Bestätigung der Registrierung, neues Passwort, Antwort auf eine Anfrage.
- Passwort
- Nie im Klartext. Gespeichert wird nur ein Hash, aus dem sich das Passwort nicht zurückrechnen lässt; wer die Datenbank läse, könnte sich damit nicht anmelden.
- Anzeigename
- Der Name, unter dem du auf der Seite auftauchst. Bei der Registrierung trägst du ihn selbst ein; bei einem über Google angelegten Konto bilden wir den ersten aus dem Teil der Adresse vor dem @. Ändern kannst du ihn danach jederzeit unter Einstellungen › Profil.
- Profilbild
- Nur wenn du eines hochlädst. Es wird auf 256 × 256 Bildpunkte umgerechnet und als WebP in der Datenbank abgelegt, nicht als Datei irgendwo daneben.
- Lieblingssportarten
- Welche Sportarten dich interessieren; danach richten sich Vorauswahl und Vorschläge.
- Zuhause
- Ein Punkt auf der Karte mit einer Beschriftung, wenn du einen setzt — der übliche Startpunkt für eine Planung. Freiwillig und jederzeit wieder löschbar.
- Einstellungen
- Sprache, Einheiten, Sichtbarkeit des Profils, Auffindbarkeit, Benachrichtigungen und die Schriftgröße der Kartenbeschriftung, die unter „Bedienungshilfen“ zu finden ist.
Technisch stehen diese Angaben in den Tabellen users, identities, user_avatars und user_sports. Rechtsgrundlage ist Art. 6 Abs. 1 lit. b DSGVO: Ohne diese Daten gibt es kein Konto, und das Konto ist das, worum du gebeten hast.
Dazu kommen zwei Tabellen, die nur die Anmeldung am Laufen halten: refresh_tokens für die Sitzungen und email_tokens für die zeitlich begrenzten Links aus Bestätigungs- und Passwortmails. Kurzlebig sind darin die Token selbst — ein abgemeldeter oder abgelaufener Token öffnet nichts mehr. Die Zeile bleibt danach stehen: bei einer Sitzung als Vermerk, dass es sie gab und wann sie endete, bei einem Link als Vermerk, dass er eingelöst wurde. Spätestens mit der Löschung deines Kontos verschwinden sie ganz.
Eine siebte Tabelle kommt nur ins Spiel, wenn jemand mit Administrationsrechten auf dieser Seite etwas an deinem Konto ändert: admin_actions hält fest, wer wann was getan hat — eine Rolle geändert, ein Konto gesperrt oder wieder freigegeben, ein Profil oder eine E-Mail-Adresse geändert, die Newsletter-Einwilligung gesetzt oder gelöscht, eine Bestätigungs- oder Passwortmail ausgelöst. Meist steht eine kurze englische Notiz dabei, die sagt, was sich geändert hat — bei einer Adressänderung die vorherige Adresse. Beim Sperren, beim Freigeben und bei den beiden Mails bleibt sie leer, weil die Art des Eintrags dort schon alles sagt. Ein Passwort kann dort nicht auftauchen — diese Anwendung kennt keinen Weg, ein fremdes Passwort zu setzen. Rechtsgrundlage ist Art. 6 Abs. 1 lit. f DSGVO: nachvollziehen zu können, was an einem fremden Konto getan wurde, ist der Sinn eines solchen Protokolls.
Anmeldung mit Google
Auf der Anmeldeseite steht ein Knopf „Mit Google anmelden“. Heute führt er zu einer Fehlermeldung: Bei Google ist kein Zugang für openXtrail eingerichtet, der Server antwortet deshalb abschlägig, und die Seite sagt, dass die Anmeldung mit Google derzeit nicht verfügbar ist. Solange das so bleibt, geht bei einem Druck auf diesen Knopf nichts an Google.
Sobald dieser Zugang eingerichtet ist, wird der Knopf tun, was er verspricht: Dein Browser wird zu Google weitergeleitet, dort meldest du dich bei Google an und bestätigst, dass openXtrail deine Kennung und deine E-Mail-Adresse erfahren darf. Nach deinem Namen fragen wir nicht: Der angefragte Umfang lautet „openid email“. Google schickt daraufhin ein signiertes Token zurück, und daraus lesen wir nicht mehr über dich als die Kennung, die Adresse und den Vermerk, ob Google diese Adresse selbst bestätigt hat. Den Anzeigenamen bilden wir hier selbst, aus dem Teil der Adresse vor dem @; ändern kannst du ihn jederzeit unter Einstellungen › Profil. Verknüpft wird das Konto über die unveränderliche Kennung („sub“) und nicht über die Adresse — eine Adresse bei Google kann wechseln, und wer sie danach bekommt, säße sonst in einem fremden Konto.
Empfänger ist dann Google Ireland Limited, Gordon House, Barrow Street, Dublin 4, Irland. Google verarbeitet Anmeldedaten auch in den USA; dafür besteht der Angemessenheitsbeschluss der Europäischen Kommission vom 10. Juli 2023 zum EU-US Data Privacy Framework. Rechtsgrundlage ist Art. 6 Abs. 1 lit. b DSGVO — du möchtest dich anmelden —, und ausgelöst wird die Weiterleitung erst durch deinen Druck auf den Knopf.
Für die wenigen Minuten dieser Weiterleitung setzt openXtrail dann ein drittes Cookie, das den Rückweg absichert — heute, ohne eingerichteten Zugang, kommt es nie zustande. Was darin steht und wie lange es gilt, steht auf der Cookie-Seite unter /cookies.
Touren, Routen und Standortdaten
Das ist der Teil, der eine Erklärung verdient. Wer Touren speichert, speichert Bewegungsdaten, und die sagen über einen Menschen mehr aus als eine E-Mail-Adresse.
- Aufgezeichnete Touren (Tabelle record_trails): die gefahrene oder gelaufene Linie mit Höhe und Zeit an jedem Punkt, dazu der Name der Tour, Startzeitpunkt, Dauer, Strecke, Höhenmeter, Sportart, der nächstgelegene Ort und die Plattform, aus der sie stammt — samt deren Kennung für sie, damit dieselbe Tour nicht zweimal ankommt.
- Geplante Routen (planned_routes): die Wegpunkte, das Profil, das gewählte Tempo und der Name, den du vergibst.
- Gespeicherte Orte (saved_places): ein Punkt mit einer Beschriftung, die du selbst wählst — Zuhause, Arbeit, ein Parkplatz am Waldrand.
- Hochgeladene GPX-Dateien: Eine Datei wird beim Hochladen ausgelesen und als aufgezeichnete Tour gespeichert. Die Datei selbst behalten wir nicht.
- Für Sammlungen (tours) und veröffentlichte Routen (trails) gibt es Tabellen, aber noch keine Oberfläche, die sie füllt; heute steht dort nichts.
Was eine solche Aufzeichnung verrät, sagen wir lieber deutlich: wo du losfährst und wann, wie oft du dieselbe Runde drehst, und — wenn du vor der Haustür startest — wo du wohnst. Genau deshalb ist alles privat, sobald es angelegt wird, und genau deshalb verschwindet all das restlos, wenn du dein Konto löschst.
Sichtbar für andere wird davon heute nichts. Jede Tour und jede Route trägt zwar ein Feld „privat“ oder „öffentlich“ und steht auf privat — aber es gibt keine Stelle, an der sich das umstellen ließe: Keine Funktion dieser Anwendung ändert dieses Feld. Etwas anderes ist, was du unter Einstellungen › Privatsphäre einstellst: wer dein Profil lesen darf, voreingestellt nur du selbst, und ob dein Name gefunden werden kann, was voreingestellt an ist.
Rechtsgrundlage ist Art. 6 Abs. 1 lit. b DSGVO: Touren zu speichern ist das, wofür es dieses Konto gibt.
Für die Übernahme aus Komoot oder Garmin öffnet die Seite „Verbindungen“ ein zweites Fenster bei der jeweiligen Plattform, in dem du dort selbst angemeldet bist. Dorthin schicken wir nichts: Dein Browser holt die Touren ab und reicht sie an openXtrail weiter. Unser Server spricht mit keiner der beiden Plattformen.
Karten
Die Karte kommt vom eigenen Server. Stil, Kacheln, Schriftzeichen und Symbole liegen unter /tiles/ auf demselben Host wie diese Seite; die Kartendaten stammen aus OpenStreetMap und werden bei uns zu fertigen Kacheln gebaut.
Praktisch heißt das: Kein Kartenanbieter — weder Google noch Mapbox noch die Server von OpenStreetMap — bekommt eine Anfrage, wenn du die Karte bewegst. Welchen Ausschnitt du dir ansiehst, erfährt niemand außer dem Server, auf dem ohnehin dein Konto liegt.
Routenberechnung
Routen berechnet eine eigene BRouter-Instanz, die als Container im selben Stack läuft wie alles andere. Start, Ziel und die Punkte dazwischen gehen an diesen Dienst und an keinen anderen; den Server verlassen sie nicht.
Das Wegenetz, auf dem gerechnet wird, ist vorher heruntergeladen: die Routing-Daten von brouter.de und der OpenStreetMap-Auszug, aus dem auch die Karte gebaut wird. Das geschieht einmal je Datenstand, ohne dass dabei jemand die Seite benutzt, und hat mit deiner Anfrage nichts zu tun.
Auch die Ortssuche im Planer fragt niemanden: Getippt wird gegen unsere eigene Tabelle osm.places aus demselben OpenStreetMap-Auszug. Ein fremder Geocoder war die Alternative und wurde verworfen — jeder einzelne Tastendruck wäre an einen anderen Dienst gegangen.
Rechtsgrundlage ist Art. 6 Abs. 1 lit. f DSGVO für die Berechnung selbst, die auch ohne Konto funktioniert, und Art. 6 Abs. 1 lit. b DSGVO, sobald du eine Route speicherst.
Kontaktformular
Über /kontakt kannst du uns schreiben, auch ohne Konto. Gespeichert werden dein Name, deine E-Mail-Adresse, der Betreff, die Kategorie, der Text der Nachricht und die Bilder, die du anhängst — in den Tabellen contact_threads, contact_entries und contact_attachments.
Jeder Vorgang bekommt eine Nummer und einen Link, unter dem du den Verlauf lesen und antworten kannst; im Link steckt ein Token, von dem bei uns nur eine Prüfsumme liegt. Antwortest du stattdessen einfach per Mail, landet die Antwort über dasselbe Postfach im selben Vorgang.
Ein Vorgang, der auf dich wartet, schließt sich nach 30 Tagen ohne Bewegung von selbst, gerechnet ab der letzten Aktivität darin; eine Nachricht darüber bekommst du. Ein Vorgang, den noch niemand von uns beantwortet hat, läuft dagegen nie ab — er bleibt offen, bis jemand antwortet.
Rechtsgrundlage ist Art. 6 Abs. 1 lit. b DSGVO, wenn es um dein Konto geht, und sonst Art. 6 Abs. 1 lit. f DSGVO: Wer schreibt, möchte eine Antwort.
E-Mail-Versand
Jede Mail, die openXtrail verschickt — Bestätigung der Registrierung, neues Passwort, Antwort auf eine Anfrage, Newsletter —, geht über den Mailserver von all-inkl (ALL-INKL.COM – Neue Medien Münnich, Deutschland). Absender ist noreply@openxtrail.com, als Antwortadresse steht kontakt@openxtrail.com darin.
Auch eingehende Post an kontakt@openxtrail.com liegt in einem Postfach bei all-inkl. Von dort holt openXtrail Antworten ab und ordnet sie dem passenden Kontaktvorgang zu.
all-inkl verarbeitet dabei die Empfängeradresse und den Inhalt der Nachricht, und zwar nur für uns. Auch das ist eine Auftragsverarbeitung; Art. 28 DSGVO schreibt dafür einen Vertrag zwischen uns und all-inkl vor.
Löschung und Aufbewahrung
Dein Konto kannst du selbst löschen, unter /konto/loeschen. Der Weg hat zwei Schritte: Du forderst die Löschung an, bekommst eine Mail mit einem Link, und erst der Knopf auf der Seite hinter diesem Link löscht wirklich. So kann kein Mailprogramm, das Links im Hintergrund öffnet, ein Konto aus Versehen auflösen.
Gelöscht wird dann, in einem Zug:
- E-Mail-Adresse, Passwort und der Vermerk, dass die Adresse bestätigt war
- Anzeigename und Profilbild
- Zuhause, gespeicherte Orte und Lieblingssportarten
- alle aufgezeichneten Touren und alle geplanten Routen
- die Verknüpfung mit Google, jede Sitzung — auch längst beendete — und jeder Link aus einer Mail, auch schon eingelöste
- eine erteilte Einwilligung in Werbemails
Übrig bleibt eine Zeile mit einer Nummer und dem Namen „Gelöschter Nutzer“. Geleert wird daran alles, was dich benennt; die Sichtbarkeit des Profils wird auf privat gesetzt und die Auffindbarkeit abgeschaltet. Stehen bleiben drei Einstellungen, die niemanden benennen — Sprache, Einheiten und die Schriftgröße der Kartenbeschriftung —, dazu die Rolle des Kontos, sein Aktiv-Kennzeichen und die Zeitstempel der Zeile. Was neben dieser Zeile stehen bleibt, steht im nächsten Absatz. Der Grund für die Zeile ist nicht Sparsamkeit: Später sollen Kommentare und Bewertungen an einem Autor hängen, die stehen bleiben dürfen, während die Person verschwindet.
Was das nicht löscht, sagen wir lieber auch. Ein Kontaktvorgang bleibt bestehen — er trägt den Namen und die Adresse, die du dort angegeben hast, und schließt sich nach der Regel weiter oben. Das Versandprotokoll bereits verschickter Newsletter bleibt bestehen, weil es belegt, was wann an wen ging. Hat jemand mit Administrationsrechten etwas an deinem Konto geändert, bleibt auch dieser Eintrag in admin_actions stehen, mitsamt seiner Notiz und damit unter Umständen einer früheren E-Mail-Adresse. Sonst nähme eine Löschung genau die Aufzeichnung mit, die belegt, was mit dem Konto geschehen ist. Und die Server-Protokolle bleiben, wie sie sind. Verschickte Mails können wir ohnehin nicht zurückholen.
Eine Newsletter-Anmeldung hängt nicht am Konto, sondern an der Adresse: Dafür ist der Abmeldelink der Weg, und der steht in jeder Ausgabe. Einzelne Routen wiederum haben einen Papierkorb — eine gelöschte Route liegt 30 Tage unter /routen und lässt sich in dieser Zeit zurückholen. Für das Konto gibt es keinen Papierkorb; dessen Löschung ist endgültig.
Kein Tracking, keine Werbung, keine Dritten
Diese Liste ist keine Absichtserklärung, sondern eine Beschreibung: Nichts davon ist in dieser Anwendung eingebaut.
- Keine Analyse, keine Reichweitenmessung, keine Besucherzählung — weder mit einem fremden Dienst noch mit einer eigenen.
- Keine Werbung, kein Retargeting, keine Werbe-Kennungen, keine Profilbildung.
- Keine Social-Media-Plugins und keine Like- oder Teilen-Knöpfe.
- Keine externen Schriftarten.
- Kein Content Delivery Network und keine eingebetteten Inhalte von fremden Servern.
- Kein Consent-Management-Tool und deshalb auch kein Cookie-Banner.
Das ist keine Behauptung, die man glauben muss. Die Oberfläche dieser Seite benutzt zur Laufzeit fünf fremde Programmbibliotheken — maplibre-gl und pmtiles für die Karte, Next.js, React und React DOM für die Seite selbst —, und keine davon ruft irgendwo an; sie liegen alle auf unserem Server.
Fremde Unternehmen, denen openXtrail Daten schickt, sind genau dort beteiligt, wo es oben steht, und nirgends sonst: Strato stellt den Server, all-inkl verschickt und empfängt die Mail, DeepL übersetzt den Text einer Newsletter-Ausgabe, und Google käme hinzu, sobald die Anmeldung mit Google eingerichtet ist. Keines dieser Unternehmen erfährt, wer diese Seite aufruft oder was er sich dort ansieht. Komoot und Garmin stehen deshalb nicht in dieser Liste, obwohl sie weiter oben vorkommen: Dorthin schickt openXtrail nichts; dein eigener Browser öffnet ein Fenster bei einer Plattform, bei der du selbst angemeldet bist.
Deine Rechte
Gegenüber uns hast du die folgenden Rechte:
- Auskunft darüber, welche Daten wir über dich verarbeiten (Art. 15 DSGVO)
- Berichtigung, wenn etwas falsch oder unvollständig ist (Art. 16 DSGVO)
- Löschung (Art. 17 DSGVO)
- Einschränkung der Verarbeitung (Art. 18 DSGVO)
- Herausgabe deiner Daten in einem gängigen Format, auch zur Übertragung an einen anderen Anbieter (Art. 20 DSGVO)
- Widerspruch gegen eine Verarbeitung, die auf einem berechtigten Interesse beruht (Art. 21 DSGVO)
Gesondert zum Widerspruch, weil Art. 21 Abs. 4 DSGVO das so verlangt: Du hast das Recht, jederzeit Widerspruch gegen die Verarbeitung deiner Daten einzulegen, soweit wir uns auf ein berechtigtes Interesse stützen. Darauf stützen sich in dieser Erklärung: das Bereitstellen der Seite überhaupt, die Server-Protokolle samt Missbrauchsschutz, das Verwaltungsprotokoll admin_actions, die Routenberechnung ohne Konto und eine Anfrage über das Kontaktformular, die nichts mit einem Konto zu tun hat. Ein formloser Satz an kontakt@openxtrail.com genügt, Gründe musst du nicht nennen. Danach verarbeiten wir diese Daten nicht weiter — es sei denn, wir können zwingende schutzwürdige Gründe nachweisen, die deine Interessen überwiegen.
Eine Einwilligung — heute ist das nur der Newsletter — kannst du jederzeit für die Zukunft widerrufen (Art. 7 Abs. 3 DSGVO), ohne dass die Verarbeitung bis zu diesem Zeitpunkt dadurch unrechtmäßig wird.
Vieles davon geht schneller ohne uns: Konto und Einstellungen kannst du selbst ändern, Touren und Routen selbst löschen, das Konto selbst auflösen und den Newsletter mit einem Klick abbestellen. Für alles Übrige schreib an kontakt@openxtrail.com — eine Antwort kommt innerhalb eines Monats (Art. 12 Abs. 3 DSGVO).
Beschwerderecht
Wenn du der Ansicht bist, dass wir mit deinen Daten nicht richtig umgehen, kannst du dich bei einer Datenschutz-Aufsichtsbehörde beschweren — bei der deines Wohnorts oder bei der, die für uns zuständig ist. Für uns ist das:
- Behörde
- Unabhängiges Landeszentrum für Datenschutz Schleswig-Holstein
- Anschrift
- Holstenstraße 98, 24103 Kiel
Dieses Recht steht in Art. 77 DSGVO und besteht neben jedem anderen Rechtsbehelf. Eine Beschwerde dort kostet nichts, und vorher bei uns zu fragen ist keine Voraussetzung dafür — auch wenn uns der kürzere Weg lieber wäre.