
Earthquake Scraper
hipersoft/earthquake-scraper
Collect global earthquakes with magnitude, place, time, depth, coordinates, tsunami and alert level. Filter by time window, magnitude, depth, bounding box or radius — export as JSON, CSV or Excel for alerts, maps, dashboards and research.
Total users
2Monthly users
1Total runs
35Per earthquake scraped
$0.0002Last rebuilt
Oct 26, 2026Overview
Track earthquakes worldwide with the Earthquake Scraper. Pull a live, structured feed of seismic events — magnitude, place, time, depth, coordinates, tsunami flag and PAGER alert level — filtered by time window, magnitude, depth, bounding box or radius, and export each event as JSON, CSV or Excel.
Built for early-warning and alerting systems, news and media desks, insurance and risk models, mapping and GIS dashboards, and scientific research, it turns the raw seismic feed into a clean dataset you can drop into any product or workflow.
What it does
- 🌍 Global feed — earthquakes anywhere on Earth, updated continuously.
- 📏 Magnitude & depth filters — set a minimum/maximum magnitude and depth range.
- 🕒 Time windows — past hour, day, week, month, or a custom date range.
- 📍 Area search — a bounding box or a circular radius around any point.
- 🌊 Impact signals — tsunami flag, PAGER alert level, felt reports and significance.
- 📤 Export anywhere — JSON, CSV or Excel, or straight into an alert, map or dashboard.
Example output
{
"id": "us7000abcd",
"magnitude": 5.8,
"magnitudeType": "mww",
"place": "120 km SSW of Sand Point, Alaska",
"time": "2026-09-21T18:42:11.000Z",
"latitude": 54.62,
"longitude": -160.41,
"depthKm": 24.5,
"tsunami": false,
"alert": "green",
"significance": 517,
"url": "https://earthquake.usgs.gov/earthquakes/eventpage/us7000abcd"
}
How to use it
- Pick a time window (or a custom date range).
- Set a minimum magnitude and, optionally, an area (box or radius).
- Run, and download the results as JSON, CSV or Excel.
Input fields
| Field | Description |
|---|---|
| Time window | Past hour, day, week, month, or a custom range. |
| Min / max magnitude | Magnitude bounds (e.g. 2.5, 6). |
| Min / max depth (km) | Depth range in kilometers. |
| Center lat/lon + radius | Circular search around a point. |
| Bounding box | Min/max latitude and longitude for a rectangular area. |
| Alert level | Filter by PAGER impact alert (green–red). |
| Sort order | Newest, oldest, or by magnitude. |
| Max earthquakes | Maximum number of events to collect. |
Output fields
id, magnitude, magnitudeType, place, time, updated, longitude, latitude, depthKm, tsunami, alert, significance, felt, cdi, mmi, status, eventType, network, code, sources, nst, gap, rms, url, detailUrl.
Popular use cases
- Alerting & early warning — notify when a quake above a magnitude hits a region.
- News & media — auto-populate a live earthquake ticker or map.
- Insurance & risk — feed recent seismicity into exposure and catastrophe models.
- Mapping & GIS — plot events by magnitude, depth and location.
- Research & education — build historical seismicity datasets for any area and period.
FAQ
Do I need an account or key? No. Set your filters and run.
How current is the data? It reflects the live global seismic feed, including recent events within the last hour.
Can I search a specific region? Yes — use a bounding box, or a center point with a radius in kilometers.
How far back can I go? Use a custom date range to pull historical events for any period.
Can I export to Excel or Google Sheets? Yes — results download as JSON, CSV or Excel and integrate with alerts, maps and dashboards.
Structured global earthquake data — magnitude, depth, location, tsunami and alert level — clean and export-ready for alerts, mapping, risk models and research.
Input
| Field | Type | Description |
|---|---|---|
periodTime window | string · hour, day, week, month, custom | Quick time window ending now. Choose a preset, or pick "Custom range" and set Start/End time below. Default: "day" |
startTimeStart time (custom) | string | Start of a custom range, ISO 8601 (e.g. 2026-09-01 or 2026-09-01T00:00:00). Used when Time window is "Custom range". |
endTimeEnd time (custom) | string | End of a custom range, ISO 8601. Leave empty for "now". |
minMagnitudeMinimum magnitude | string | Only return earthquakes at or above this magnitude (e.g. 2.5, 4.5, 6). Leave empty for all. Default: "2.5" |
maxMagnitudeMaximum magnitude | string | Only return earthquakes at or below this magnitude. Leave empty for no upper limit. |
minDepthMinimum depth (km) | string | Only earthquakes at or deeper than this depth in km. Leave empty to ignore. |
maxDepthMaximum depth (km) | string | Only earthquakes at or shallower than this depth in km. Leave empty to ignore. |
latitudeCenter latitude | string | Latitude for a circular (radius) search. Use with Center longitude and Radius. |
longitudeCenter longitude | string | Longitude for a circular (radius) search. |
maxRadiusKmRadius (km) | string | Radius in km around the center point. Use with Center latitude/longitude. |
minLatitudeBox: min latitude | string | Bounding-box search: southern edge. Use the four box fields together. |
maxLatitudeBox: max latitude | string | Bounding-box search: northern edge. |
minLongitudeBox: min longitude | string | Bounding-box search: western edge. |
maxLongitudeBox: max longitude | string | Bounding-box search: eastern edge. |
alertLevelAlert level | string · , green, yellow, orange, red | Filter by PAGER impact alert level. |
eventTypeEvent type | string | Filter by event type (e.g. earthquake, quarry blast). Leave empty for all. |
orderBySort order | string · time, time-asc, magnitude, magnitude-asc | Order of returned events. Default: "time" |
maxItemsMax earthquakes | integer | Maximum number of earthquakes to collect. Default: 1000 |
proxyConfigurationProxy (optional) | object | Optional proxy settings for the run. Not required — the data is fetched over plain HTTP. Default: {"useApifyProxy": false} |
API
curl -X POST "https://api.apify.com/v2/acts/hipersoft~earthquake-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{}'from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("hipersoft/earthquake-scraper").call(run_input={})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('hipersoft/earthquake-scraper').call({});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);Pricing
| Event | Price | Paid plans from |
|---|---|---|
| Earthquake scraped One earthquake event returned | $0.0002 | $0.0001 |
You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.
Related scrapers
Website Content Crawler Pro
Crawl any website into clean Markdown or text for LLMs, RAG and AI. HTTP + JS-browser modes, main-content (readability) extraction, sitemaps, URL glob filters, cookie-banner removal and CSS selectors. No setup.
178 runs · 15 users · $0.004 / page crawledopenFDA Scraper
Search FDA open data: drug/device/food recalls, drug labels and adverse-event reports by drug, manufacturer or keyword. Get classification, reason, firm, dates and details. For pharma, regulatory and safety research. No setup.
122 runs · 4 users · $0.0016 / record scrapedWeather Forecast Scraper
Fetch global weather forecasts and recent history for any place name or coordinates. Get hourly and daily temperature, precipitation, wind and more as structured JSON, CSV or Excel — for apps, dashboards, research and n8n.
64 runs · 1 users · $0.001 / forecast scrapedUS Weather Alerts Scraper
Get active US weather alerts from the National Weather Service: event type, severity, urgency, affected areas, headline, full description, instructions and effective/expiry times. Filter by state and severity. Great for safety, logistics and monitoring. One row per alert as JSON, CSV or Excel.
36 runs · 2 users · $0.0004 / alert scrapedHistorical Weather Scraper
Download historical weather for any place or coordinates: daily or hourly temperature, precipitation, wind and more, back to 1940. One tidy row per day or hour, exported as JSON, CSV or Excel for research, energy, agriculture and analytics.
34 runs · 2 users · $0.0002 / row scrapedVesselFinder Scraper
Scrape ship data from VesselFinder by vessel name or IMO/MMSI: IMO, MMSI, callsign, type, flag, year built, length, beam, gross tonnage, deadweight, draught, course, speed, destination, ETA, last port, departure time and last position report.
13 runs · 2 users · $0.003 / vesselSend the site and the fields. We build it and you get it first.