Docs/Sources/Live Earthquake Data

Live Earthquake Data

Get earthquake data

OperationalCredits 2 per callp50 226msWeather

Overview

Requests pull seismic records refreshed hourly from the United States Geological Survey. The endpoint outputs events from the previous hour with magnitudes, coordinates, and tsunami indicators, leaving alert levels null if unassigned. It also provides rolling 24-hour counts and peak magnitudes, while paid plans add the 24-hour average magnitude. The last 30 UTC days are stored as daily summaries, so paid plans also get the 7- and 30-day earthquake counts, the average per day, the number of M4.5+ quakes, and the largest quake of the week and month with its location and time; daily=true returns one row per day.

Live Test Live Earthquake Data Source →

Formula

One function covers the whole catalog: the first argument names the source, the rest are its inputs, and the "field" pair says which single value lands in the cell. Formulas covers the grammar that applies to all of them.

=VERVE("earthquake", "field", "earthquakes_LastUpdated")

Inputs

Required inputs are positional, in the order below. Everything else is passed as a "name", value pair after them — the same shape as SUMIFS. Premium inputs are accepted on every plan but only take effect on plans that include them.

InputTypeWhere it goesDescription
periodOptionalPremiumstring"period", valueTime window: hour (the past hour) or day (the past 24 hours)
hourday
default hour
minMagnitudeOptionalnumber"minMagnitude", valueOnly return earthquakes of at least this magnitude
range -2–10
latOptionalPremiumnumber"lat", valueLatitude to search around. With lon, returns only earthquakes within radius km, nearest first, each with distanceKm
range -90–90
lonOptionalPremiumnumber"lon", valueLongitude to search around (use with lat)
range -180–180
radiusOptionalPremiumnumber"radius", valueSearch radius in kilometers around lat/lon
default 500 · range 1–20000
dailyOptionalPremiumboolean"daily", valueInclude one row per UTC day for the last 30 days: event count, largest magnitude and M4.5+ count

Passing an option

=VERVE("earthquake", "period", "day")

What lands in your sheet

The "field" pair is what makes the formula resolve to one cell. Its value is a dot-path from the table below, so swapping it is how you pull a different value — one formula per column.

Seeing everything at once

Drop the "field" pair and the formula returns the whole response instead: two columns, field name on the left and value on the right, spilling from the cell you typed in.

=VERVE("earthquake")
Good for exploring, not for filling down

The second row's table would land on top of the first's, and every cell after the first reads #REF! (#SPILL! in Excel). Keep one per sheet, or name a field, and leave the cells below and to the right empty.

Response fields

Paths are relative to data. Each one is exactly what the "field" pair accepts, so swapping it is how you pull a different value into a cell. On a plan without a Premium field the cell reads #PREMIUM(field) rather than a value, so a locked field never looks like a real answer.

