Offene Bahndaten nutzen: Datenquellen für eigene Projekte

GTFS, GTFS-Realtime, NeTEx und Infrastrukturdaten: Welche offenen Bahndaten es gibt, wie aktuell sie sind und wie du daraus deine eigene Abfahrtstafel baust.

Traintrack RedaktionVeröffentlicht: August 19, 2026Aktualisiert: August 20268 Min. Lesezeit

Das Wichtigste in Kürze

  • Zwei Datenarten trennen: Solldaten beschreiben den Fahrplan, Echtzeitdaten beschreiben die Abweichung davon. Fast jedes Projekt braucht beides – und die Verknüpfung ist die eigentliche Arbeit.
  • GTFS ist der Standard für den Einstieg: Ein ZIP-Archiv mit CSV-Dateien, das jede Tabellenkalkulation öffnet und jede Programmiersprache lesen kann.
  • Echtzeit heißt GTFS-Realtime oder SIRI: Beides sind Zusatzströme, die auf eine bestehende Soll-Fahrplanbasis referenzieren – ohne die Basis sind sie wertlos.
  • Lizenz vor Code: Offen verfügbar heißt nicht automatisch frei verwendbar. Namensnennung, Weitergabe und kommerzielle Nutzung sind je Datensatz unterschiedlich geregelt.
  • Fahrzeugdaten fehlen überall: Keine offizielle Schnittstelle sagt dir, welche Baureihe auf einer Fahrt läuft. Diese Ebene entsteht nur durch Beobachtung.
Inhaltsverzeichnis
  1. 1.Open Data Bahn: Welche Daten es überhaupt gibt
  2. 2.Die Datenquellen im Überblick
  3. 3.GTFS verstehen: die fünf Dateien, die zählen
  4. 4.Vom Download zur eigenen Abfahrtstafel
  5. 5.Echtzeitdaten anbinden: worauf es ankommt
  6. 6.Infrastrukturdaten für Fotostandorte und Karten
  7. 7.Häufige Fehler bei eigenen Datenprojekten
  8. 8.Fazit

Aktualisiert: August 2026 – Irgendwann reicht die App nicht mehr: Du willst eine eigene Abfahrtstafel für den Flurmonitor, eine Auswertung, welche Baureihen an deinem Hausbahnhof durchkommen, oder eine Karte mit deinen Lieblingsstrecken. Dieser Guide zeigt, welche offenen Bahndaten es gibt, wie aktuell und wie zugänglich sie sind – und wie du aus einem Download in kurzer Zeit etwas Eigenes baust.

Daten sind die halbe Miete – Sichtungen die andere

Was keine Schnittstelle liefert, dokumentierst du selbst: Fahrzeug, Ort, Zeit. Traintrack macht daraus dein durchsuchbares Archiv.

Traintrack im App Store laden4,8(23 Bewertungen) Traintrack bei Google Play laden4,4(35 Bewertungen)

Open Data Bahn: Welche Daten es überhaupt gibt

Offene Bahndaten zerfallen in drei Kategorien: Solldaten (der geplante Fahrplan), Echtzeitdaten (die Abweichung vom Plan) und Infrastrukturdaten (Strecken, Betriebsstellen, Bahnhöfe). Für Fahrpläne hat sich GTFS als Austauschformat durchgesetzt, für Echtzeit GTFS-Realtime und SIRI, für europäische Standardisierung NeTEx.

Der wichtigste Einstieg ist ein nationaler Zugangspunkt, über den Mobilitätsdaten in Deutschland zentral auffindbar gemacht werden; ergänzend betreiben viele Verbünde und Verkehrsunternehmen eigene Datenseiten. Die Schnittstellenstandards dahinter kommen im deutschsprachigen Raum überwiegend vom Verband Deutscher Verkehrsunternehmen. Welche Datensätze dort aktuell liegen und unter welcher Lizenz, legen die Anbieter selbst fest – und ändern es gelegentlich. Wie unterschiedlich die Verbünde damit umgehen, zeigt der Echtzeit-Check der Verkehrsverbünde.

