
Amsterdam grants register
Every grant awarded by the City of Amsterdam: to whom, under which scheme, and how much was requested, granted and finally settled.
For grant year 2025, Amsterdam awarded over 1.6 billion euros
Amount awarded per grant year, in millions of euros. 2025 stands out because of multi-year awards: the 2025 – 2028 Arts Plan and the Social Base are booked entirely in that one year.
Social base and culture received two thirds between them
Awarded in grant year 2025 by policy area, in millions of euros. To 1,910 different applicants.
What can you do with it?3 ideas
How much does an organisation get?
Search by name and total what was awarded per year. Compare with what was requested.
Where does the money go?
Group by policy area or scheme. Divide multi-year grants by their term first.
Spotting anomalies
Find organisations whose grants grew fast, or where the settled amount is much lower than awarded.
How to process it4 steps
Download everything
The register is a few tens of thousands of rows: one CSV or a few API pages.
https://api.data.amsterdam.nl/v1/subsidies/v1/openbaar_subsidieregister/?_format=csv
Normalise names
Lowercase, remove 'Stichting' and punctuation. Check doubtful cases by hand.
Spread multi-year amounts
Recognise multi-year schemes by name ('2025-2028', 'meerjarig') and spread the amount over the years.
Awarded, settled or both
Use awarded for recent years and settled for completed ones. Always state which.
Interesting combinations


Who is behind the recipients?
With the company number you find directors, addresses and linked companies.

What did the council discuss about this recipient?
Search the name in council papers around the year of the award.


