How CommitScore works
Your score is a plain sum of itemised, publicly-documented lines - not a black box. It measures your last 12 months of GitHub activity, so recent work beats old fame.
| Metric | Weight | Transform |
|---|---|---|
| Commits (12mo) | 1 | linear |
| Pull requests (12mo) | 5 | linear |
| Issues (12mo) | 2 | linear |
| Best streak | 4 | linear, capped at 60 days (max 240 pts) |
| Stars (lifetime) | 130 | × log₁₀(stars + 1) |
| Followers (lifetime) | 25 | × log₁₀(followers + 1) |
The composite is the sum of every line above. The headline number on the card is that composite divided by 10, so it stays share-card sized.
Why these shapes
- Recent activity is linear. Commits, PRs and issues reward what you shipped this year, not how old your account is.
- Streak is capped at 60 days. Calendar consistency shouldn't dominate output - a bot committing daily for years can't bury someone doing real work.
- Stars and followers are log-dampened. Lifetime fame still counts, but a mega-account can't bury an active mid-tier dev under a wall of stars.
This is why a legend with a quiet year ranks below someone shipping hard right now. That's the point - it's an annual score, not a hall of fame.