# Global cataloged earthquakes, magnitude 4.5+, in 2025

Dataset page: https://meplar.com/datasets/global-earthquakes-2025/

Snapshot: 14 October 2026. Worldwide USGS ComCat earthquakes with preferred magnitude ≥4.5 and origin time from 1 January 2025 inclusive to 1 January 2026 exclusive, UTC.

Full data CSV: https://meplar.com/downloads/global-earthquakes-2025/v1/earthquakes_2025_m45.csv
Chart/summary CSV: https://meplar.com/downloads/global-earthquakes-2025/v1/depth_summary.csv
Desktop chart: https://meplar.com/downloads/global-earthquakes-2025/v1/earthquakes_2025.png
Mobile chart: https://meplar.com/downloads/global-earthquakes-2025/v1/earthquakes_2025_mobile.png
Complete package: https://meplar.com/downloads/global-earthquakes-2025/v1/global-earthquakes-2025.zip

## Package layout and reproduction

Extract the ZIP and enter earthquakes_2025/. With requirements.txt, run `MPLCONFIGDIR=/tmp/meplar-mpl python build.py`. It reads the bundled event CSV and Natural Earth shapefile offline and rebuilds both charts and cleaned tables. Do not run fetch_sources.py for this fixed snapshot. Rendering can depend on library/font versions; the supplied hashes identify the reviewed originals.

## Source data and reuse

USGS-produced factual data are in the US public domain. ComCat includes contributing networks; preserve original attribution and source fields. No blanket CC0 grant for third-party material or worldwide rights is asserted. Natural Earth map data are public domain: https://www.naturalearthdata.com/about/terms-of-use/ . No source logos or protected media are included. Original Meplar charts and code are separate works; no new license for them is asserted here.

## Original source and method notes

## Finding

USGS ANSS ComCat returns **8,556 earthquakes of magnitude 4.5 or greater** with origin times in calendar year 2025 (UTC). Of those:

| Depth group | Definition | Events | Share |
|---|---|---:|---:|
| Shallow | 0 ≤ depth < 70 km | 6,942 | 81.1360% |
| Intermediate | 70 ≤ depth < 300 km | 1,328 | 15.5213% |
| Deep | depth ≥ 300 km | 286 | 3.3427% |

The deepest cataloged event in this selection is 669.556 km. All 8,556 events have reviewed status in the downloaded snapshot. These are descriptive statistics of this selection, not estimates for all earthquakes. Shares on the image round to one decimal and therefore sum to 99.9%.

## Files

- `earthquakes_2025.png`: original 2,880 × 2,520 px publication image.
- `earthquakes_2025.svg`: editable vector image.
- `data/earthquakes_2025_m45.csv`: all 8,556 selected events and their original attributes, with clearer column names, explicit depth classification, and an event URL.
- `data/depth_summary.csv`: exact group counts and percentage denominator.
- `raw/usgs_2025_m45.csv`: unmodified USGS CSV snapshot.
- `raw/api_count.txt`: independent response from the API count endpoint.
- `raw/coastline/`: downloaded Natural Earth 1:110m coastline, including original source ZIP.
- `build.py`: offline reproduction script; no network required.
- `fetch_sources.py`: optional fresh-data downloader, intentionally separate because the catalog can change.
- `validation.json`: programmatically checked claims.
- `requirements.txt`: dependency versions used.
- `SHA256SUMS.txt`: byte hashes for the deliverables and bundled inputs.

## Sources and provenance

Data downloaded 14 October 2026 UTC. USGS query:

https://earthquake.usgs.gov/fdsnws/event/1/query?format=csv&starttime=2025-01-01&endtime=2026-01-01&minmagnitude=4.5&eventtype=earthquake&orderby=time-asc

Independent count query:

https://earthquake.usgs.gov/fdsnws/event/1/count?starttime=2025-01-01&endtime=2026-01-01&minmagnitude=4.5&eventtype=earthquake

The API end boundary may be inclusive; the reproduction script explicitly asserts that every returned origin time is strictly before 2026-01-01 00:00 UTC. No boundary event was present. The result is below the API's 20,000-event ceiling. The independent count is 8,556, matching the CSV row count, so the result is not a page/truncation artifact.

Catalog documentation: https://earthquake.usgs.gov/data/comcat/

API documentation: https://earthquake.usgs.gov/fdsnws/event/1/

Depth classification and scientific context: https://www.usgs.gov/programs/earthquake-hazards/determining-depth-earthquake