3Kategorien: Soll, Echtzeit, Infrastruktur
CSVGTFS besteht aus schlichten Textdateien
1Datei reicht für eine erste Abfahrtstafel

Die Datenquellen im Überblick

Die folgende Tabelle ordnet die gängigen Quellentypen nach dem ein, was für ein Projekt wirklich zählt: Format, Aktualität, Zugangshürde und Lizenzlage. Konkrete Lizenzen stehen immer am Datensatz selbst – die Spalte beschreibt nur, was typisch ist.

Quellentyp Format Typische Aktualität Zugangshürde Lizenzlage
Bundesweiter Solldatensatz GTFS, teils NeTEx Aktualisierung in Tages- bis Wochenrhythmus Download, meist ohne Anmeldung offene Lizenz, in der Regel mit Namensnennung
Verbund-Solldaten GTFS wie oben, teils feiner gepflegt Datenseite des Verbunds je Verbund unterschiedlich
Echtzeit-Feeds GTFS-Realtime, SIRI Sekunden bis wenige Minuten oft Registrierung nötig häufig mit Nutzungsbedingungen
Betreiber-Schnittstellen JSON, XML nahe am Betriebsleitsystem Anmeldung, teils Kontingente anbieterspezifisch
Infrastruktur aus OpenStreetMap OSM-Rohdaten, Vektorkacheln laufend, community-gepflegt frei, aber Aufbereitung nötig offene Datenlizenz mit Share-alike
Bahnhofs- und Stationsdaten CSV, JSON selten, planungsgetrieben meist offen offene Lizenz, Angaben prüfen
Fahrzeug- und Sichtungswissen Listen, Foren, Apps laufend, aber unvollständig frei lesbar, kaum maschinenlesbar urheberrechtlich geschützt, Nutzung klären

Die letzte Zeile ist die entscheidende Lücke: Alles, was mit konkreten Fahrzeugen zu tun hat, fehlt in den offiziellen Datenströmen komplett. Genau deshalb existieren Communitys – nachzulesen im Überblick zu Live-Sichtungen im Trainspotting.

GTFS verstehen: die fünf Dateien, die zählen

Ein GTFS-Archiv enthält meist ein Dutzend Dateien, aber für den Anfang brauchst du nur fünf. Sie hängen über IDs zusammen wie Tabellen in einer Datenbank.

  • stops.txt – alle Haltestellen mit ID, Name und Koordinaten. Dein Einstiegspunkt, wenn du von einem Ort aus denkst.
  • routes.txt – die Linien mit Kurzname, Langname und Verkehrsmitteltyp. Hier trennst du Bahn von Bus und Tram.
  • trips.txt – die einzelnen Fahrten einer Linie, jeweils mit Richtung und Verweis auf einen Kalendereintrag.
  • stop_times.txt – die mit Abstand größte Datei: jede Ankunft und Abfahrt jeder Fahrt an jeder Haltestelle. Hier steckt die eigentliche Information.
  • calendar.txt und calendar_dates.txt – an welchen Wochentagen eine Fahrt verkehrt und welche Ausnahmen gelten. Ohne diese Dateien baust du versehentlich eine Tafel, die auch sonntags Schulbusse zeigt.

Profi-Tipp für den ersten Versuch

Nimm nicht den bundesweiten Datensatz, sondern den kleinsten regionalen, den du findest. Die Datei stop_times.txt kann in großen Datensätzen zweistellige Millionen Zeilen haben – das bringt jedes Tabellenprogramm zum Aufgeben. Mit einem Stadtverkehr lernst du dieselbe Struktur in Sekunden statt in Minuten.

Vom Download zur eigenen Abfahrtstafel

Der schnellste Weg zu einem sichtbaren Ergebnis führt über sechs Schritte. Jeder davon ist für sich klein – die Kunst liegt darin, sie in dieser Reihenfolge zu gehen und nicht mit Echtzeit anzufangen.

1. Datensatz auswählen und Lizenz lesen

Erst die Nutzungsbedingungen, dann der Download. Notiere dir den geforderten Quellenhinweis gleich in die Projektnotizen – nachträglich sucht man ihn ungern.

