Zeiterfassung mit KI auswerten: Produktivität messen im Mittelstand
Zeiterfassungsdaten automatisiert auswerten: Quellen anbinden und normalisieren, Kennzahlen definieren, Berichte erzeugen, Muster und Ausreißer finden.
Von Learoy Eichholz
Das Problem: Daten sammeln, aber nicht nutzen
Viele mittelständische Unternehmen erfassen seit Jahren Arbeitszeiten. Rechtlich vorgeschrieben, technisch umgesetzt, monatlich abgerechnet. Die Daten landen in CSV-Exporten, werden ans Lohnbüro geschickt und verschwinden dann im Archiv. Niemand wertet aus, welche Projekte tatsächlich wie viel Zeit fressen, wo Engpässe entstehen oder welche Kunden regelmäßig Nacharbeiten verursachen.
Dabei liegt genau in diesen Daten enormes Potenzial: Wer systematisch auswertet, erkennt Muster in der Auslastung, kann Angebote realistischer kalkulieren und Kapazitäten gezielt planen. Das hat nichts mit Überwachung zu tun, sondern mit datengestützter Steuerung.
In diesem Artikel zeige ich, wie Sie Zeiterfassungsdaten automatisiert auswerten, welche Kennzahlen wirklich helfen und wie eine technische Pipeline aussieht, die wöchentlich oder täglich Berichte liefert, ohne dass jemand Excel öffnen muss.
Was Auswertung bedeutet: Von Rohdaten zu Entscheidungen
Zeiterfassung liefert strukturierte Daten: Mitarbeiter, Projekt, Tätigkeit, Dauer, Datum. Auswertung bedeutet, diese Rohdaten in aggregierte Kennzahlen zu überführen, die Geschäftsführung, Projektleiter oder Teamleads konkret nutzen können.
Typische Fragen, die sich beantworten lassen:
- Wie viele Stunden gehen pro Projekt oder Kunde drauf?
- Welche Tätigkeiten binden überproportional viel Kapazität?
- Gibt es wiederkehrende Zeitfresser, die sich automatisieren lassen?
- Stimmt die kalkulierte Zeit mit der tatsächlichen überein?
- Wo entstehen Überstunden, wo Leerlauf?
KI kommt ins Spiel, sobald die Daten unstrukturiert oder inkonsistent sind: unterschiedliche Schreibweisen bei Projektnamen, fehlende Kategorien, unklare Zuordnungen. Ein einfaches Klassifikationsmodell kann dann Tätigkeitsbeschreibungen automatisch taggen, Ausreißer markieren oder Duplikate erkennen.
Schritt 1: Datenquelle anbinden und normalisieren
Die meisten Zeiterfassungssysteme bieten APIs oder tägliche Exporte. Typische Formate sind CSV, JSON oder direkte Datenbankabfragen. Ich nutze gern n8n oder Make, um die Daten automatisiert abzuholen und in eine zentrale Datenbank zu schreiben, etwa PostgreSQL oder ein Data Warehouse wie ClickHouse.
Normalisierung bedeutet:
- Projektnamen vereinheitlichen, etwa “Kunde A” und “KundeA” zusammenführen.
- Zeitstempel in ein einheitliches Format bringen, UTC bevorzugt.
- Fehlende Felder ergänzen oder markieren, damit Auswertungen nicht abstürzen.
- Kategorien standardisieren, etwa “Entwicklung”, “Dokumentation”, “Support”.
Für die Kategorisierung trainiere ich häufig ein einfaches Modell mit scikit-learn oder nutze ein vortrainiertes Embedding-Modell wie Sentence-Transformers, um Tätigkeitsbeschreibungen semantisch zu clustern. Das spart manuelle Arbeit, wenn hunderte Einträge pro Woche reinkommen.
Schritt 2: Kennzahlen definieren und aggregieren
Nicht jede Zahl ist eine Kennzahl. Ich empfehle, mit wenigen, klaren Metriken zu starten:
- Projektstunden absolut und relativ: Wie viel Zeit ging in welches Projekt, gemessen am Gesamtvolumen?
- Durchlaufzeit pro Kunde: Von erster bis letzter Buchung, um Projektlängen zu vergleichen.
- Auslastungsgrad pro Mitarbeiter: Gebuchte Stunden geteilt durch Sollstunden, wöchentlich oder monatlich.
- Abweichung Kalkulation zu Ist: Geplante Stunden minus tatsächliche Stunden, pro Projekt.
- Top 5 Tätigkeiten nach Zeitaufwand: Was bindet am meisten Kapazität?
Diese Kennzahlen lassen sich in SQL oder Python-Pandas berechnen. Ein einfaches Aggregationsskript läuft täglich nachts und schreibt die Ergebnisse in eine Tabelle, die dann von Dashboards abgerufen wird.
Beispiel in SQL für PostgreSQL:
SELECT
projekt,
SUM(dauer_minuten) / 60.0 AS stunden_gesamt,
COUNT(DISTINCT mitarbeiter_id) AS mitarbeiter_anzahl
FROM zeiteintraege
WHERE datum >= CURRENT_DATE, INTERVAL '7 days'
GROUP BY projekt
ORDER BY stunden_gesamt DESC
LIMIT 10;
Diese Abfrage liefert die Top 10 Projekte der letzten Woche nach Gesamtstunden.
Schritt 3: Automatisierte Berichte bauen
Die Geschäftsführung braucht keine Rohdaten, sondern Antworten. Ich baue typischerweise zwei Formate:
- Wöchentliches Dashboard: Grafana oder Metabase, das live auf die aggregierten Daten zugreift. Balkendiagramme für Projektstunden, Liniendiagramme für Auslastung über Zeit, Heatmaps für Wochentage.
- Monatlicher PDF-Report: Automatisch generiert mit Python und ReportLab oder Weasyprint. Enthält Zusammenfassung, Top-Projekte, Abweichungen und eine kurze Interpretation.
Der Bericht wird per E-Mail verschickt oder ins SharePoint hochgeladen, je nach Infrastruktur. Wichtig: Keine manuelle Nacharbeit. Wenn ein Schritt manuell ist, fällt er nach vier Wochen aus.
Schritt 4: KI für Muster und Anomalien einsetzen
Sobald mehrere Monate Daten vorliegen, lohnt sich der Einsatz von Machine Learning:
- Anomalie-Erkennung: Isolation Forest oder DBSCAN markieren ungewöhnliche Buchungen, etwa 12 Stunden an einem Sonntag oder Projekte mit plötzlich doppelter Stundenzahl.
- Forecasting: Prophet oder ARIMA prognostizieren kommende Auslastung, basierend auf historischen Mustern. Hilfreich für Kapazitätsplanung.
- Clustering: K-Means gruppiert ähnliche Tätigkeiten, um versteckte Muster zu finden, etwa “Alle Support-Anfragen von Kunde X dauern 50 Prozent länger als bei anderen.”
Ich setze solche Modelle in Python um, packe sie in Docker-Container und lasse sie wöchentlich oder monatlich per Cron laufen. Die Ergebnisse schreibe ich zurück in die Datenbank, sodass Dashboards sie automatisch anzeigen.
Beispiel: Anomalie-Erkennung mit scikit-learn:
from sklearn.ensemble import IsolationForest
import pandas as pd
df = pd.read_sql("SELECT dauer_minuten, projekt_id, mitarbeiter_id FROM zeiteintraege", conn)
model = IsolationForest(contamination=0.05, random_state=42)
df['anomalie'] = model.fit_predict(df[['dauer_minuten']])
# Anomalien zurückschreiben
anomalien = df[df['anomalie'] == -1]
anomalien.to_sql('zeiteintraege_anomalien', conn, if_exists='replace', index=False)
Diese Pipeline läuft einmal pro Woche und schreibt Ausreißer in eine separate Tabelle, die dann manuell geprüft wird.
Was wirklich passiert: Outcomes aus der Praxis
Ein Bauunternehmen mit 45 Mitarbeitern hat nach sechs Monaten Auswertung festgestellt, dass 30 Prozent der Nacharbeiten auf drei Kunden entfielen. Die Angebote wurden angepasst, die Kommunikation verbessert. Im Folgejahr sank die Nacharbeitsquote um 18 Prozent.
Ein Ingenieurbüro nutzt wöchentliche Auslastungsberichte, um frühzeitig zu erkennen, wenn einzelne Projektleiter überlastet sind. Statt Überstunden anzuhäufen, werden Aufgaben umverteilt oder externe Kapazität eingekauft.
Ein IT-Dienstleister hat durch Forecasting erkannt, dass im September regelmäßig Kapazität fehlt. Inzwischen werden Urlaubssperren gezielt gesetzt und Freelancer zwei Monate vorher gebucht.
Was nicht funktioniert: Häufige Fehler
Zu viele Kennzahlen auf einmal: Zehn Dashboards mit 50 Metriken werden nicht genutzt. Besser drei Zahlen, die jede Woche besprochen werden.
Keine Kategorisierung: Wenn alle Tätigkeiten nur “Arbeit” heißen, ist Auswertung sinnlos. Mindestens drei bis fünf Kategorien sind nötig.
Manuelle Berichte: Sobald jemand Excel öffnen muss, ist die Pipeline gescheitert. Automatisierung bedeutet null manuelle Schritte.
Überwachungsgefühl: Wenn Mitarbeitende glauben, jede Minute wird kontrolliert, sinkt die Akzeptanz. Kommunikation ist entscheidend: Es geht um Prozesse, nicht um Personen.
Daten nicht bereinigen: Garbage in, garbage out. Normalisierung und Validierung sind Pflicht, sonst sind alle Auswertungen falsch.
Technische Architektur: Ein typisches Setup
Mein Standard-Stack für Zeitauswertung im Mittelstand:
- Datenquelle: API der Zeiterfassung oder täglicher CSV-Export
- Orchestrierung: n8n oder Cron-Job, der Daten abholt und normalisiert
- Datenbank: PostgreSQL für strukturierte Daten, ClickHouse für große Mengen
- Auswertung: Python-Skripte mit Pandas, scikit-learn, Prophet
- Visualisierung: Grafana oder Metabase für Live-Dashboards
- Reporting: Python mit ReportLab für PDF-Reports, verschickt per SMTP
Alles läuft auf einem dedizierten Server in Deutschland, etwa bei Hetzner oder IONOS. Kosten: 30 bis 80 Euro pro Monat, je nach Datenmenge. Self-Hosted, DSGVO-konform, kein Vendor-Lock-in.
Integration mit anderen Systemen
Zeitdaten gewinnen an Wert, wenn sie mit anderen Datenquellen kombiniert werden:
- CRM: Welche Kunden verursachen viel Aufwand, bringen aber wenig Umsatz?
- ERP: Stimmen die kalkulierten Stunden mit den gebuchten überein?
- Projektmanagement: Werden Meilensteine rechtzeitig erreicht, oder läuft die Zeit davon?
Ich synchronisiere diese Daten über APIs oder Datenbankviews. Ein wöchentlicher Job holt Daten aus allen Systemen, schreibt sie in ein Data Warehouse und erstellt kombinierte Berichte.
Rechtliche und organisatorische Rahmenbedingungen
Zeitauswertung ist personenbezogen. DSGVO verlangt, dass Zweck und Umfang dokumentiert sind. Ich empfehle:
- Betriebsvereinbarung oder Mitarbeiterinformation, die erklärt, was ausgewertet wird und warum.
- Anonymisierung oder Aggregation, sobald Einzelpersonen nicht mehr relevant sind.
- Zugriffsrechte klar regeln: Wer darf welche Berichte sehen?
- Aufbewahrungsfristen definieren: Rohdaten nach 12 Monaten löschen, aggregierte Daten bleiben.
Im Zweifel rechtliche Beratung einholen, insbesondere bei Betriebsrat.
Nächste Schritte: Von Erfassung zu Auswertung
Wenn Sie bereits Zeiten erfassen, aber nicht auswerten, liegt der Hebel auf der Hand. Starten Sie mit einer einfachen Frage: Welche drei Kennzahlen würden Ihre Planung sofort verbessern? Definieren Sie diese, bauen Sie eine Pipeline, die sie wöchentlich berechnet, und zeigen Sie die Ergebnisse in einem Dashboard.
Falls Sie Unterstützung bei Aufbau, Normalisierung oder KI-Modellen brauchen, sprechen Sie uns an.
Sprechen Sie mit uns
Sie möchten das in Ihrem Betrieb umsetzen? Wir bauen die passende Maschine mit Ihnen.
Telefon: 040 468 967 680
E-Mail: info@whitefox-automations.com
Oder über unser Kontaktformular.
Wenn Sie das praktisch umsetzen wollen
Auch interessant
- 15. Juli 2026 8 Min. Lesezeit
Zeiterfassung rechtssicher automatisiert: IT-Infrastruktur und DSGVO
Weiterlesen - 8. Sept. 2026 7 Min. Lesezeit
Zeiterfassung mit Projektcodes automatisiert im Mittelstand
Weiterlesen - 10. Juli 2026 8 Min. Lesezeit
Onboarding automatisieren: So gewinnt HR im Mittelstand Zeit
Weiterlesen