Further context about deep earthquakes and cold subducting slabs: https://www.usgs.gov/faqs/what-depth-do-earthquakes-occur-what-significance-depth

Coastline download: https://naturalearth.s3.amazonaws.com/110m_physical/ne_110m_coastline.zip

Credit: USGS ANSS Comprehensive Earthquake Catalog and contributing seismic networks. Made with Natural Earth. Original analysis and graphic prepared for Meplar; neither source endorses the graphic.

## Redistribution / licensing

USGS states that USGS-authored or produced data and information are in the U.S. public domain and can be freely used without permission: https://www.usgs.gov/faqs/are-usgs-reportspublications-copyrighted

This package redistributes the factual event catalog export, not third-party photographs, basemap tiles, journal figures, or protected illustrations. ComCat aggregates contributing networks; original network, location-source and magnitude-source fields are retained for attribution and traceability. No blanket CC0 license is invented for third-party material or for worldwide rights. Preserve the source credit and original fields when redistributing.

Natural Earth explicitly places all versions of its map data in the public domain and permits redistribution and modification, including commercial use: https://www.naturalearthdata.com/about/terms-of-use/

The PNG and plotting code are newly produced deliverables for this project, not copied USGS graphics. No source logo is used.

## Exact processing and quality checks

1. Read the unmodified CSV. Preserve every returned row; do not sample, discard aftershocks, or restrict geography.
2. Assert distinct event IDs, no missing coordinates/depth/magnitude, all magnitudes ≥4.5, all event types `earthquake`, reviewed status for all rows, nonnegative depth, and origin time in the requested half-open interval.
3. Rename `time`, `latitude`, `longitude`, `depth`, `mag`, `magType`, `id` to `origin_time_utc`, `latitude_deg`, `longitude_deg`, `depth_km`, `magnitude`, `magnitude_type`, `event_id`. Other source columns retain their original names and units. Add `depth_group` and `event_url`.
4. Preserve missing ancillary observations as empty CSV fields; do not impute, zero-fill, or drop these rows. There are no missing values in fields required for this graphic. Source ancillary fields include missing station counts, gap, distance and error estimates.
5. Define left-inclusive/right-exclusive depth bins [0,70), [70,300), [300,infinity). Count each event once. Percent = group count / 8,556 × 100.
6. For plotting only, transform longitude to `longitude_deg % 360` to center the Pacific. Original signed longitude remains in the download. The upper panel is a schematic longitude–latitude coastline map, not an equal-area projection. The lower panel uses longitude versus depth; all latitudes are collapsed together, so it is not a physical cross-section. The vertical direction increases downward.
7. Plot every point at the same marker area. Colors encode depth group, not magnitude. Depth-dependent transparency aids visibility; deep events are drawn last. The chart notes that overlaps hide points. Annotation labels identify broad geographic regions, not computed tectonic membership.
8. The 70 and 300 km boundaries follow USGS's standard shallow/intermediate/deep categories. No inference of earthquake energy, human impacts, or hazard is made from counts.

## Important limitations

- This is the 2025 **cataloged magnitude ≥4.5** population, not all global earthquakes. Network detection, catalog practices, reported magnitude types and location precision differ. We do not claim uniform global completeness at this cutoff.
- Preferred magnitude types vary; the original magnitude type is preserved. Magnitudes are not converted to energy.
- Aftershocks are included. Counts therefore do not represent independent tectonic episodes.
- Some depths may be constrained/defaulted by the source location process. Error fields are preserved; plotted point estimates do not show uncertainty intervals. Depth precision in CSV is source precision, not a claim of physical certainty.
- Future USGS revisions may change locations, magnitudes or membership near the threshold. Run the plotting script on the bundled snapshot for exact reproduction.
- A schematic longitude–depth plot compresses geography and must not be interpreted as literal slab dip angle or layer thickness.
- The selected date range is one full calendar year; no current-year partial data are mixed in.

## Run

Use Python 3.11 or newer, with NumPy, pandas, and Matplotlib. From this folder:

    python -m pip install -r requirements.txt
    MPLCONFIGDIR=/tmp/meplar-mpl python build.py

The script reads bundled inputs and regenerates the cleaned CSV, summary CSV, validation JSON, PNG and SVG. A small standard-library parser reads the Natural Earth PolyLine shapefile, avoiding map-library or network dependencies.

To intentionally refresh upstream inputs, run `python fetch_sources.py`, then `python build.py`. Refreshing changes the snapshot and requires updating the date and all prose claims before publication.
