USGS Earthquake Data Scraper avatar

USGS Earthquake Data Scraper

Pricing

from $4.50 / 1,000 results

Go to Apify Store
USGS Earthquake Data Scraper

USGS Earthquake Data Scraper

Extract earthquake data from the USGS seismic network. Filter by date range, magnitude, location coordinates, and alert level. Get magnitude, depth, coordinates, felt reports, tsunami warnings, and significance scores. 150K+ events per year. Pure API, no proxy needed.

Pricing

from $4.50 / 1,000 results

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

0

Monthly active users

5 days ago

Last modified

Share

ParseForge Banner

🌍 USGS Earthquake Scraper

🚀 Export real-time global earthquake data in seconds. Pull live seismic events from the USGS public feed - magnitude, depth, coordinates, tsunami warnings, and significance scores - no API key required.

🕒 Last updated: 2026-05-21 · 📊 14 fields per record · Up to 20,000+ events/month · Global coverage

The USGS Earthquake Hazards Program publishes real-time GeoJSON feeds updated every 60 seconds covering every seismic event detected by the global network. This actor fetches those feeds directly and delivers structured, analysis-ready earthquake records to your dataset - no browser automation, no authentication, no rate-limit workarounds.

The data comes straight from official USGS servers (earthquake.usgs.gov), the gold standard for seismic monitoring data trusted by governments, researchers, and emergency response teams worldwide.

Coverage

The USGS network monitors seismic activity globally across all magnitudes. Pre-built feeds cover the last hour, day, week, or 30 days. The custom date range mode queries the FDSNWS API and can retrieve historical events back to 1900. Each event record includes 14 structured fields covering identification, location, depth, magnitude, tsunami status, and USGS significance scoring.

Target Audience

WhoWhat they need
Emergency managersReal-time alerts for M4.5+ events near population centers
Seismologists & researchersHistorical datasets for pattern analysis and modeling
JournalistsBreaking news data on significant earthquakes
Insurance/reinsuranceExposure analysis for earthquake-prone regions
App developersLive feed data for earthquake notification apps
GIS analystsLat/lon + depth data for spatial mapping

📋 What the USGS Earthquake Scraper does

  • Fetches from official USGS GeoJSON feeds - updated every 60 seconds
  • Supports pre-built feeds: last hour, last day, last week, last 30 days
  • Custom date range mode for historical data via the FDSNWS API
  • Magnitude filtering (0 to 10) to focus on events relevant to your use case
  • Delivers 14 structured fields per earthquake event including coordinates, depth, tsunami warning flag, and USGS significance score
  • Handles both "reviewed" and "automatic" status events

💡 Why it matters: USGS earthquake data is the authoritative global seismic record. Raw GeoJSON feeds require parsing, filtering, and structuring. This actor does that instantly - output is CSV/Excel/JSON-ready from the first run.

🎬 Full Demo

🚧 Coming soon

⚙️ Input

FieldTypeRequiredDefaultDescription
maxItemsintegerNo10Maximum number of records to return. Free users limited to 10.
timeRangeselectNolast_dayPre-built feed window: last_hour, last_day, last_week, last_month.
minMagnitudenumberNo2.5Minimum magnitude filter (0-10). Use 0 for all events.
startTimetextNo-Custom range start (ISO 8601: 2024-01-01). Overrides timeRange.
endTimetextNo-Custom range end (ISO 8601: 2024-01-31).

Example 1 - Last day, M2.5+:

{
"maxItems": 100,
"timeRange": "last_day",
"minMagnitude": 2.5
}

Example 2 - Custom historical range:

{
"maxItems": 500,
"startTime": "2024-01-01",
"endTime": "2024-01-31",
"minMagnitude": 4.5
}

⚠️ Good to Know: Custom date ranges (startTime/endTime) query the FDSNWS event API and can return large result sets for long periods. Always set maxItems when querying extended historical ranges to avoid timeouts.

📊 Output

FieldTypeDescription
🆔 idstringUnique USGS event identifier (e.g. hv74965437)
📊 magnitudenumberRichter magnitude of the earthquake
📍 placestringHuman-readable location description
🕒 timestringISO 8601 timestamp of the event
🔄 updatedstringISO 8601 timestamp of last USGS data update
🔗 urlstringUSGS event detail page URL
✅ statusstringReview status: "reviewed" or "automatic"
🌊 tsunamiWarningbooleanTrue if tsunami warning issued for this event
📈 significancenumberUSGS significance score 0-1000 (higher = more significant)
⬇️ depthnumberHypocenter depth in kilometers
🌐 latitudenumberEpicenter geographic latitude
🌐 longitudenumberEpicenter geographic longitude
🕓 scrapedAtstringISO 8601 timestamp when record was collected
❌ errorstringError message if record could not be collected

