Every organisation is harvested by the same pipeline and scored on the same conventions, measured from the file tree at HEAD of its live repositories. Archived repositories are excluded from scoring, and organisations with fewer than 10 live repositories are excluded from the league table entirely — a percentage over three repositories tells you nothing.
The estate
What stands out
Out of 37,662 resolved identities — 8.6%. Identity is resolved on GitHub's numeric account id where the commit carries one, and on exact email match otherwise; display names are never used, because a false merge would attribute one person's work to another. This is a floor, not a count: anyone who changed both employer and GitHub account appears twice.
Mean of 67 across 8 ordinary engineering practices. These are generic measures - CI, dependency automation, a licence, tests - not GOV.UK house style, so an organisation that has never read the GOV.UK manual is still judged on its own terms.
In-repository CI ranges from 92% (TransportForLondon) to 0% (edinburghcouncil). But edinburghcouncil also carries READMEs in 100% of live repositories, licences in 27% and test directories in 0% - not the profile of an immature organisation. It builds on an internal platform rather than in GitHub, so the pipeline simply is not in these repositories. This scorecard measures visible practice, and that is a real limit on what it can conclude.
Dependency bots dominate. This is the clearest sign that dependency automation has become normal across UK public-sector engineering, whatever else varies between organisations.
League table
Percentage of live repositories meeting each convention. Green at or above 75, amber at or above 40, red below.
| Organisation | Live repos | CI (GitHub Actions) | Dependency automation | README | Licence | Containerised | Tests present | CODEOWNERS | PR template | Mean |
|---|---|---|---|---|---|---|---|---|---|---|
| govuk-one-login Other public body | 156 | 83 | 74 | 98 | 76 | 39 | 22 | 82 | 62 | 67 |
| uktrade Other public body | 19 | 79 | 26 | 100 | 84 | 26 | 58 | 89 | 58 | 65 |
| westminster-city-council Local government | 13 | 92 | 46 | 100 | 100 | 23 | 46 | 38 | 62 | 63 |
| ministryofjustice Central government | 1,180 | 85 | 46 | 96 | 86 | 59 | 17 | 42 | 11 | 55 |
| ONSdigital Central government | 451 | 48 | 10 | 98 | 70 | 26 | 25 | 84 | 56 | 52 |
| UKForeignOffice Central government | 14 | 71 | 21 | 100 | 64 | 93 | 64 | 0 | 0 | 52 |
| nhsuk Health | 11 | 73 | 55 | 91 | 82 | 0 | 55 | 0 | 27 | 48 |
| DEFRA Central government | 1,137 | 68 | 23 | 97 | 78 | 67 | 36 | 8 | 5 | 48 |
| NHSDigital Health | 256 | 60 | 30 | 98 | 68 | 25 | 41 | 16 | 27 | 46 |
| hmcts Central government | 1,022 | 57 | 10 | 95 | 69 | 39 | 14 | 44 | 32 | 45 |
| LBHackney-IT Local government | 92 | 25 | 2 | 98 | 55 | 60 | 4 | 97 | 8 | 44 |
| NHSLeadership Health | 13 | 54 | 31 | 100 | 54 | 23 | 38 | 38 | 8 | 43 |
| alphagov Central government | 425 | 58 | 39 | 96 | 70 | 35 | 18 | 8 | 21 | 43 |
| FoodStandardsAgency Other public body | 12 | 50 | 25 | 100 | 92 | 42 | 25 | 8 | 0 | 43 |
| Planning-Inspectorate Other public body | 53 | 9 | 43 | 85 | 85 | 47 | 11 | 17 | 32 | 41 |
| TechnologyEnhancedLearning Other public body | 55 | 73 | 27 | 93 | 69 | 4 | 15 | 0 | 47 | 41 |
| dvsa Other public body | 161 | 53 | 3 | 96 | 77 | 10 | 47 | 6 | 33 | 41 |
| HistoricEngland Other public body | 22 | 36 | 5 | 95 | 73 | 55 | 45 | 5 | 9 | 40 |
| department-for-transport Other public body | 10 | 40 | 20 | 90 | 50 | 0 | 50 | 10 | 50 | 39 |
| Health-Education-England Other public body | 67 | 58 | 46 | 90 | 58 | 28 | 4 | 18 | 1 | 38 |
| ukhsa-collaboration Health | 130 | 46 | 9 | 98 | 65 | 26 | 28 | 14 | 18 | 38 |
| cabinetoffice Central government | 92 | 47 | 21 | 93 | 62 | 36 | 17 | 9 | 9 | 37 |
| nhsbsa Health | 126 | 25 | 16 | 92 | 88 | 4 | 45 | 2 | 20 | 37 |
| gchq Other public body | 57 | 42 | 12 | 95 | 82 | 33 | 12 | 4 | 7 | 36 |
| MetOffice Other public body | 110 | 42 | 5 | 95 | 90 | 5 | 20 | 10 | 21 | 36 |
| ukaea Other public body | 68 | 46 | 7 | 90 | 74 | 19 | 41 | 1 | 6 | 35 |
| UKHO Other public body | 89 | 26 | 15 | 97 | 83 | 7 | 16 | 38 | 1 | 35 |
| hmrc Central government | 1,505 | 0 | 1 | 99 | 98 | 5 | 69 | 0 | 7 | 35 |
| nhsx Health | 99 | 38 | 1 | 100 | 91 | 9 | 15 | 3 | 19 | 35 |
| digital-land Other public body | 142 | 50 | 5 | 94 | 77 | 23 | 25 | 0 | 1 | 34 |
| defencedigital Other public body | 44 | 39 | 23 | 93 | 59 | 20 | 14 | 18 | 9 | 34 |
| The-Strategy-Unit Other public body | 130 | 25 | 1 | 94 | 80 | 2 | 15 | 55 | 0 | 34 |
| wmfs Other public body | 117 | 0 | 0 | 99 | 91 | 3 | 76 | 1 | 1 | 34 |
| communitiesuk Central government | 159 | 42 | 21 | 88 | 50 | 23 | 21 | 4 | 18 | 33 |
| nationalarchives Central government | 326 | 58 | 21 | 90 | 48 | 19 | 23 | 5 | 2 | 33 |
| DFE-Digital Central government | 645 | 40 | 16 | 87 | 65 | 25 | 15 | 6 | 11 | 33 |
| thepensionsregulator Other public body | 21 | 19 | 5 | 81 | 95 | 10 | 29 | 10 | 14 | 33 |
| Crown-Commercial-Service Other public body | 168 | 42 | 27 | 99 | 38 | 20 | 25 | 0 | 1 | 31 |
| govuk-paas Other public body | 167 | 20 | 14 | 97 | 73 | 26 | 5 | 0 | 13 | 31 |
| UKHomeOffice Central government | 1,019 | 14 | 5 | 95 | 60 | 44 | 23 | 2 | 3 | 31 |
| nhsbsa-data-analytics Health | 38 | 47 | 0 | 95 | 68 | 0 | 26 | 0 | 8 | 31 |
| companieshouse Central government | 591 | 2 | 5 | 89 | 88 | 36 | 8 | 9 | 6 | 30 |
| LandRegistry Central government | 85 | 22 | 9 | 81 | 75 | 34 | 9 | 7 | 1 | 30 |
| bank-of-england Other public body | 10 | 10 | 0 | 100 | 100 | 0 | 30 | 0 | 0 | 30 |
| stfc Other public body | 207 | 32 | 8 | 91 | 59 | 12 | 20 | 7 | 9 | 30 |
| nhsengland Health | 217 | 17 | 1 | 94 | 78 | 2 | 17 | 2 | 19 | 29 |
| crossgovernmentservices Other public body | 49 | 0 | 0 | 86 | 53 | 53 | 35 | 0 | 4 | 29 |
| bbc Public corporation | 925 | 13 | 4 | 94 | 63 | 10 | 33 | 3 | 8 | 29 |
| SkillsFundingAgency Other public body | 396 | 2 | 0 | 93 | 86 | 4 | 2 | 41 | 0 | 29 |
| essexcountycouncil Local government | 19 | 26 | 0 | 95 | 58 | 16 | 11 | 5 | 16 | 28 |
| mrc-ide Other public body | 583 | 31 | 0 | 88 | 57 | 10 | 33 | 0 | 1 | 28 |
| HDRUK Other public body | 192 | 26 | 3 | 94 | 52 | 21 | 11 | 7 | 4 | 27 |
| NaturalHistoryMuseum Other public body | 178 | 23 | 0 | 91 | 44 | 20 | 23 | 0 | 15 | 27 |
| NHS-Transformation-Unit Health | 26 | 15 | 0 | 100 | 96 | 0 | 4 | 0 | 0 | 27 |
| GreaterLondonAuthority Other public body | 14 | 36 | 0 | 93 | 79 | 7 | 0 | 0 | 0 | 27 |
| intellectual-property-office Other public body | 15 | 0 | 0 | 100 | 87 | 27 | 0 | 0 | 0 | 27 |
| BBCS-PHI Other public body | 45 | 9 | 0 | 100 | 96 | 0 | 7 | 0 | 0 | 26 |
| TransportForLondon Other public body | 13 | 92 | 0 | 100 | 8 | 0 | 8 | 0 | 0 | 26 |
| CDU-data-science-team Other public body | 28 | 14 | 0 | 89 | 82 | 0 | 21 | 0 | 0 | 26 |
| NationalCrimeAgency Police & emergency | 15 | 7 | 0 | 100 | 93 | 7 | 0 | 0 | 0 | 26 |
| dwp Central government | 434 | 3 | 0 | 85 | 87 | 16 | 14 | 1 | 0 | 26 |
| Civil-Service-Human-Resources Other public body | 43 | 19 | 0 | 95 | 28 | 47 | 12 | 0 | 0 | 25 |
| DFEAGILEDEVOPS Other public body | 18 | 0 | 0 | 89 | 56 | 28 | 28 | 0 | 0 | 25 |
| NHSE-NDRS Health | 12 | 25 | 0 | 92 | 75 | 0 | 8 | 0 | 0 | 25 |
| DFID Other public body | 12 | 8 | 0 | 100 | 67 | 8 | 8 | 0 | 0 | 24 |
| east-sussex-county-council Local government | 67 | 0 | 0 | 100 | 91 | 0 | 0 | 0 | 0 | 24 |
| BHFDSC Other public body | 110 | 1 | 1 | 97 | 90 | 0 | 0 | 0 | 0 | 24 |
| OptiMaL-PSE-Lab Other public body | 34 | 15 | 0 | 97 | 59 | 9 | 9 | 0 | 0 | 24 |
| NHS-digital-website Health | 24 | 29 | 8 | 96 | 29 | 21 | 0 | 4 | 0 | 23 |
| britishlibrary Other public body | 37 | 11 | 3 | 97 | 54 | 0 | 16 | 0 | 5 | 23 |
| WCSCourses Other public body | 53 | 4 | 0 | 98 | 81 | 2 | 0 | 0 | 0 | 23 |
| OrdnanceSurvey Other public body | 127 | 6 | 0 | 98 | 53 | 11 | 8 | 0 | 2 | 22 |
| warwickshire Other public body | 25 | 0 | 0 | 92 | 40 | 0 | 44 | 0 | 0 | 22 |
| scottishgovernment Devolved | 24 | 0 | 0 | 83 | 71 | 4 | 17 | 0 | 0 | 22 |
| StatisticsHealthEconomics Other public body | 17 | 18 | 0 | 100 | 18 | 6 | 24 | 0 | 0 | 21 |
| ukparliament Parliament | 155 | 13 | 10 | 83 | 25 | 19 | 13 | 0 | 0 | 20 |
| BritishMuseum Other public body | 19 | 0 | 0 | 89 | 63 | 0 | 0 | 0 | 0 | 19 |
| decc Other public body | 36 | 0 | 0 | 94 | 25 | 14 | 14 | 0 | 0 | 18 |
| jncc Other public body | 59 | 0 | 2 | 93 | 15 | 19 | 7 | 0 | 0 | 17 |
| biglotteryfund Other public body | 15 | 0 | 0 | 87 | 33 | 0 | 13 | 0 | 0 | 17 |
| edinburghcouncil Local government | 11 | 0 | 0 | 100 | 27 | 0 | 0 | 0 | 0 | 16 |
| NHS-ESR-IAs Health | 33 | 0 | 0 | 6 | 0 | 0 | 0 | 0 | 0 | 1 |
50 organisation(s) with fewer than 10 live repositories are excluded from scoring, because a percentage over three repositories is noise: nhsuk-archive, dstl, UK-Export-Finance, govuk-forms, govuk-pay, SCC-Planning, TransportScotland, southampton, DundeeCityCouncil, MHRA, Lichfield-District-Council, UKSpaceAgency.
It measures what is visible in a public repository. An organisation that runs its builds on an internal Jenkins or an enterprise platform scores zero on CI while being no less rigorous — HMRC is exactly that case, with almost no in-repo workflows but READMEs, licences and tests almost everywhere. The mean column is a summary of observable practice, not a ranking of engineering quality, and it should never be quoted as one.
Scale
Repositories per organisation
Commits per organisation
- Public corporation
- Central government
- Parliament
- Devolved
- Health
- Police & emergency
- Local government
- Other public body
Convention by convention
CI (GitHub Actions)
Dependency automation
README
Licence
Containerised
Tests present
What each organisation is written in
Share of source bytes by language, top ten organisations by size.
Movement between organisations
Reported in aggregate only. Individuals are never named, edges below the suppression threshold are withheld, and no email address appears anywhere on this site — the public-interest case for examining how public bodies build software does not extend to publishing a career history of the people who do it.
How many organisations each person commits to
Counting resolved identities. The overwhelming majority appear in exactly one, which is what makes the minority who do not interesting.
Organisations that share engineers
Edges with fewer than 3 people in common are suppressed: at that size an edge describes individuals rather than a pattern, and this page reports aggregates only. 666 pair(s) suppressed on that basis.
Head to head
Ministry of Justice vs HM Courts & Tribunals Service
HMCTS is an executive agency of MOJ, so this is the closest thing the dataset has to a controlled comparison: same department, same policies, separate engineering organisations.
| Convention | MOJ | HMCTS | Diff |
|---|---|---|---|
| CI (GitHub Actions) | 85% | 57% | -28 |
| Dependency automation | 46% | 10% | -36 |
| README | 96% | 95% | -1 |
| Licence | 86% | 69% | -17 |
| Containerised | 59% | 39% | -20 |
| Tests present | 17% | 14% | -4 |
| CODEOWNERS | 42% | 44% | +2 |
| PR template | 11% | 32% | +21 |
272 committer identities appear in both organisations — 6% of everyone who has committed to HMCTS. MOJ carries 2,551 repositories against HMCTS's 1,867, but HMCTS has 1.5× the commit volume.