Public Money Graph
Methodology
How the graph is built, what the numbers mean, and what they do not mean.
Data sources
The graph is reconstructed from DECP award-notice records — the données essentielles de la commande publique that French public buyers publish for awarded contracts — using the official consolidated files on data.gouv.fr. Legal-unit identities (names, registration details) are resolved against the SIRENE business register (base Sirene). Both sources are re-used under the Etalab Open Licence.
Scope
The corpus covers award notices with a notification date from 2024-01-01 through the current date. Records dated in the future are preserved in the raw data but excluded from graph aggregates.
Identity resolution
Each buyer and supplier is identified by the legal-unit SIREN whenever a valid French identifier is available. When no valid identifier can be found, the entity remains its own separate node — identities are never merged on name alone.
Amounts
Edge and node amounts are the declared contractual values of awarded contracts. Records with a missing, zero, negative, or common placeholder value (such as sentinel amounts used in official files), as well as implausibly high values, are excluded from amount aggregates.
Edges and weights
An edge between a buyer and a supplier exists when the two appear together in at least one award notice. The default edge weight is the number of contracts observed between the two parties after deduplication — a count of distinct contractual relationships, not a sum of money.
Multi-holder contracts
When a contract has several holders, the full declared contract value is associated with each distinct holder relationship. Relationship values are therefore non-additive across multi-holder contracts: summing a buyer's or supplier's edges can overstate the total committed value.
Coverage and limitations
The graph loads the official annual DECP resources for every year from 2024 through the current year. Coverage inherits the limitations of the underlying publications: buyers publish within a legal delay, small contracts may not appear in consolidated files, and identifier quality varies by source. The graph is a faithful rendering of what was published, not an exhaustive register of French procurement.
Updates
The dataset is rebuilt from the sources periodically. Each build produces a new generation identifier
(for example g_8ea0ca0266c09523) visible in the
corpus manifest, along with the generation date, period covered, and
per-sector artifact locations.
License
The underlying data is published under the Etalab Open Licence. The graph and its access endpoints are made available under the same terms.
Read the numbers with care
Amounts are declared contractual values, not treasury payments.
Concentrated or repeated relationships are structural observations, never allegations.