How GitHub used secret scanning to reach inbox zero
GitHub reduced 20,000 secret scanning alerts across 15,000 repositories to zero in nine months by prioritizing high-risk issues, automating workflows, and implementing push protection to prevent new exposures.
The useful question is what changes for users, developers or buyers, and whether the announcement stays industry context or becomes something people can actually use.
GitHub initially identified over 20,000 secret scanning alerts across more than 15,000 repositories, a figure far exceeding expectations. The company prioritized alerts by assessing risk, assigning ownership, and developing remediation workflows. By treating the backlog as an operational task, GitHub systematically addressed each alert without relying on manual review by a small team. The effort aimed to improve internal secrets hygiene and align practices with industry standards for security and risk reduction.
The majority of alerts—approximately 18,000—were traced to just five repositories, all containing inactive secrets such as test fixtures or deactivated credentials. GitHub developed criteria to bulk-close low-risk alerts, such as those matching known test patterns in dedicated repositories. This approach allowed the team to resolve a significant portion of the backlog within days, focusing resources on higher-risk issues that required individual attention and strategic decision-making.
Secret remediation extended beyond source code, encompassing support tickets, bug bounty reports, incident notes, and wiki pages. GitHub collaborated with customer support, security incident response, and the bug bounty program to create shared playbooks for handling exposed secrets. The process ensured that remediation efforts did not introduce new risks, such as inadvertently exposing secrets during cleanup or disrupting development workflows with force-pushes or history rewrites.
To prevent new secrets from entering repositories, GitHub enabled secret scanning and push protection across all organizations using GitHub Advanced Security. This enforcement blocked new exposures at the source, preventing the backlog from growing faster than it could be resolved. The company also built custom validity checks to determine whether exposed credentials remained active, enabling more informed prioritization of remediation efforts based on actual risk.