Zum Inhalt springen

Ferien- und Feiertags­kalender für Deutschland

Am 31. Oktober hat Hamburg frei, Köln nicht. Am 15. August hat München frei, Nürnberg nicht. Der Ferien- und Feiertagskalender kennt jede Gemeinde und liefert Feiertage, Schulferien, Werktage und Brückentage als fertige Tabelle für BI und Data Warehouse. Offene Daten, ohne Anmeldung.

Warum das Bundesland nicht reicht

Ein Feiertag, 348 Ausnahmen

Mariä Himmelfahrt ist in Bayern nur dort gesetzlicher Feiertag, wo mehr katholische als evangelische Einwohner leben. Seit 2025 gilt das in 1.708 von 2.056 Gemeinden.

Am 15. August 2026 hatten deshalb 82,5 % der bayerischen Bevölkerung frei, nicht alle. Wer Personal oder Lieferzeiten mit einem Kalender je Bundesland plant, rechnet in Nürnberg, Erlangen und Fürth mit einem freien Tag, der keiner ist.

Augsburg hat mit dem Friedensfest am 8. August einen Feiertag mehr. Und manche Gemeinden haben Mariä Himmelfahrt mit einer Volkszählung gewonnen oder verloren: Baiersdorf hatte den Feiertag bis 2013, dann nicht mehr, seit 2025 wieder. Der Ferien- und Feiertagskalender führt diese Wechsel mit Gültigkeitszeitraum, damit auch Auswertungen über mehrere Jahre stimmen.

GemeindeDi, 8. AugustDi, 15. AugustDi, 31. Oktober
HamburgArbeitstagSommerferienArbeitstagReformationstag
AugsburgFriedensfestSommerferienMariä HimmelfahrtSommerferienArbeitstagHerbstferien
MünchenArbeitstagSommerferienMariä HimmelfahrtSommerferienArbeitstagHerbstferien
NürnbergArbeitstagSommerferienArbeitstagSommerferienArbeitstagHerbstferien
Drei Dienstage im Jahr 2028, von Hamburg bis Augsburg. Punkt: Feiertag, heller Punkt: Schulferien

Was drin ist

Die Spalten, die man sonst selbst baut

Neben den Feiertagen enthält der Kalender, was in fast jedem BI-Projekt irgendwann gebraucht wird.

  • Schulferien

    Alle 16 Länder seit dem Schuljahr 2009/10, als Spalte je Tag und als Zeiträume. Wo noch keine Termine feststehen, ist der Wert leer statt falsch.

  • Werktage rechnen

    Jeder Werktag hat eine fortlaufende Nummer. Drei Werktage nach einer Bestellung ist dann einfach die Nummer plus drei, in jeder Datenbank und jedem BI-Tool.

  • Brückentage

    Markiert, mit der Zahl der freien Tage, die ein Urlaubstag am Stück bringt. Der Freitag nach Christi Himmelfahrt bringt vier.

  • Vergleichstag im Vorjahr

    Der gleiche Wochentag 364 Tage zuvor. Ostern, Karneval und die Tage um Weihnachten folgen ihrem Termin, damit der Vorjahresvergleich Gleiches mit Gleichem vergleicht.

  • Zeitumstellung

    Tage mit 23 und 25 Stunden sind gekennzeichnet. Stündliche Werte, etwa aus der Energie, lassen sich damit richtig auf Tage summieren.

  • Anteil der Bevölkerung

    Wie viel Prozent der Menschen in Deutschland oder einem Land an einem Tag Feiertag oder Schulferien haben, gewichtet mit den Einwohnern jeder Gemeinde.

  • Historie seit 2010

    Jede Rechtsänderung mit Datum: Frauentag in Berlin seit 2019, Reformationstag im Norden seit 2018, dazu die einmaligen Feiertage.

  • Offenes Format

    Regeln, Gemeindelisten und Ferien liegen als YAML und CSV auf GitHub. Korrekturen und neue Länder kommen per Pull Request dazu.

Anbinden

Drei Wege zu den Daten

