303,525 datasets indexed1,419 publishers
Open Data IndexThe index of open data about the Netherlands
Sources›Earth observation

KNMI earthquakes

KNMI's earthquake catalogue as an open service: time, place, depth, magnitude and type of every event, plus stations, waveforms and ShakeMaps (ground motion per earthquake). On 16 October 2026 the box around the Netherlands held 4,551 events since 1911, of which 3,493 induced (by gas extraction or mining). In the Netherlands itself that is 2,003 induced earthquakes since 1986; the strongest was Huizinge on 16 August 2012 (magnitude 3.6).

Earth observationEnergyOpenAPIDownloadNetherlands · event
Up to date · updated 2 days ago · checked 17:23
api.dataplatform.knmi.nl
Screenshot of api.dataplatform.knmi.nl

Induced earthquakes in the Netherlands (magnitude 1.5 or more): 7 in 2025, against 34 in the peak year 2013

Induced earthquakes in the Netherlands of magnitude 1.5 or more, 1995 – 2025, in earthquakes. The highest point was 2013 (34).

Source: KNMI, aardbevingscatalogus (FDSN Event-dienst) · opgehaald 25 oktober 2026 · selection: EventType: induced or triggered event; kracht (ML) 1,5 of meer; zonder plaatsen in België en Duitsland; alleen hele jarenOpen the table Single block

Induced earthquakes by place: most Garrelsweer (89 earthquakes), then Appingedam and Loppersum

Induced earthquakes by place, 1986–2026, in earthquakes. Total: 2,004; the largest 12 of 187 categories are shown. Garrelsweer is 4% of the total. Place = the place name KNMI gives the earthquake (nearest village). All magnitudes, whole catalogue.

Source: KNMI, aardbevingscatalogus (FDSN Event-dienst) · opgehaald 25 oktober 2026 · selection: EventType: induced or triggered event; zonder plaatsen in België en DuitslandOpen the table Single block

What you can build with it1

What can you do with it?4 ideas

Getting started

Earthquakes per year in Groningen

Count the induced earthquakes per year. At magnitude 1.5 or more, 2013 was the peak year (34); in 2025 there were 7. The chart on this page shows the whole series.

Getting started

Which villages shake most often?

KNMI names every earthquake after the nearest village. Garrelsweer (89), Appingedam (88) and Loppersum (76) top the list.

Advanced

How hard did the ground shake?

66 earthquakes have a ShakeMap: ground acceleration per station (rrsm.json) and for 56 also a grid (grid.nc). Overlay it on the homes from the BAG.

Advanced

Gas production and earthquakes side by side

Put earthquakes per year next to production from the Groningen field and the decisions to cut it. Start with Huizinge (August 2012).

How to process it5 steps

  1. The whole catalogue as text

    format=text gives one line per event, separated by | (~580 kB for the box around the Netherlands). Without a box you also get earthquakes further away (6,514 in total).

    https://api.dataplatform.knmi.nl/fdsnws/event/1/query?starttime=1900-01-01&minlatitude=50.7&maxlatitude=53.7&minlongitude=3.2&maxlongitude=7.3&format=text
  2. Only induced earthquakes above a magnitude

    Filter on eventtype and minmagnitude. Note: the box also holds mining earthquakes in Germany; drop place names ending in (Duitsland) or (België).

    https://api.dataplatform.knmi.nl/fdsnws/event/1/query?starttime=2020-01-01&eventtype=induced%20or%20triggered%20event&minmagnitude=2.5&format=text
  3. One earthquake in detail (QuakeML)

    Without format you get QuakeML (XML) with all magnitudes and the origin. Huizinge 2012 has id knmi2012qcdh.

    https://api.dataplatform.knmi.nl/fdsnws/event/1/query?eventid=knmi2012qcdh
  4. ShakeMaps and ground acceleration

    list gives the files per earthquake; download/<id>/rrsm.json the acceleration per station.

    https://api.dataplatform.knmi.nl/shakemaps/7/download/knmi2025whfa/rrsm.json
  5. The stations

    Network NL (since 1993) has 903 stations, network NA (Caribbean Netherlands) 12.

    https://api.dataplatform.knmi.nl/fdsnws/station/1/query?level=station&network=NL&format=text