Are there FOI documents?
Sometimes the correspondence about a grant has already been released.
Similar sources
- SASubsidieregisters van andere gemeenten not in the index yet
Rotterdam, Utrecht and The Hague also publish, each in its own format.
- RRRijksbegroting en RVO-subsidies not in the index yet
Grants from central government instead of the city.
What to watch out for
- Multi-year grants sit in one year
A four-year grant counts in its first grant year. Divide by the term when comparing years.
- Awarded is not the same as paid
The settled amount comes only afterwards and is often lower. For recent years it is still missing.
- No company number
You link on name, and names are spelled inconsistently ('Stichting X', 'St. X'). Verify in the business register.
- The current year is incomplete
Grants for 2026 and 2027 are still being awarded. Those bars are shown lighter.
APIOpenAPI 3.0.3 · read 15 Oct 2026
The description lists oauth2 (oauth2), but this endpoint works without logging in (tested). tested
records tested
JSONCSVGeoJSON
Base URL
https://api.data.amsterdam.nl/v1/subsidies
Endpoints 2
- GET
/openbaar_subsidieregisterHet openbaar subsidieregister bevat informatie over de verleende subsidies van de gemeente Amsterdam. - GET
/openbaar_subsidieregister/{id}
Filtering from the description
per field as query parameter: field=value or field[operator]=value
Parameters 9
_count | Include a count of the total result set and the number of pages.Only works for responses that return a page. | from the description |
_csv_header | Specify type of header for csv file (id, title, none) | from the description |
_csv_separator | Specify type of separator for csv file (,, ;) | from the description |
_expand | Allow to expand relations. | from the description |
_expandScope | Comma separated list of named relations to expand. | from the description |
_fields | Comma-separated list of fields to display | from the description |
_format | Select the export format (json, csv, geojson) | from the description |
_pageSize | Number of results to return per page. | from the description |
_sort | Which field to use when ordering the results. | from the description |
Fields 15
| Name | Type | Meaning and filters |
|---|---|---|
id | integer/int64 | Unieke aanduiding van de subsidieverlening. eqgtgteinisnullltltenot |
dossiernummer | string | Het unieke dossiernummer van de subsidieverlening eqinisemptyisnulllikenot |
aanvrager | string | De aanvrager van de subsidie eqinisemptyisnulllikenot |
regelingnaam | string | De naam van de regeling van de subsidie eqinisemptyisnulllikenot |
beleidsterrein | string | Het project dat verband houdt met de subsidie eqinisemptyisnulllikenot |
organisatieonderdeel | string | Het organisatieonderdeel dat de subsidie heeft verstrekt eqinisemptyisnulllikenot |
projectnaam | string | De naam van het project dat verband houdt met de subsidie eqinisemptyisnulllikenot |
typePeriodiciteit | string | De periodiciteit van de subsidie eqinisemptyisnulllikenot |
bedragAangevraagd | number/double | Het bedrag dat is aangevraagd eqgtgteinisnullltltenot |
bedragVerleend | number/double | Het bedrag dat is verleend eqgtgteinisnullltltenot |
publicatiedatumVerleningsbesluit | string/date | De datum waarop het verleningsbesluit is gepubliceerd eqgtgteinisnullltltenot |
bedragVastgesteld | number/double | Het bedrag dat is vastgesteld eqgtgteinisnullltltenot |
Show all 15
| Name | Type | Meaning and filters |
|---|---|---|
publicatiedatumVaststellingsbesluit | string/date | De datum waarop het vaststellingsbesluit is gepubliceerd eqgtgteinisnullltltenot |
subsidiejaar | integer/int64 | Het jaar waarin de subsidie is verleend eqgtgteinisnullltltenot |
datumOverzicht | string/date | De datum waarop het overzicht is gemaakt eqgtgteinisnullltltenot |
Limits and pitfalls
- No hard page size found; _pageSize=5000 worked (15 Oct 2026). The total is in the X-Total-Count header when you send _count=true. tested
- servers in the OpenAPI points to the root (api.data.amsterdam.nl/); the real path starts with /v1/subsidies/. tested
- Requesting openapi.json with only Accept: application/json gives 406. Also send application/vnd.oai.openapi+json. experience
Try it HTTP 200 · 108 ms · 15 Oct
https://api.data.amsterdam.nl/v1/subsidies/openbaar_subsidieregister/?subsidiejaar=2025&bedragVerleend[gte]=1000000&_fields=aanvrager,regelingnaam,bedragVerleend&_sort=-bedragVerleend&_pageSize=3&_format=json
{
"_embedded": {
"openbaar_subsidieregister": [
{
"aanvrager": "Stichting DOCK",
"regelingnaam": "Subsidie Sociale basis 2025 meerjarig (Stadsdeeloverstijgend)",
"bedragVerleend": 92096301.08,
"_links": {
"schema": "https://schemas.data.amsterdam.nl/datasets/subsidies/openbaar_subsidieregister/v2",
"self": {
"href": "https://api.data.amsterdam.nl/v1/subsidies/openbaar_subsidieregister/1961?_format=json",
"title": "Subsidie Sociale basis 2025 meerjarig (Stadsdeeloverstijgend)",
"id": 1961
}
}
},
{
"aanvrager": "Stichting Combiwel Buurtwerk",
"regelingnaam": "Subsidie Sociale basis 2025 meerjarig (Stadsdeeloverstijgend)",
"bedragVerleend": 76196472.24,
"_links": {
"schema": "https://schemas.data.amsterdam.nl/datasets/subsidies/openbaar_subsidieregister/v2",
"self": {
"href": "https://api.data.amsterdam.nl/v1/subsidies/openbaar_subsidieregister/2640?_format=json",
"title": "Subsidie Sociale basis 2025 meerjarig (Stadsdeeloverstijgend)",
"id": 2640
}
}
}
]
},
"_links": {
"self": {
"href": "https://api.data.amsterdam.nl/v1/subsidies/openbaar_subsidieregister/?subsidiejaar=2025&bedragVerleend[gte]=1000000&_…"
},
"next": {
"href": "https://api.data.amsterdam.nl/v1/subsidies/openbaar_subsidieregister/?_fields=aanvrager%2Cregelingnaam%2CbedragVerlee…"
}
},
"page": {Shortened response, saved at harvest time. Click the URL for the real, current response.
Read from OpenAPI description, 2 paths. Labels: from the description stated in what the api itself publishes. tested from our own small call. platform applies to every api on this platform, per its documentation. experience learned while building bronwijzer.
How to fetch it
curl "https://api.data.amsterdam.nl/v1/subsidies/v1/openbaar_subsidieregister/?subsidiejaar=2025&_format=json&_pageSize=100"
Used by
- Raadsradar (pilot)Research into grant flows and recipients in Amsterdam
- Data en informatie AmsterdamThe city's own data portal
Questions this source helps answer
More in this topic
See how this page is built
bron: ams-subsidies
blokken:
- type: staven
data: subsidies
- type: rangorde
data: subsidieterreinen
secties:
- ideeen
- verwerken
- koppelingen
- vergelijkbaar
- beperkingen
- code
- gebruiktDoor
cache:
tag: bron:ams-subsidies
ververs: na statuscheck, als de bron nieuwer is
statuscheck:
methode: veld datumOverzicht in de API
verwacht: dagelijks
Source: content/bronnen/ams-subsidies.yaml · Markdown
