Python CI has the cheapest speedup in Actions: setup-python caches pip with one line (cache: 'pip'), yet plenty of workflows still reinstall requirements on every run. Here is how well-known Python projects actually run CI, gaps included. Read the fix →
| Repo | Runs (30d) | CI min (30d) | Recoverable min/mo | Failure rate | Findings |
|---|---|---|---|---|---|
| python/mypypip | 500+ | 6,862 | 1,494 | 5% | 8 |
| numpy/numpypip | 500+ | 8,079 | 922 | 1% | 47 |
| sqlalchemy/sqlalchemypip | 132 | 5,157 | 500 | 20% | 6 |
| pydantic/pydanticpip | 500+ | 2,580 | 225 | 15% | 21 |
| fastapi/fastapipip | 500+ | 947 | 80 | 9% | 23 |
| psf/blackpip | 500+ | 1,073 | 70 | 4% | 34 |
| huggingface/transformerspip | 500+ | 3,602 | 52 | 7% | 33 |
| psf/requestspip | 137 | 137 | 42 | 23% | 16 |
| aio-libs/aiohttppip | 500+ | 1,455 | 40 | 9% | 17 |
| python-poetry/poetrypip | 127 | 500 | 32 | 4% | 10 |
| scikit-learn/scikit-learnpip | 500+ | 803 | 14 | 3% | 26 |
| scrapy/scrapypip | 500+ | 7,128 | 4 | 3% | 17 |
| pytest-dev/pytestpip | 500+ | 8,261 | 1 | 9% | 6 |
| pandas-dev/pandaspip | 500+ | 4,374 | 1 | 11% | 28 |
| django/djangopip | 500+ | 513 | 0 | 5% | 14 |
| pallets/flaskpip | 109 | 330 | 0 | 40% | 9 |
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