2. Haltestellen-ID finden

In stops.txt nach dem Namen deiner Station suchen und die stop_id notieren. Achtung: Große Bahnhöfe haben oft mehrere IDs für Bahnsteige, Gleise und den übergeordneten Bereich.

3. Abfahrten filtern

In stop_times.txt alle Zeilen mit dieser stop_id herausfiltern und nach departure_time sortieren. Das ist bereits eine vollständige Tagesabfahrtstafel.

4. Linien und Ziele ergänzen

Über trip_id auf trips.txt und weiter über route_id auf routes.txt verknüpfen. Erst damit steht neben der Uhrzeit auch, welche Linie wohin fährt.

5. Verkehrstage berücksichtigen

Über service_id gegen calendar.txt prüfen, ob die Fahrt heute überhaupt verkehrt, und Ausnahmen aus calendar_dates.txt abziehen.

6. Echtzeit darüberlegen

Erst jetzt den GTFS-Realtime-Feed dazunehmen. Er liefert für bekannte trip_ids die aktuelle Abweichung – deine Sollzeit plus Delay ergibt die Live-Abfahrt.

Erst die Daten, dann die Realität

Prüf auf dem Bahnsteig nach, ob deine Tafel stimmt – und halte gleich fest, welches Fahrzeug tatsächlich kam.

Traintrack im App Store laden4,8(23 Bewertungen) Traintrack bei Google Play laden4,4(35 Bewertungen)

Echtzeitdaten anbinden: worauf es ankommt

Echtzeit-Feeds sind kein eigenständiger Fahrplan, sondern eine Korrekturschicht. GTFS-Realtime kennt drei Meldungstypen, und die Unterschiede sind praktisch relevant:

  • TripUpdate – Verspätungen, geänderte Halte und Fahrtausfälle. Das ist der Typ, den du für eine Abfahrtstafel brauchst.
  • VehiclePosition – die aktuelle Fahrzeugposition. Nur nutzbar, wenn der Anbieter sie freigibt; bei Bahnverkehren deutlich seltener als bei Bussen.
  • Alert – Störungs- und Umleitungsmeldungen als Freitext, verknüpft mit betroffenen Linien oder Stationen.

Zwei Fallstricke tauchen bei fast jedem Projekt auf. Erstens: IDs müssen zusammenpassen. Ein Echtzeit-Feed referenziert Fahrten eines bestimmten Solldatensatzes. Mischst du Feed und Fahrplan aus unterschiedlichen Quellen, findest du keine Treffer. Zweitens: Abfragefrequenz respektieren. Ein Feed, der alle 30 Sekunden neu erzeugt wird, muss nicht öfter abgefragt werden – häufigere Zugriffe bringen keine besseren Daten, kosten aber Kontingent.

Wie stark sich Datenqualität und Anzeige unterscheiden können, merkst du sofort im Vergleich mit fertigen Werkzeugen. Der Vergleich der Zugradar-Tools zeigt, welche Aufbereitung andere aus denselben Rohdaten machen, und die Anleitung zum Verfolgen von DB-Zugnummern erklärt, wie du eine einzelne Fahrt sauber identifizierst.

Infrastrukturdaten für Fotostandorte und Karten

Für Spotter ist oft nicht der Fahrplan das Interessante, sondern die Strecke. Hier liefern Community-Projekte auf Basis von OpenStreetMap die praktischste Grundlage: Gleisverläufe, Elektrifizierung, Streckennummern, Betriebsstellen und teilweise Signale sind dort kartiert und lassen sich als Kartenebene einbinden.

Drei Hinweise dazu:

  • Vollständigkeit ist nicht garantiert. Community-Karten sind gut, aber nicht amtlich. Für die Standortplanung reicht das, für betriebliche Aussagen nicht.
  • Share-alike beachten. Offene Kartendaten stehen häufig unter Lizenzen, die abgeleitete Datenbanken wieder öffnen müssen. Für eine Karte auf deiner Website ist meist nur der Quellenhinweis nötig; wer Daten weiterverarbeitet, sollte genauer hinsehen.
  • Zugänglichkeit prüfen. Eine Karte zeigt Gleise, aber keine Betretungsrechte. Gleisbereiche und Betriebsanlagen sind grundsätzlich tabu – jeder Standort muss von öffentlich zugänglichem Grund erreichbar sein.