Sample records (real output, 2026-05-21 run):

[
{
"id": "hv74965437",
"magnitude": 2.73,
"place": "1 km N of Pāhala, Hawaii",
"time": "2026-05-21T20:53:16.190Z",
"updated": "2026-05-21T22:43:22.280Z",
"url": "https://earthquake.usgs.gov/earthquakes/eventpage/hv74965437",
"status": "reviewed",
"tsunamiWarning": false,
"significance": 115,
"depth": 31.88,
"latitude": 19.219,
"longitude": -155.478166666667,
"scrapedAt": "2026-05-21T22:56:29.090Z"
},
{
"id": "nc75366637",
"magnitude": 3.89,
"place": "62 km W of Petrolia, CA",
"time": "2026-05-21T19:00:10.190Z",
"updated": "2026-05-21T22:52:21.187Z",
"url": "https://earthquake.usgs.gov/earthquakes/eventpage/nc75366637",
"status": "reviewed",
"tsunamiWarning": false,
"significance": 233,
"depth": 10,
"latitude": 40.3773333333333,
"longitude": -125.010666666667,
"scrapedAt": "2026-05-21T22:56:29.090Z"
},
{
"id": "tx2026jyhaxp",
"magnitude": 2.7,
"place": "15 km SE of Pearsall, Texas",
"time": "2026-05-21T16:46:54.711Z",
"updated": "2026-05-21T22:46:53.848Z",
"url": "https://earthquake.usgs.gov/earthquakes/eventpage/tx2026jyhaxp",
"status": "reviewed",
"tsunamiWarning": false,
"significance": 112,
"depth": 8.457,
"latitude": 28.799,
"longitude": -98.98,
"scrapedAt": "2026-05-21T22:56:29.090Z"
}
]

✨ Why choose this Actor

FeatureBenefit
🌍 Official USGS sourceAuthoritative data trusted by governments worldwide
⚡ 60-second freshnessFeeds update every minute - near-real-time awareness
📅 Historical accessQuery events back to 1900 via custom date range
🎛️ Magnitude filteringFocus on events that matter - from micro to major
🌊 Tsunami flagBuilt-in boolean for coastal hazard screening
📊 Significance scoreUSGS-computed 0-1000 impact score for prioritization
🔑 No auth requiredZero API keys, zero setup friction
💰 Pay-per-event pricingOnly pay for what you extract

📈 How it compares to alternatives

OptionFreshnessHistoricalStructured outputNo authCost
This Actor60 secYes (1900+)Yes (14 fields)YesPay-per-event
Manual GeoJSON parsing60 secPartialManual workYesDev time
Third-party seismic APIsVariesVariesYesNo - API keySubscription
Web scraping USGS UISlowLimitedManual workYesDev time

🚀 How to use

  1. Create a free Apify account w/ $5 credit
  2. Open the actor and click Try for free
  3. Set your timeRange (last_hour / last_day / last_week / last_month) or provide custom startTime/endTime
  4. Set minMagnitude to filter by event size (e.g. 2.5 for local significant events, 4.5 for globally notable)
  5. Set maxItems to control dataset size
  6. Click Start and download results as CSV, Excel, JSON, or XML

💼 Business use cases

Emergency Management and Alerts

Monitor M4.5+ events in real time and trigger automated alerts when earthquakes occur near monitored regions. Connect to Slack or email via Apify webhooks - no polling code needed.

Insurance and Reinsurance Risk Modeling

Pull last-30-days datasets to map seismic activity against policy exposure. Combine latitude/longitude + depth + magnitude for loss estimation models. Schedule monthly runs for automated exposure reports.

Academic and Government Research

Build historical seismic catalogues for specific regions and time windows using the custom date range mode. Export to CSV for analysis in R, Python, or GIS tools. The USGS significance score helps triage large datasets.

Media and Journalism

Set up automatic runs to detect significant earthquakes (sig > 600, magnitude > 5) and pipe results to a CMS or news wire workflow. The url field links directly to the official USGS event page for verification.

🔌 Automating USGS Earthquake Scraper

Connect this actor to your favorite automation platform:

  • Make (formerly Integromat): Trigger on actor completion, filter by magnitude, post to Slack or create Google Sheets rows
  • Zapier: Connect dataset output to PagerDuty, email, or SMS for alerting workflows
  • Slack: Post earthquake summaries to a monitoring channel via webhook
  • Google Sheets: Schedule hourly/daily runs and append new records automatically
  • Apify Schedules: Set a cron schedule (e.g. every hour) directly in the Apify console for continuous monitoring