Interesting combinations

Similar sources

What to watch out for

  • The box is bigger than the Netherlands

    A rectangle around the Netherlands also brings in ~1,900 mining earthquakes from the Ruhr area and earthquakes in Belgium. The place name then ends in (Duitsland) or (België).

  • Small earthquakes depend on the network

    The more stations, the more small earthquakes are detected. Compare years from a fixed magnitude, for example 1.5.

  • Not everything is an earthquake

    The catalogue also holds explosions, quarry blasts and sonic booms. Filter on the EventType column.

  • Depth often fixed at 3 km

    For 1,939 of the 2,003 induced earthquakes in the Netherlands the depth is 3.0 km, roughly the depth of the Groningen field. Do not treat it as a measured depth per earthquake.

  • ShakeMaps with an extra condition

    The ShakeMap service states CC BY 4.0, but also says the data cannot be reused unaltered for commercial use. The two conflict; ask KNMI when in doubt.

APIFDSN Web Services (event, station, dataselect) · read 16 Oct 2026

StandardFDSN Web Services (event, station, dataselect)docs
Access no key

No key. Runs on the same server as the KNMI Data Platform, but the seismological services need no Authorization header (tested). tested

Size6,514

events in the whole catalogue since 1911 (4,408 induced, 2,053 tectonic, 53 explosions etc.; 16 Oct 2026) tested

Formats

textjsonxmlcsv

Base URL

https://api.dataplatform.knmi.nl/fdsnws

Endpoints 10

  • GET/event/1/querySearch events by time, box or radius, depth, magnitude and type. QuakeML by default; format=text or json for a table or GeoJSON.
  • GET/event/1/query?eventid={id}One event in detail (all magnitudes, origin, picks); id such as knmi2012qcdh (Huizinge).
  • GET/event/1/versionService version (1.2.9 on 16 Oct 2026).
  • GET/event/1/application.wadlMachine-readable list of parameters.
  • GET/event/1/catalogs/Catalogues (KNMI only); mind the trailing slash, without it you get a 301.
  • GET/event/1/contributors/Contributors (KNMI only).
  • GET/station/1/queryNetworks and stations (level=network|station|channel|response): NL 903 stations since 1993, NA (Caribbean Netherlands) 12.
  • GET/dataselect/1/queryWaveforms (miniSEED) per network, station, channel and time window.
  • GET/shakemaps/7/listAll ShakeMaps with their files (66 earthquakes, 56 with grid.nc).
  • GET/shakemaps/7/download/{eventid}/{bestand}One ShakeMap file: rrsm.json/rrsm.csv (acceleration per station), grid.nc (grid), event.xml.

Filtering platform

No query language: each condition is its own query parameter (FDSN). Combinations act as AND.

min…max…=

Parameters 13

starttime / endtimeTime window in UTC, ISO 8601 (2025-01-01 or 2025-01-01T12:00:00).from the description
minlatitude / maxlatitude / minlongitude / maxlongitudeRectangle in degrees (WGS84). Around the Netherlands: 50.7–53.7 N, 3.2–7.3 E.tested
latitude / longitude / minradius / maxradiusCircle around a point; radius in degrees (not km).platform
mindepth / maxdepthDepth in km.from the description
minmagnitude / maxmagnitude / magnitudetypeMagnitude (usually ML) and magnitude type.from the description
eventtypeType: 'induced or triggered event', earthquake, 'quarry blast', 'controlled explosion', 'sonic boom', explosion, 'other event'.tested
eventidOne or more events by id.from the description
updateafterOnly events updated after this moment: handy for incremental updates.from the description
limit / offsetPaging; offset starts at 1 (FDSN), not 0.from the description
orderbytime (newest first, default), time-asc, magnitude, magnitude-asc.tested
formatxml (QuakeML, default), text (|-separated), json (GeoJSON), csv, qml-rt, sc3ml. geojson as value gives 400.tested
nodataWhat happens when nothing is found: 204 with no body by default, with nodata=404 a 404 with explanation.tested
includeallmagnitudes / includeallorigins / includearrivals / includepicks / includefocalmechanismExtra parts in QuakeML.from the description