Wer die eigenen Daten samt Karte veröffentlichen will, findet die technische Umsetzung im Guide zum Aufbau einer eigenen Spotter-Website. Und wenn es um historische Aufnahmen statt um Live-Daten geht, lohnt der Blick ins Eisenbahnarchiv mit historischen Eisenbahnfotos.

Häufige Fehler bei eigenen Datenprojekten

  • Mit Echtzeit anfangen. Ohne funktionierende Solldatenbasis hat der Realtime-Feed nichts, worauf er verweisen könnte. Erst Fahrplan, dann Korrektur.
  • Verkehrstage ignorieren. Eine Tafel ohne Kalenderprüfung zeigt Fahrten, die es an diesem Tag gar nicht gibt – der häufigste Anfängerfehler überhaupt.
  • Zeitzonen und Betriebstage verwechseln. GTFS erlaubt Zeiten über 24 Uhr hinaus, etwa 25:10 für eine Fahrt nach Mitternacht. Wer das naiv parst, verliert den Nachtverkehr.
  • Lizenzhinweise weglassen. Namensnennung ist bei offenen Daten die Regel, nicht die Ausnahme. Ein Satz im Impressum kostet nichts.
  • Aus Fahrtdaten auf Fahrzeuge schließen. Eine Zugnummer sagt etwas über Gattung und Laufweg, aber nichts über die eingesetzte Baureihe. Wie viel eine Nummer tatsächlich verrät, erklärt der Beitrag zum Entschlüsseln von Zugnummern.
  • Tunnel- und Sonderverkehre übersehen. Für unterirdische Strecken gelten eigene Ortungsprinzipien, wie der Beitrag zum U-Bahn-Tracking im Tunnel zeigt – Fahrzeugpositionen fehlen dort besonders häufig.

Fazit

Offene Bahndaten sind zugänglicher, als die meisten vermuten: Ein GTFS-Archiv und ein Tabellenprogramm reichen für das erste sichtbare Ergebnis, und der Sprung zu Echtzeit ist danach überschaubar. Der eigentliche Aufwand steckt nicht im Download, sondern in Sorgfalt – bei Verkehrstagen, IDs und Lizenzen. Und eine Grenze bleibt unabhängig vom technischen Können bestehen: Welches Fahrzeug wirklich fährt, steht in keinem Feed.

Kurzfazit

Starte klein mit einem regionalen GTFS-Datensatz, bau eine statische Abfahrtstafel und leg Echtzeit erst darüber, wenn die Basis stimmt. Für alles Fahrzeugbezogene brauchst du eine zweite, menschliche Datenquelle.

Die Datenspalte, die kein Feed hat

Baureihe, Wagennummer, Sonderfahrt: Trag deine Sichtungen in Traintrack ein und sieh in Echtzeit, was die Community meldet – kostenlos für iOS und Android.

Traintrack im App Store laden4,8(23 Bewertungen) Traintrack bei Google Play laden4,4(35 Bewertungen)

Zusammenfassung

  • Der Artikel sortiert die verfügbaren Datenquellen nach Format, Aktualität, Zugangshürde und Lizenztyp.
  • Er zeigt, wie GTFS aufgebaut ist und welche Dateien du für eine einfache Abfahrtstafel wirklich brauchst.
  • Er erklärt die Rolle des nationalen Zugangspunkts und warum Verbünde trotzdem eigene Portale betreiben.
  • Und er benennt die Grenzen: Was offene Daten prinzipbedingt nicht liefern und wo Community-Wissen anfängt.

Häufige Fragen

Was ist GTFS?

GTFS steht für General Transit Feed Specification und ist das weltweit verbreitetste Format für Fahrplandaten. Ein GTFS-Datensatz ist ein ZIP-Archiv mit mehreren CSV-Dateien, die Haltestellen, Linien, Fahrten, Abfahrtszeiten und Kalender beschreiben. Weil es reines CSV ist, lässt es sich ohne Spezialsoftware auswerten.