Alle Dateien liegen öffentlich unter data.trakora.com, ohne Anmeldung und ohne Schlüssel.

  1. 01

    Direkt abfragen

    DuckDB hängt die Datenbank per URL an und lädt nur die Teile, die eine Abfrage braucht. Jede Tabelle lässt sich außerdem einzeln als Parquet-Datei lesen.

    ATTACH 'https://data.trakora.com/holiday-calendar/v1/latest/holiday_calendar.duckdb' (READ_ONLY);
    
    SELECT date, holiday_name_local, school_holiday_name_local
    FROM holiday_calendar.region_day
    WHERE region_id = 'DE-02000000'  -- Hamburg
      AND year(date) = 2027
      AND (is_public_holiday OR is_school_holiday);
    SELECT date, calendar_profile_id, bridge_days_off
    FROM 'https://data.trakora.com/holiday-calendar/v1/latest/fact_calendar_day.parquet'
    WHERE is_bridge_day AND year(date) = 2027;
  2. 02

    Einmal herunterladen

    Der vollständige aktuelle Stand, als eine Datei mit allen Tabellen oder jede Tabelle einzeln als Parquet und CSV.

    Alle Tabellen in einer DuckDB-Dateiholiday_calendar.duckdb · 5,5 MBDuckDB
    TabelleInhaltZeilenParquetCSV
    dim_dateEin Tag pro Zeile mit Kalenderwoche, Ostern und Vergleichstag9.496105 kB1,3 MB
    dim_countryDie Länder mit Zeitzone und Wochenende12 kB0 kB
    dim_calendar_profileDie Kalenderprofile183 kB2 kB
    dim_holidayDie Feiertage und Schulferien282 kB2 kB
    holiday_ruleDie Regeln dahinter, mit Rechtsgrundlage275 kB3 kB
    school_holiday_periodDie Schulferien als Zeiträume, je Land und Schuljahr1.9089 kB229 kB
    dim_regionAlle Gemeinden mit Kreis, Land, Einwohnern und Koordinaten10.753321 kB1,7 MB
    bridge_region_profileWelches Kalenderprofil eine Gemeinde wann hat10.77121 kB436 kB
    fact_calendar_dayEin Tag je Kalenderprofil: Feiertag, Schulferien, Werktag, Brückentag, Zeitumstellung170.928889 kB19,5 MB
    agg_population_dayAnteil der Bevölkerung mit Feiertag und mit Schulferien, bundesweit und je Land161.432122 kB6,1 MB
  3. 03

    Laufend synchronisieren

    Für Ladestrecken: einmal alles laden, danach nur noch Änderungen. Jeder Release bringt Änderungsdateien mit, in denen jede Zeile als neu, geändert oder gelöscht markiert ist. Das Manifest beschreibt alle Releases, die Primärschlüssel und jede Spalte.

    1. Manifest lesen und alle Releases nach dem zuletzt geladenen auswählen
    2. Ihre Änderungsdateien der Reihe nach laden
    3. Zeilen über den Primärschlüssel ersetzen oder löschen
    4. Die Nummer des letzten Releases speichern
    pip install duckdb
    curl -O https://raw.githubusercontent.com/Trakora/holiday-calendar/main/python/sync_duckdb.py
    python sync_duckdb.py feiertage.duckdb

Lieber einbauen lassen?

Wir binden den Ferien- und Feiertagskalender an das Data Warehouse oder BI-Tool an und richten die Aktualisierung ein.

Projekt anfragen

Quellen und Prüfung

Woher die Daten kommen

Die Feiertage folgen den Feiertagsgesetzen der Länder. Gemeinden, Einwohner und Koordinaten stammen aus dem Gemeindeverzeichnis des Statistischen Bundesamts. Wo in Bayern Mariä Himmelfahrt gilt, veröffentlicht das Landesamt für Statistik nur als Karte. Wir leiten die Liste aus den Zensusdaten ab und prüfen sie für jede Volkszählung gegen die amtliche Zahl der Feiertagsgemeinden.

