Go gets caching almost for free (setup-go v4+ caches modules and build output by default), so the gaps in Go CI are usually elsewhere: no concurrency group, no job timeout, a scheduled workflow that's been red for weeks. Here is how the big Go projects actually score. Read the fix →
| Repo | Runs (30d) | CI min (30d) | Recoverable min/mo | Failure rate | Findings |
|---|---|---|---|---|---|
| gohugoio/hugopip | 613 | 17.1k* | 2,813 | 15% | 12 |
| caddyserver/caddygo | 1,931 | 21.3k* | 2,114 | 15% | 19 |
| labstack/echogo | 196 | 8,975 | 896 | 16% | 7 |
| charmbracelet/bubbleteago | 223 | 2,316 | 604 | 10% | 14 |
| cli/cligo | 2,500 | 1,727* | 167 | 1% | 27 |
| junegunn/fzfgo | 195 | 445 | 120 | 0% | 16 |
| gin-gonic/gingo | 356 | 794 | 75 | 15% | 16 |
| pocketbase/pocketbasego | 52 | 229 | 23 | 2% | 3 |
| go-gorm/gorm | 2,500 | 118* | 11 | 0% | 8 |
| spf13/vipergo | 58 | 13 | 0 | 3% | 9 |
| spf13/cobrago | 46 | 15 | 0 | 0% | 6 |
* CI min, recoverable min and failure rate cover only the latest 500 runs of a repo with more in 30 days.
Public data from each repo's GitHub Actions. Minutes are wall-clock workflow time over 30 days. These repos run Actions free (public repos always do). Each scorecard shows the private-repo dollar equivalent as a labeled estimate. Repo owners can remove their scorecard any time.
Scan any public repo free, in seconds. No install, no card.
Scan a repo