Wo bekomme ich Fahrplandaten für Deutschland?

Deutschland betreibt einen nationalen Zugangspunkt für Mobilitätsdaten, über den Fahrplandatensätze zentral auffindbar sind. Zusätzlich stellen viele Verkehrsverbünde und einzelne Verkehrsunternehmen eigene Open-Data-Seiten bereit, teils mit feineren oder aktuelleren Daten für ihr Gebiet. Welche Datensätze aktuell verfügbar sind und unter welchen Bedingungen, steht immer beim jeweiligen Anbieter.

Was ist der Unterschied zwischen GTFS und GTFS-Realtime?

GTFS beschreibt den geplanten Fahrplan und ändert sich nur beim Fahrplanwechsel oder bei Baustellenfahrplänen. GTFS-Realtime ist ein separater, laufend aktualisierter Datenstrom mit drei Meldungsarten: Verspätungen und Fahrtänderungen, Fahrzeugpositionen und Störungsmeldungen. Beide gehören zusammen – die Echtzeitmeldung verweist über IDs auf die Fahrten des Solldatensatzes.

Brauche ich für Bahndaten einen API-Schlüssel?

Das hängt vom Anbieter ab. Reine Downloads von Fahrplandatensätzen sind oft ohne Registrierung möglich. Für laufend abgefragte Echtzeitschnittstellen verlangen viele Anbieter eine Registrierung, um Zugriffe zuordnen und begrenzen zu können. Prüfe die Zugangsbedingungen des konkreten Angebots, bevor du dein Projekt darauf aufbaust.

Darf ich offene Bahndaten in einer eigenen App verwenden?

Grundsätzlich ja, wenn die Lizenz des Datensatzes es erlaubt – verbreitet sind offene Lizenzen mit Pflicht zur Namensnennung der Datenquelle. Manche Datensätze schließen kommerzielle Nutzung aus oder verlangen zusätzliche Vereinbarungen. Da sich Bedingungen ändern können, ist die Lizenzdatei beim Datensatz selbst maßgeblich; im Zweifel lohnt eine kurze Rückfrage beim Anbieter.

Welche Daten gibt es zur Bahninfrastruktur?

Für Strecken, Betriebsstellen, Signale und Bahnhöfe gibt es sowohl amtliche Veröffentlichungen als auch Community-Projekte auf Basis von OpenStreetMap. Letztere sind oft detaillierter kartiert, tragen aber keine Gewähr für Vollständigkeit. Für die Planung von Fotostandorten sind sie trotzdem meist die praktischste Quelle.

Kann ich mit offenen Daten sehen, welche Lok vor einem Zug hängt?

Nein. Öffentliche Schnittstellen arbeiten auf Ebene der Fahrt: Zugnummer, Linie, Halte, Verspätung. Baureihe, Betriebsnummer oder Wagenreihung sind entweder gar nicht enthalten oder nur als grobe Zuggattung. Fahrzeugbezogenes Wissen entsteht durch Beobachtung und wird in Spotter-Communitys geteilt.

Wie fange ich als Einsteiger am besten an?

Lade einen GTFS-Datensatz deiner Region herunter und öffne die Datei stop_times.txt in einem Tabellenprogramm. Suche eine Haltestelle in stops.txt, notiere ihre ID und filtere danach. Damit hast du in zehn Minuten eine statische Abfahrtstafel. Erst wenn das steht, lohnt der Schritt zu Echtzeitdaten.

TT

Traintrack Redaktion

Wir bauen die Traintrack App und spotten selbst – zwischen Hauptbahnhof, Betriebshof und Feldweg. Alle Guides entstehen aus eigener Praxis und werden regelmäßig aktualisiert.

Mehr Artikel aus Plattformen & Alternativen →

Weiterlesen in Plattformen & Alternativen

Wer dahintersteckt

Konzerne, Marken, Hersteller und Betriebe – wer wem gehört und woran du sie im Feld erkennst.

Alle Eisenbahnunternehmen →

← Zurück zum Blog