Columns with format=text (json has the same data as GeoJSON properties) 9

NameTypeMeaning
EventIDtekstId van de gebeurtenis (knmi2026ujby)
Timedatetime · UTCTijdstip van de oorsprong
Latitude / Longitudegetal · graden WGS84Epicentrum
Depth/kmgetal · kmDiepte; bij Groningen-bevingen meestal vast 3,0
MagTypetekstSoort magnitude (ML, MLs, MLbes …)
MagnitudegetalKracht; leeg bij explosies en knallen
EventLocationNametekstDichtstbijzijnde plaats; buitenland met (België) of (Duitsland)
EventTypetekstSoort gebeurtenis (zie de parameter eventtype)
status / mode (json)tekstreviewed/manual of automatisch; alleen in format=json

Limits and pitfalls

  • No documented limit; the whole catalogue (6,514 lines) comes in one text response of ~0.6 MB. tested
  • /event/1/count (optional in FDSN) does not exist here: 404. Count the lines of format=text yourself. tested
  • Nothing found returns HTTP 204 with no body, not an empty list. A JSON parser chokes on that; handle 204 or use nodata=404. tested
  • The catalogue is not just the Netherlands: without a box you also get Caribbean Netherlands and beyond (orderby=magnitude returned a quake near the Leeward Islands); with a box also the Ruhr and Belgium. tested
  • The catalog parameter does not work (according to the KNMI help page, not available in SeisComP). from the description
  • format=text has numbers with many decimals (Magnitude 1.5031251973028663, coordinates 53.46530151367188): round them yourself. tested
  • An error (400, 404) is plain text with the line 'Usage details are available from …', not JSON. tested

Try it HTTP 200 · 459 ms · 16 Oct

https://api.dataplatform.knmi.nl/fdsnws/event/1/query?starttime=2026-01-01&minlatitude=50.7&maxlatitude=53.7&minlongitude=3.2&maxlongitude=7.3&eventtype=induced or triggered event&limit=5&format=json
{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "id": "knmi2026qmut",
      "properties": {
        "time": "2026-08-21T03:50:39.0000",
        "lat": 53.378,
        "lon": 6.667,
        "depth": 3,
        "mag": 2.75655436993489,
        "mag_type": "MLn",
        "catalog": null,
        "contributor": "KNMI",
        "location": "Zandeweer",
        "event_type": "induced or triggered event",
        "status": "reviewed",
        "mode": "manual"
      },
      "geometry": {
        "type": "Point",
        "coordinates": "…"
      }
    },
    {
      "type": "Feature",
      "id": "knmi2026pdho",
      "properties": {
        "time": "2026-08-01T22:26:50.399999",
        "lat": 53.117,
        "lon": 6.951,
        "depth": 3,
        "mag": 1.440433077332287,
        "mag_type": "MLn",
        "catalog": null,
        "contributor": "KNMI",
        "location": "Veendam",
        "event_type": "induced or triggered event",
        "status": "reviewed",

Shortened response, saved at harvest time. Click the URL for the real, current response.

Read from WADL of the event service: all 35 parameters with type and default · KNMI help page for the event service (formats, what does not work) · The FDSN standard (same parameters at EMSC, USGS, GFZ). 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 open data index.

How to fetch it

curl "https://api.dataplatform.knmi.nl/fdsnws/event/1/query?starttime=2024-01-01&minlatitude=50.7&maxlatitude=53.7&minlongitude=3.2&maxlongitude=7.3&eventtype=induced%20or%20triggered%20event&format=text"

More from KNMI in our index

620 datasets in data.overheid.nl, Nationaal Georegister. These changed most recently.

All about KNMI

More in this topic

See how this page is built
bron: knmi-aardbevingen
blokken: []
secties:
  - ideeen
  - verwerken
  - koppelingen
  - vergelijkbaar
  - beperkingen
  - code
cache:
  tag: bron:knmi-aardbevingen
  ververs: na statuscheck, als de bron nieuwer is
statuscheck:
  methode: nieuwste gebeurtenis in het vak rond Nederland (FDSN Event,
    orderby=time, limit=1)
  verwacht: dagelijks

Source: content/bronnen/knmi-aardbevingen.yaml · Markdown