Use as "field"TypeExample cell valueDescription
earthquakes_LastUpdatedstring2026-10-26T20:35:55.000ZTimestamp of when the underlying earthquake data was last refreshed from USGS
earthquakes_LastHournumber7Number of earthquakes recorded in the past hour
count24hnumber200Total earthquake count in the past 24 hours
largestMagnitude24hnumber5.5Largest earthquake magnitude recorded in the past 24 hours
avgMagnitude24hPremiumnumber1.74Average earthquake magnitude across the past 24 hours
count7dPremiumnumber1889Earthquakes recorded worldwide over the last 7 UTC days, today so far included; null until days are stored
count30dPremiumnumber9917Earthquakes recorded worldwide over the last 30 UTC days, today so far included; null until days are stored
avgDailyCount30dPremiumnumber335.3Average earthquakes per complete UTC day over the last 30 days
m45Count30dPremiumnumber735Earthquakes of magnitude 4.5 or more over the last 30 days
largestMagnitude7dPremiumnumber7Largest magnitude recorded over the last 7 days
largestMagnitude30dPremiumnumber7.7Largest magnitude recorded over the last 30 days
largestPlace30dPremiumstring12 km WSW of Pitaloza Arriba, PanamaLocation of the last 30 days' largest earthquake
largestTime30dPremiumnumber1791568566036Unix timestamp, in milliseconds, of the last 30 days' largest earthquake
daysStorednumber30How many of the last 30 UTC days have stored stats
periodstringdayThe time window the earthquakes list covers: hour or day
countnumber2Number of earthquakes returned after the period, magnitude and location filters
earthquakesarray[2]Earthquakes recorded in the requested period, after any filters
earthquakes.0.magnumber1.63Magnitude of the earthquake
earthquakes.0.placestring2 km NW of Sylmar, CAHuman-readable description of the epicenter's location
earthquakes.0.timenumber1792978838050Unix timestamp, in milliseconds, of when the earthquake occurred
earthquakes.0.feltobjectnullNumber of 'felt' reports submitted by the public for this event; absent when none were submitted
earthquakes.0.cdiobjectnullMaximum reported intensity of the event from citizen 'Did You Feel It?' reports
earthquakes.0.mmiobjectnullMaximum estimated instrumental intensity of the event
earthquakes.0.alertobjectnullPAGER alert level for the event (green, yellow, orange, or red); null when no alert has been assigned
earthquakes.0.statusstringreviewedReview status of the event: 'automatic' if produced by an automatic system, 'reviewed' if a human seismologist verified it
earthquakes.0.tsunaminumber0Whether a tsunami warning was associated with this event (1) or not (0)
earthquakes.0.signumber41A number describing how significant the event is, based on magnitude, felt reports, and other factors; larger numbers indicate a more significant event
earthquakes.0.netstringciID of the seismic network that originally authored the event
earthquakes.0.typesstring,focal-mechanism,nearby-cities,origin,phase-data,scitech-link,Comma-separated list of product types associated with this event
earthquakes.0.nstnumber56Number of seismic stations used to determine the earthquake's location
earthquakes.0.dminnumber0.04284Horizontal distance, in degrees, from the epicenter to the nearest reporting station
earthquakes.0.rmsnumber0.27Root-mean-square travel time residual of the seismic stations used to locate the event, in seconds
earthquakes.0.gapnumber34Largest azimuthal gap, in degrees, between adjacent reporting stations
earthquakes.0.magTypestringmlMethod or algorithm used to calculate the reported magnitude
earthquakes.0.typestringearthquakeType of seismic event, e.g. earthquake or quarry blast
earthquakes.0.titlestringM 1.6 - 2 km NW of Sylmar, CAFormatted summary combining the magnitude and place, e.g. 'M 2.5 - 3 km ESE of Camarillo, CA'
earthquakes.0.coordinatesarray[-118.464666666667,34.3231666666667]Epicenter location as [longitude, latitude]
earthquakes.0.depthKmnumber4.21Depth of the hypocenter below the surface, in kilometers
earthquakes.0.idstringci41352567USGS event ID, stable across updates to the event
earthquakes.0.urlstringhttps://earthquake.usgs.gov/earthquakes/eventpage/ci41352567USGS event page with maps, felt reports and ShakeMap
earthquakes.0.distanceKmPremiumnumber37Distance from lat/lon to the epicenter in kilometers; present only when lat and lon are given
dailyPremiumarray[30]One row per UTC day for the last 30 days, oldest first; today is the day so far (when daily=true)
daily.0.datePremiumstring2026-09-28UTC date (YYYY-MM-DD)
daily.0.countPremiumnumber395Earthquakes recorded that day
daily.0.maxMagnitudePremiumnumber5.4Largest magnitude that day; null when no event had one
daily.0.m45CountPremiumnumber34Earthquakes of magnitude 4.5 or more that day

When a cell doesn't fill

A failed lookup returns readable text starting with #ERR rather than a spreadsheet error, because Excel cannot show a custom message on a real error — you would get a bare #VALUE! with no reason. The trade-off is that IFERROR() will not catch it; test with LEFT(cell, 4) = "#ERR" instead. Error handling covers the rest.

Cell readsWhat happened
#ERR Not connectedNo API key saved. Open the side panel and connect your account.
#ERR Replace <name> with a cell or valueA preview formula was copied as-is. Swap the placeholder for a cell reference.
#ERR No "x" in earthquakeAn option name this source does not take. The message lists the ones it does.
#ERR No data point "…"The "field" path is not in the response. Check it against the table above.
#PREMIUM(field)The field exists but your plan does not include it.
#ERR Out of creditsThe cycle's credits are spent. Usage resets on your billing date.

Before the formula works

The add-in reads the API key you saved once in the side panel — the key never goes in the formula, so a shared sheet does not leak it and a collaborator without access simply sees the last calculated values.

  1. Install the add-in for Google Sheets or Excel.
  2. Open the side panel and sign in, or paste a key from your dashboard.
  3. Type the formula above into any cell.

Use cases

Emergency Alerting Systems
When a tremor occurs, disaster response platforms trigger push alerts based on magnitude, epicenter coordinates, and tsunami warning indicators.
Travel Safety Trackers
Trip planning apps display nearby seismic activity and citizen felt reports along travel routes to warn tourists of active tremors.
Infrastructure Risk Monitoring
To protect bridges and pipelines, civil engineering teams log seismic intensity metrics and epicenter proximity to schedule structural safety inspections.
Geoscience Educational Maps
Interactive classroom dashboards map live earthquake epicenters with magnitude summaries and felt reports straight from USGS records.

Other ways to use Live Earthquake Data

Set up Live Earthquake Data on VerveSheets, or reach the same source a different way. Your VerveSheets account and credits work on all of them — one key, one balance.

Call it as a REST APIOne HTTPS endpoint and an x-api-key header, with SDKs for Node, Python and .NET.APIVerve →Reference →
Give it to an AI agentConnect over MCP and your agent calls it as a native tool — Claude, Cursor, ChatGPT.VerveKit →Reference →
Ground an agent on itA cited, machine-checkable fact your model can't produce on its own.VerveContext →Reference →

More in Weather:

Was this page helpful?