TicketAudit
Offline desktop tool for auditing ITSM ticket exports — handles 100k–300k row files that choke Excel.
- Role
- Solo build — design, implementation, testing
- Stack
- Python · PySide6 · pandas · Lingua · pytest
~640
Passing tests
300k
Rows in 8.4 s
33
Languages detected

Context
Part of my day-to-day work is analysing ITSM ticket data exported from ServiceNow. Every review cycle started the same way: open the export in Excel, manually check for missing dates, contradictory statuses, and garbled fields. The files routinely hit 100k–300k rows — large enough that Excel hangs, filters break, and silent data errors slip through unnoticed. I got tired of the manual sanity checks failing me, so I built a tool to do them properly. TicketAudit is the open-source replication of that internal tool.
Product Overview
TicketAudit is a free, offline PySide6 desktop application that audits ticket exports at scale and produces a structured Excel report:
- Column Mapping: Three-tier scoring (exact match, word-boundary, value-pattern) to automatically align source columns to the expected schema.
- Date Disambiguation: Detects DD/MM vs MM/DD field ordering across the dataset, avoiding silent misparses.
- Null Analysis: Configurable thresholds flag columns and rows with excessive missing data.
- 8 Logic Rules: Detects contradictions — open tickets with resolution dates, closed tickets without them, future dates, state vocabulary mismatches, and more.

- Language Detection: Identifies language across 33 languages using the Lingua ML model, surfacing unexpected language in description fields.

- Description Quality Scoring: Rates ticket descriptions for completeness and usefulness.
- Excel Report Export: Six-tab workbook with PivotTables, charts, and per-ticket QA flags — ready to hand to a manager or attach to a process review.
- Guided Review Mode (Ctrl+R): Walks through flagged tickets one at a time for efficient triage.
