Ein so genannter Bug-Tracker ist ein Fehlerauffindungsinstrument für die Software-Entwicklung, um Programmfehler zu identifizieren und zu dokumentieren. Damit lassen sich auch Zustandsberichte anlegen, die per Internet interaktiv von mehreren Mitarbeitern bearbeitet werden können.
Gedacht sind diese Bug-Tracker auch für eine verbesserte Kommunikation zwischen Anwendern und Entwicklern von Computerprogrammen. Häufig erfordert die Eingrenzung eines Programmfehlers eine Folge von Fragen und Antworten zwischen Anwendern und Programmierern. Eine Erfassung dieser Kommunikation in einem Bug-Tracking-System bedeutet eine zentrale Archivierung und ermöglicht somit spätere Recherchen, z. B. bei ähnlichen Problemen.
Diese Fehlererkennung lässt auch Verbesserungsvorschläge und Wünsche der Nutzer oder allgemeine Vorgänge zu. Bei manchen Projekten spricht man dann zum Beispiel von Meta-Bugs, wo ein Bug ein Element einer Aufgabenliste darstellt. Bei anderen Projekten spricht man stattdessen von Issues (Angelegenheiten, Vorgänge), da sich dieser Ausdruck nicht nur auf Programmfehler beschränkt (Issue-Tracking-System).
Bekannte freie Bug-Tracker sind Bugzilla, Mantis, Roundup, Redmine, Trac und Flyspray. Bekannte kommerzielle Bugtracker sind Track+ und Jira.