Die Schulferien stammen aus den Ferienkalendern der Kultusministerkonferenz. Für 2020 bis 2022 gibt die KMK die ursprünglich beschlossenen Termine wieder. Kurzfristige Änderungen der Länder während der Pandemie sind darin nicht enthalten.

Vor jedem Release laufen Tests mit bekannten Terminen für einzelne Gemeinden, und alle Feiertage werden mit einer unabhängigen Quelle abgeglichen. In Sachsen und Thüringen gilt Fronleichnam nur in einzelnen Gemeinden und Ortsteilen. Diese Listen prüfen wir noch und nehmen sie erst auf, wenn sie belegt sind.

Regeln, Gemeindelisten und Ferien liegen offen auf GitHub, in einem Format, das für jedes Land funktioniert. Jede Änderung wird dort automatisch geprüft, bevor sie in einen Release geht.

Lizenz: CC BY 4.0. Bei Weitergabe bitte nennen: „Trakora Ferien- und Feiertagskalender, CC BY 4.0. Enthält Daten des Statistischen Bundesamts (Destatis), Gemeindeverzeichnis und Zensus 2022“.

Ein Termin fehlt oder stimmt nicht?

Korrekturen laufen über GitHub: als Issue mit Datum, Ort und Quelle oder direkt als Pull Request. Eine Quelle ist Pflicht, am besten der Link zum Gesetz oder zur amtlichen Bekanntmachung.

Auf GitHub melden

Häufige Fragen

Fragen zum Ferien- und Feier­tags­ka­lender

Was kostet der Ferien- und Feiertagskalender?

Nichts. Die Daten stehen unter der Lizenz CC BY 4.0 und sind öffentlich abrufbar, ohne Anmeldung und ohne Schlüssel. Sie dürfen auch kommerziell genutzt werden, mit Quellenangabe. Wer Hilfe beim Einbau möchte, kann uns damit beauftragen.

Wie aktuell sind die Daten?

Ein neuer Release erscheint, sobald sich ein Feiertagsgesetz ändert, und mindestens einmal im Jahr mit dem neuen Gemeindeverzeichnis. Version und Stand stehen im Manifest und oben auf dieser Seite.

Was ist ein Kalenderprofil?

Eine Gruppe von Gemeinden mit denselben Feiertagen, zum Beispiel die bayerischen Gemeinden mit Mariä Himmelfahrt. Die Tagestabelle hat eine Zeile je Profil und Tag statt je Gemeinde und Tag. Das sind rund 170.000 statt über 100 Millionen Zeilen, und eine Zuordnungstabelle verbindet jede Gemeinde mit ihrem Profil.

Mit welchen Werkzeugen funktioniert das?

Mit allem, was Parquet oder CSV lesen kann, also praktisch jedem Data Warehouse, BI-Tool und ETL-Werkzeug. Mit DuckDB lässt sich die Datenbank direkt per URL abfragen. Für laufende Updates beschreibt das Manifest Primärschlüssel und Änderungsdateien so, dass sich jede Ladestrecke daran anbinden lässt. Fertige Pipelines für die gängigen Plattformen liegen auf GitHub.

Welche Länder sind dabei?

Bisher Deutschland, mit Schulferien vom Schuljahr 2009/10 bis 2028/29. Gerade arbeiten wir an Österreich und der Schweiz, damit ganz DACH abgedeckt ist. Das Format ist für jedes Land gleich. Wer ein Land ergänzen möchte, findet die Anleitung auf GitHub.

Warum fehlt Fronleichnam in Sachsen und Thüringen?

Weil er dort nur in einzelnen Gemeinden und teils nur in Ortsteilen gilt und die Listen noch nicht vollständig mit amtlichen Quellen belegt sind. Bis dahin fehlen sie lieber, als ungeprüft drinzustehen.

Wie melde ich einen fehlenden oder falschen Termin?

Als Issue auf GitHub, mit Datum, Gemeinde oder Land und einer Quelle. Wer mag, ändert die Datei direkt und stellt einen Pull Request. Nach der Prüfung kommt die Änderung mit dem nächsten Release.