USGS Earthquake Data Scraper
Pricing
from $0.81 / 1,000 results
USGS Earthquake Data Scraper
Scrapes earthquake events from the USGS Earthquake Catalog by time range or custom date range, filtered by minimum magnitude. Returns each event as a flat row with magnitude, depth, location, and timestamp.
Pricing
from $0.81 / 1,000 results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
USGS Earthquake Data Scraper
Scrape USGS earthquake data by time range, magnitude, or custom date range, up to a million events per run. Each earthquake comes with its magnitude, depth, location, and timestamp. No API key required. Export to CSV, JSON, Excel, or XML.
The USGS Earthquake Hazards Program publishes real-time and historical earthquake data, but the official API limits you to 20,000 events per query and requires pagination for larger datasets. This Actor reads the public feeds directly, filters by magnitude and time range, and returns each event in one fixed schema. No registration, no API key, no rate limits.
| Who uses it | What they scrape USGS Earthquake Catalog for |
|---|---|
| Seismologists and researchers | Building a local earthquake catalog for a specific region and time period |
| Insurance risk analysts | Assessing seismic exposure for properties in earthquake-prone areas |
| Emergency managers | Monitoring recent seismic activity for situational awareness |
| Data journalists | Analyzing earthquake patterns for news stories and visualizations |
| Real estate developers | Evaluating seismic risk for potential construction sites |
What it does
This Actor collects earthquake events from the USGS Earthquake Catalog by time range or custom date range, filtered by minimum magnitude, and returns each event as a flat row.
- ⏱️ Time range presets: last hour, last day, last week, or last month (30 days).
- 📅 Custom date range: set exact start and end times in ISO 8601 format for historical analysis.
- 📊 Magnitude filter: only return earthquakes at or above a specified magnitude, from 0 to 10.
- 🔢 Maximum items: cap the number of events per run, from 1 to 1,000,000.
- 📄 Flat output: each earthquake is a single row with magnitude, depth, location, and timestamp.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with USGS Earthquake Catalog data
📈 Seismic risk assessment.
An insurance analyst runs the Actor for the last 30 days with a minimum magnitude of 4.0 to identify recent significant earthquakes near insured properties.
🔍 Historical earthquake research.
A seismologist sets a custom date range from 2010 to 2020 and a minimum magnitude of 5.0 to build a dataset of moderate-to-large events for a regional study.
🚨 Emergency monitoring.
An emergency manager runs the Actor every hour with a minimum magnitude of 3.0 to get a real-time feed of potentially damaging earthquakes for public alerts.
📰 Data journalism.
A reporter scrapes the last week of earthquakes with no magnitude filter to create a map of all seismic activity for a news story.
🏗️ Site selection.
A real estate developer queries the last month with a minimum magnitude of 2.5 to assess seismic activity near a potential construction site.
Why choose this scraper
| What you get | |
|---|---|
| No API key | Uses the public USGS feeds directly, no registration or authentication required. |
| Up to 1M events | Collect up to a million earthquakes per run, far beyond the official API's 20,000 limit. |
| Historical data | Query any date range back to the start of the USGS catalog. |
| Fixed schema | Every event returns the same fields, ready for analysis or export. |
How it compares
This Actor focuses on simple time and magnitude filtering with high volume limits, while competitors offer geographic filters or additional alert data.
| Feature | ParseForge | USGS Earthquake Data Scraper | USGS Earthquake Data Scraper | USGS Earthquake Scraper - Seismic Data & Alerts API |
|---|---|---|---|---|
| Time range presets | Yes | Not listed | Not listed | Not listed |
| Custom date range | Yes | Yes | Yes | Yes |
| Minimum magnitude filter | Yes | Yes | Yes | Yes |
| Geographic bounding box or radius filter | Not listed | Yes | Yes | Yes |
| Tsunami alerts and felt reports | Not listed | Not listed | Yes | Yes |
| PAGER alert level filter | Not listed | Not listed | Not listed | Yes |
| Maximum items up to 1,000,000 | Yes | Not listed | Not listed | Not listed |
Configure the run
Drive the Actor from time range presets or a custom date range, and filter by minimum magnitude so only relevant earthquakes reach your dataset. The Input tab lists every parameter.
A first run with the defaults:
{"maxItems": 10,"timeRange": "last_day","minMagnitude": 2.5}
A larger pull:
{"maxItems": 200,"timeRange": "last_day","minMagnitude": 2.5}
Pricing
Pay-per-result: $0.0018 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $0.18 |
| 1,000 results | $1.80 |
| 10,000 results | $18.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the USGS Earthquake Data Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to USGS Earthquake Catalog through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/usgs-earthquake-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting no results?
Check your minimum magnitude filter. If it is set too high, there may be no earthquakes of that size in your selected time range. Also ensure your custom date range is valid and the start time is before the end time.
Why did I get fewer results than maxItems?
maxItems is an upper limit, not a target. The Actor returns all matching earthquakes up to that number. If fewer events match your filters, you will get fewer results.
How do I use a custom date range?
Set both startTime and endTime in ISO 8601 format, for example 2024-01-01 and 2024-01-31. When both are set, they override the timeRange preset.
Can I get earthquakes from a specific country or region?
This Actor does not support geographic filtering. You can filter the output dataset by location fields after the run, or use a different Actor that supports bounding boxes.
Why is my run taking a long time?
Large time ranges with a low minimum magnitude can return many events. Increase the minimum magnitude or reduce the time range to speed up the run.
FAQ
| Question | Answer |
|---|---|
| Do I need an API key to use this Actor? | No. The Actor reads the public USGS earthquake feeds directly, so no registration or API key is required. |
| What is the maximum number of earthquakes I can get per run? | You can set maxItems up to 1,000,000. The actual number returned depends on how many events match your filters in the selected time range. |
| Can I get historical earthquake data? | Yes. Use the custom date range fields to specify any start and end time in ISO 8601 format. The USGS catalog goes back many decades. |
| What does the minimum magnitude filter do? | It only returns earthquakes with a magnitude equal to or greater than the value you set. Set it to 0 to get all earthquakes, including microseisms. |
| What time range presets are available? | Last hour, last day, last week, and last month (30 days). If you set a custom date range, it overrides the preset. |
| What format are the results in? | The Actor returns a flat dataset where each row is one earthquake. You can export it to CSV, JSON, Excel, or XML from the Apify platform. |
| Does this Actor include tsunami alerts or felt reports? | The Actor returns the standard USGS feed fields, which include magnitude, depth, location, and timestamp. Tsunami and felt report data are not included in the basic feed. |
| Can I filter by geographic location? | This Actor does not support geographic bounding box or radius filters. It filters by time range and magnitude only. |
| How often is the USGS data updated? | The USGS feeds are updated in near real-time, typically within minutes of an earthquake occurring. The Actor fetches the latest data on each run. |
| Is there a limit on how many runs I can do? | No, you can run the Actor as often as you like. Each run counts toward your Apify platform usage. |
Related actors
Browse the full ParseForge collection for more scrapers.
🆘 Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
⚠️ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by U.S. Geological Survey. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