🌟 Beyond business use cases

Research and Education

Seismology students and researchers can pull datasets for any global region and time window to study earthquake clustering, depth distribution, and plate boundary behavior. The 14-field structured output feeds directly into pandas, R, or MATLAB analysis pipelines.

Creative Projects

Artists and data journalists can use magnitude and coordinates to generate geographic visualizations, sonifications of seismic rhythms, or interactive maps showing global tectonic activity.

Non-profit and Humanitarian

NGOs working in earthquake-prone regions can build low-cost early-warning dashboards using scheduled runs and webhook integrations - no seismic infrastructure required.

Personal Experimentation

Build a home earthquake notification system: schedule hourly runs for M2.0+ events within 200km of your city and get a daily digest via email. The actor does the data collection - you focus on the logic.

🤖 Ask an AI assistant about this scraper

Not sure which settings to use? Paste this into any AI assistant:

"I'm using the ParseForge USGS Earthquake Scraper on Apify. It pulls real-time and historical earthquake data from USGS feeds with fields: id, magnitude, place, time, updated, url, status, tsunamiWarning, significance, depth, latitude, longitude. I want to [describe your goal]. What input settings should I use and how should I process the output?"

❓ Frequently Asked Questions

🔑 Do I need an API key or USGS account? No. USGS earthquake feeds are fully public. No registration, no authentication, no rate limits to manage.

⚡ How fresh is the data? USGS pre-built feeds are updated every 60 seconds. Custom API queries reflect the same near-real-time database.

📅 How far back can I query historical data? The FDSNWS event API (used for custom date ranges) covers events back to 1900.

🌍 Does this cover global earthquakes or just the US? Global. USGS monitors seismic activity worldwide through its network of monitoring stations and partner agencies.

📊 What does the significance score mean? It's a USGS-computed integer (0-1000) combining magnitude, felt reports, and PAGER alert level. Higher = more socially significant. Use sig > 600 to filter major events.

🌊 When is tsunamiWarning true? When USGS flagged the event as generating or having potential to generate a tsunami (properties.tsunami === 1 in the source data).

📈 How many records can I get from last_month? The all_month feed typically contains 8,000-20,000 events. M2.5+ last month is usually 1,000-3,000. Set maxItems accordingly.

🕒 How long does a run take? Pre-built feeds: under 5 seconds for any maxItems. Custom date range queries depend on the date window and result count - typically under 30 seconds for a month of M2.5+ events.

💳 How is billing calculated? This actor uses pay-per-event pricing. You are only charged for records successfully pushed to the dataset. Errors are free.

🔧 Can I get additional fields like felt reports or shakemap data? Not in this actor. USGS provides additional detail via per-event GeoJSON detail URLs (the detail field in raw data). A future version may support detail-page enrichment.

🆓 What can free users access? Free users get a preview of 10 records per run. Upgrade to a paid plan to unlock up to 1,000,000 records.

📁 What export formats are available? JSON, CSV, Excel, XML, RSS - selectable from the Apify dataset view after any run.

🔌 Integrate with any app

Connect your earthquake dataset to the tools you already use:

  • Google Sheets - Append earthquake records to spreadsheets on a schedule
  • Airtable - Build an earthquake monitoring base with filtered views
  • Make (Integromat) - Automate alert workflows triggered by significant events
  • Zapier - Connect to 7,000+ apps: Slack, email, PagerDuty, Notion, and more
  • n8n - Self-hosted automation with Apify node
  • REST API - Direct dataset API access with your Apify token
  • Python / pandas - pd.read_json(dataset_url) for instant DataFrame
  • R - jsonlite::fromJSON(dataset_url) for seismic analysis
  • Power BI / Tableau - Connect to Apify dataset URL as JSON data source
  • QGIS / ArcGIS - Import lat/lon/depth for spatial analysis
ActorDescription
OpenSky Network Flight TrackerReal-time global flight data from ADS-B transponders
USDA NRCS Snow & Water DataWorld Bank development indicators dataset
OurAirports Global Airport Database70,000+ airports with coordinates, ICAO codes, and runways

💡 Pro Tip: browse the complete ParseForge collection for 50+ ready-to-run public data scrapers covering aviation, finance, government, science, and more.


Disclaimer: This actor uses the publicly available USGS Earthquake Hazards Program GeoJSON feeds (earthquake.usgs.gov). All data is provided by the United States Geological Survey and is in the public domain. ParseForge is not affiliated with USGS. Use of this data is subject to USGS terms of service. This actor is provided for informational and research purposes only and should not be used as the sole basis for emergency response decisions.