August 04, 2026
Public Money, Public Code.
When a town pays a contractor to build a road, nobody expects the road to belong to the contractor. When the same town pays a contractor to build a permit system, a benefits calculator, or a participation portal, that is often exactly what happens. The town gets to use the software. The vendor keeps the blueprints.
"Public money, public code" is the idea that this should flip. If software is paid for by the public, its source code, the human-readable instructions that make it work, should be published under a free or open licence. Concretely, that means three permissions anyone gets by default: to read the code, to run it, and to adapt it and share the changes. It does not mean the software is unpaid, unmaintained, or built by volunteers. Someone still gets a contract. The difference is what the public owns when the contract ends.
The phrase comes from a campaign. On 13 September 2017, the Free Software Foundation Europe published an open letter with 31 organisations asking lawmakers to require exactly this. Its president, Matthias Kirschner, put it in one line: "If it is public money, it should be public code as well!" The campaign page now lists 240 organisations and more than 39,000 individuals who have signed, and its demand is specific: legislation "requiring that publicly financed software developed for the public sector be made publicly available" under a free and open source licence.
Public Money? Public Code! open letter
- organisations at launch, September 2017
- 31
- organisations at launch, September 2017
- organisations signed today
- 240
- organisations signed today
- individuals signed today
- 39,000+
- individuals signed today
This is no longer only an activist position. Several governments have written versions of it into policy, with different degrees of seriousness.
Switzerland went furthest. The federal law on electronic means for government tasks, known as EMBAG, came into force on 1 January 2024. Its Article 9, as Professor Matthias Stürmer explained in an interview, requires the federal government to release software it owns under open source licences, including custom software built by outside vendors, unless third-party copyrights or security concerns prevent it. Agencies are following through: the Swiss Federal Office of Energy cites Article 9 for publishing its code on GitHub.
France got there through transparency law rather than technology policy. The 2016 Loi pour une République numérique added source code to the list of administrative documents the public can request, and told administrations to encourage free software and open formats. The government's open source unit at DINUM runs code.gouv.fr to help agencies publish code, and has kept a recommended list of free software for the state since 2013.
In Germany, the federal interior ministry and two states set up openCode, a shared platform where administrations publish and reuse open source software, run since early 2024 by the Center for Digital Sovereignty (ZenDiS). At EU level, the Interoperable Europe Act, adopted in March 2024, obliges public bodies to share certain solutions with each other on request, including documented source code, and says "Sharing should become a default." The Commission's own open source strategy committed it to sharing its source code. In June 2026 a new EU open source strategy named the campaign explicitly, though FSFE points out it is non-binding and small next to the roughly €264 billion the EU spends on IT each year.
The United States shows how the idea can be diluted. A 2016 federal policy required agencies to release "at least a portion" of new custom code to the public and promised a site called Code.gov. The law that followed, the SHARE IT Act of December 2024, requires custom code to be shared among federal agencies, but it can sit in a private repository. Reuse inside government, yes. Public code, not quite.
Why should a councillor care? Three reasons, each with something real behind it.
The first is reuse. Decidim, a platform for participatory budgeting and public consultation, was launched in Barcelona in early 2017. Because it is free software, more than 500 organisations now use it, including Helsinki, New York City and the European Commission. None of them had to commission the same thing from scratch. The UK government's service standard makes the same argument in plain terms: open code can be reused by other teams, "reducing costs for government as a whole."
The second is that you can check the rules. In 2016 France's tax administration and Etalab published the source code of the income tax calculator used to compute the tax of 37 million households, and the tax office now publishes the calculation code for income years 2010 to 2024. A law turned into software is still a law, and citizens should be able to see how it is applied. Open tools built on this idea, like OpenFisca, now power the French National Assembly's reform simulator and Barcelona's benefits eligibility service.
The third is leaving. When a vendor owns the code, switching vendors means starting over, so nobody switches. The UK guidance says publishing code makes you "less likely to get locked in to working with a single supplier." In April 2024 Schleswig-Holstein's government made LibreOffice mandatory across its administration, with its digitalisation minister saying the state had "keinen Einfluss", no influence, over how proprietary products handle its data.
Now the objections, because they are fair.
Isn't publishing code a security risk? Attackers can read it. But they can also attack closed systems, and secrecy is a weak lock. The UK government's own security guidance for coding in the open says "Open code can be just as secure or more secure than closed code" and "You should not rely on keeping code closed to keep it secure." What must stay private are keys, passwords and credentials, which never belong in code anyway. Switzerland's law and the US act both carve out genuine security exceptions. That is the right shape: open by default, closed with a stated reason.
Doesn't someone have to maintain it? Yes, and this is the stronger objection. Publishing code does not maintain it, and shared code nobody funds will rot. The answer is to budget for maintenance as a public task. The Interoperable Europe Act lets a sharing body set conditions on cooperation and maintenance and exclude its liability for misuse. Germany created the Sovereign Tech Agency, established by a decision of the Bundestag, to invest in the open infrastructure everyone depends on. Shared code with shared upkeep is a better deal than fifty councils each paying for the same closed system.
None of this asks a councillor to understand software. It asks them to add one line to a contract: what we pay for, we publish.