Technical writing

USGS Earthquakes: The Federal Catalog of Every Significant Global Quake

· 11 min read· AI Analytics
USGSEarthquakesANSSSeismic HazardFederal Data

Somewhere on Earth the ground breaks every few minutes, and within minutes of the rupture a federal database knows where, how deep, and how hard. The US Geological Survey's Comprehensive Catalog—ComCat—is the authoritative ledger of global seismicity: an origin time, a latitude and longitude, a depth, and a magnitude for each event, assembled from a worldwide web of seismometers and published while the shaking is still settling. Our slice holds roughly 101,000 magnitude-4-and-greater earthquakes since 2020, one row per event, the raw material from which ground-shaking maps, casualty estimates, and tsunami warnings are built.

This article covers what the ComCat dataset is and how the Advanced National Seismic System produces it; the distinction between the USGS's national role and the contributing seismic networks whose data it merges; the anatomy of an earthquake record—origin time, epicenter, depth, magnitude, and the all-important magnitude type; why magnitude is logarithmic and why a shallow moderate quake can do more damage than a deep large one; the impact products the catalog feeds—ShakeMap, PAGER, and the inputs to tsunami warning—and the speed at which they are produced; how the dataset supports seismic-hazard analysis and long-term seismicity studies; a Python workflow that queries the no-key FDSN event web service by region, magnitude, and time window and tallies events by magnitude band; and the caveats—catalog completeness, magnitude heterogeneity, and the evolving nature of preliminary solutions—that every analyst must internalize before drawing conclusions.

What the dataset is

The Comprehensive Catalog (ComCat) is the USGS's unified, searchable database of earthquakes and the products derived from them. It is produced and maintained primarily by the National Earthquake Information Center (NEIC) in Golden, Colorado—the USGS facility that monitors global seismicity around the clock—as the public face of the Advanced National Seismic System (ANSS), the federal program that coordinates earthquake monitoring across the United States and around the world. ComCat does not hold the raw seismograms; it holds the parametric solutions—the location, depth, time, and size that analysts and automated systems derive from those waveforms—along with the impact products and contributed information that accumulate around significant events.

In our database this record is stored as the table usgs_quakes_bulk, with the grain of one row per event: every magnitude-4.0-and-greater earthquake worldwide since 2020, roughly 101,000 events, each keyed by its persistent USGS event identifier. We chose the magnitude-4 floor deliberately. Below about magnitude 4 the global catalog becomes increasingly incomplete in remote and oceanic regions where station coverage is sparse, while at magnitude 4 and above the catalog is essentially complete worldwide—these are the events large enough to be detected and located everywhere, and large enough to matter for felt reports and hazard. The columns capture, for each event, when and where it happened, how deep, how big, and who reported it:

id            -- USGS event identifier (e.g. us7000abcd); the primary key
time          -- origin time (UTC), when the rupture began
latitude      -- epicenter latitude (decimal degrees)
longitude     -- epicenter longitude (decimal degrees)
depth_km      -- hypocenter depth below the surface, in kilometers
mag           -- magnitude (logarithmic measure of event size)
magType       -- how the magnitude was measured (Mww, mb, ml, mwc ...)
place         -- human-readable location ("72 km SSW of ...")
net           -- contributing network / catalog source (us, ci, ak, nc ...)
status        -- automatic or reviewed (preliminary vs analyst-checked)
nst           -- number of seismic stations used in the location
gap           -- largest azimuthal gap between stations (location quality)
felt          -- count of "Did You Feel It?" reports (significant events)

The id is the load-bearing column. The USGS event identifier is a persistent key assigned to each earthquake, and it is what lets a row in usgs_quakes_bulk be tied back to the full event page, the ShakeMap, the PAGER loss estimate, and any later revisions to the solution. The pairing of mag and magType is the substantive payload: a magnitude is meaningless without knowing how it was measured, because the different magnitude scales agree closely for small and moderate events but diverge for the largest ones. The depth_km column is the one most often ignored and most often decisive: two earthquakes of identical magnitude can produce wildly different surface shaking depending on how deep the rupture is. And net records which contributing network—a regional seismic network, the NEIC's global solution, or an international agency—is the authoritative source for that event, the fact that makes ComCat a merged catalog rather than a single homogeneous one.

The ANSS frame and the contributing networks

The legal and institutional backbone of this dataset is the Advanced National Seismic System, authorized by Congress in the early 2000s and operated by the USGS as the nation's coordinated earthquake-monitoring infrastructure. ANSS is not a single observatory; it is a federation. At its center is the NEIC, which provides rapid global earthquake locations and magnitudes, but its strength comes from the regional seismic networks—operated by universities, state surveys, and USGS science centers—that densely instrument the seismically active parts of the country: the Southern and Northern California networks, the Pacific Northwest network, the Alaska Earthquake Center, the network covering Utah and the Intermountain West, and others. These regional networks detect and locate smaller, local earthquakes with far greater precision than a global network can, and ANSS exists in part to knit their data together into one coherent national picture.

This federated structure is exactly why ComCat is a merged, authoritative-source catalog. For any given earthquake, several networks may compute a solution—a regional network with stations close to the epicenter, the NEIC with its global station distribution, perhaps an international agency. ComCat applies authoritative-region rules: within a regional network's defined area of responsibility, that network's solution is normally the authoritative one, because its nearby stations yield a better location and depth; outside those regions, the NEIC's global solution prevails. The net column records which source won. The practical consequence for an analyst is that the catalog is internally heterogeneous by design: a magnitude-4 event in California carries a solution computed a different way, by a different network, with a different magnitude type, than a magnitude-4 event in the open Pacific. That heterogeneity is the price of completeness and accuracy, and it is a recurring theme in the caveats.

One more structural point matters: ComCat is the public, downstream product of a real-time pipeline. The same system that populates the catalog drives the USGS's real-time earthquake feeds, which publish new events within minutes of detection, and it interoperates with international standards so that seismic data can be exchanged across agencies. The dataset an analyst queries today is the settled, reviewed version of what flowed through that operational pipeline; the same records, in their first minutes of life, were the automatic alerts that mobilized emergency response.

Anatomy of an earthquake record

Every event in the catalog is described by a small set of physical parameters, and understanding what each one means—and how it is estimated—is the difference between using the data and misreading it. The origin time is the instant the rupture began, recorded in Coordinated Universal Time; it is not the time the shaking arrived at any particular place but the time at the source, reconstructed from the arrival times of seismic waves at many stations. The epicenter—the latitude and longitude—is the point on the Earth's surface directly above where the rupture initiated; it is what maps show, but it is a projection of the true source.

The depth is the vertical distance from the surface down to the hypocenter, the actual point of rupture initiation, and it is both the hardest parameter to estimate and one of the most important. Depth ranges from a few kilometers (shallow crustal earthquakes) to several hundred kilometers (deep events within subducting slabs). It is hard to constrain because it trades off against origin time in the location calculation and requires stations close to the epicenter to pin down well; for offshore events located only by distant stations, depth is often poorly resolved or fixed at an assumed value. An analyst should treat depth with appropriate skepticism when the location is far from any dense network.

The magnitude measures the size of the earthquake, and the magnitude type tells you which physical quantity was measured and by what method. The most authoritative scale for moderate-to-large events is the moment magnitude (Mww or Mw), derived from the seismic moment—the product of the rupture area, the slip, and the rigidity of the rock—and it does not saturate, meaning it remains reliable even for the greatest earthquakes. Smaller and more local events are often reported in other scales: mb (body-wave magnitude) for many teleseismically recorded events, ml (local or “Richter” magnitude) for regional events, and several others. These scales are calibrated to agree in the middle of their ranges but can differ by a few tenths of a unit for the same event, and the older scales saturate—they stop increasing—for very large earthquakes, which is precisely why the historic Richter scale was superseded by moment magnitude for big events. Comparing magnitudes across events without regard to type is one of the most common mistakes in working with the catalog.

Why magnitude is logarithmic and depth governs shaking

Magnitude is a logarithmic measure, and the consequences of that are routinely underestimated. Each whole unit of magnitude corresponds to roughly a tenfold increase in the amplitude of ground motion recorded on a seismometer and—the more physically meaningful figure—to roughly a 32-fold increase in the energy released by the earthquake. A magnitude-6 event therefore releases on the order of a thousand times more energy than a magnitude-4 (32 times 32), and a magnitude-8 releases on the order of a million times more than a magnitude-4. This is why the count of small earthquakes vastly exceeds the count of large ones—the Gutenberg–Richter relationship describes how the number of events falls off roughly tenfold for each unit of magnitude—and it is why a tally of events by magnitude band is so skewed: the catalog is dominated by magnitude-4 and magnitude-5 events, with the rare great earthquakes carrying almost all of the released energy.

But magnitude alone does not determine how dangerous an earthquake is at the surface, and this is the single most important interpretive point in the dataset. Depth strongly modulates surface shaking. Seismic energy attenuates as it travels, so a rupture that occurs ten kilometers below a city delivers far more intense shaking to that city than one of the same magnitude two hundred kilometers down. The result is that a shallow magnitude-6 can be far more destructive than a deep magnitude-7: the deep event, despite releasing far more energy, spreads that energy over a long path before it reaches the surface, while the shallow event concentrates a smaller release directly beneath populated ground. Many of history's deadliest earthquakes were moderate in magnitude but shallow and located directly beneath vulnerable cities; many of the largest-magnitude events were deep subduction-zone ruptures that, where deep, did comparatively little surface damage— though the shallow great earthquakes are the ones that generate the most destructive shaking and the worst tsunamis. Any analysis that ranks earthquakes by magnitude alone, ignoring depth, is ranking them by energy and not by hazard. The depth_km column and the distance to population are what convert a size measurement into a danger assessment.

Impact products: ShakeMap, PAGER, and tsunami warning

The catalog is not an academic archive; it is the front end of an operational system whose outputs matter in the minutes after a quake. As soon as the NEIC computes a location and magnitude, a cascade of automated impact products is generated, and the most important three are worth understanding because they are what the dataset ultimately exists to feed.

ShakeMap is a modeled map of ground shaking. Starting from the event's location, depth, and magnitude, and incorporating recorded ground motions from nearby instruments and the local geology (soft sediments amplify shaking; hard rock does not), ShakeMap estimates the intensity of shaking experienced across the affected region—not just at the epicenter but everywhere the waves reached. It is the bridge from the abstract magnitude to the concrete question of how hard the ground moved where people and structures are. PAGER (Prompt Assessment of Global Earthquakes for Response) takes the ShakeMap shaking estimate, overlays it on global population and building-vulnerability data, and produces a rapid estimate of the likely number of fatalities and the economic loss, expressed as probabilistic alert levels. PAGER is what tells emergency managers within minutes whether a distant magnitude-7 struck open ocean or a dense city—the difference between a footnote and a catastrophe—and it is the clearest demonstration of why depth and location, not magnitude alone, drive the response.

The catalog also supplies inputs to tsunami warning. Large, shallow earthquakes beneath or near the ocean—particularly the great thrust earthquakes at subduction zones—can displace the seafloor and generate tsunamis, and the location, depth, and magnitude of an event are the first parameters the tsunami warning centers use to decide whether a threat exists and how far it may reach. The speed of the whole pipeline is the point: the USGS publishes event parameters within minutes, because for a tsunami racing across an ocean, or for emergency crews deciding where to send help, the value of the information decays by the minute. The historical record in ComCat is the same data after the urgency has passed—refined, reviewed, and preserved for the long-term study of where and how often the Earth shakes.

Seismic-hazard analysis and long-term seismicity

Beyond the immediate response, the accumulated catalog is the empirical foundation of seismic-hazard analysis—the discipline that estimates how strongly the ground is likely to shake at a given place over a given period, which in turn underpins building codes, insurance pricing, and infrastructure design. A multi-decade catalog of located, sized earthquakes reveals where seismicity concentrates (the plate boundaries, the active fault systems, the subduction zones), how frequently events of each size occur in each region (the Gutenberg–Richter rate), and how those rates vary in space. Combined with knowledge of the faults themselves and models of how ground motion attenuates with distance, this becomes the probabilistic seismic-hazard maps that, for example, the USGS publishes for the United States and that the building codes translate into design requirements. The catalog is the observed-rate input to that entire edifice.

The catalog also enables the study of earthquake sequences. Large earthquakes are not isolated; they are typically preceded by occasional foreshocks and followed by long, decaying sequences of aftershocks that cluster in space and time around the main rupture. Because every event carries a precise time and location, the catalog lets analysts isolate a mainshock and trace its aftershock sequence, map how the aftershocks illuminate the rupture plane, and measure how the rate of aftershocks decays—the basis for the aftershock forecasts the USGS issues after major events. It also makes visible phenomena such as induced seismicity: the marked increase in small-to-moderate earthquakes in parts of the central United States associated with the deep injection of wastewater from oil and gas operations, a pattern that is legible in the catalog precisely because it records the time, place, depth, and size of every qualifying event in a region that was historically quiet.

Python workflow: querying the FDSN event web service

The catalog is served through the FDSN event web service at earthquake.usgs.gov/fdsnws/event/1, an implementation of the international Federation of Digital Seismograph Networks standard, alongside the real-time GeoJSON feeds. No API key is required. The script below queries events by magnitude, time window, and an optional geographic bounding box; parses the GeoJSON into a tidy frame keyed by USGS event ID; and computes the core descriptive metrics—a tally of events by magnitude band, a count of how many strong events were shallow (and therefore most dangerous), and a regional count for a Pacific Northwest bounding box. The service caps the number of events returned in a single request, so production code pulling a long history or a dense region should page through results by stepping the time window; for bulk needs the USGS also publishes downloadable catalog extracts.

import requests, pandas as pd

# USGS FDSN event web service -- no API key required for public data.
# Docs: https://earthquake.usgs.gov/fdsnws/event/1/
# The service returns GeoJSON; each feature is one event keyed by its
# USGS event id (feature["id"]) with origin and magnitude in properties
# and [lon, lat, depth_km] in geometry.coordinates.
FDSN = "https://earthquake.usgs.gov/fdsnws/event/1/query"


def query_events(starttime, endtime, minmagnitude=4.0, region=None):
    # region, if given, is a (minlat, maxlat, minlon, maxlon) bounding box.
    params = {
        "format": "geojson",
        "starttime": starttime,
        "endtime": endtime,
        "minmagnitude": minmagnitude,
        "orderby": "time",
    }
    if region:
        params["minlatitude"], params["maxlatitude"] = region[0], region[1]
        params["minlongitude"], params["maxlongitude"] = region[2], region[3]
    r = requests.get(FDSN, params=params, timeout=120)
    r.raise_for_status()
    return r.json()["features"]


def to_frame(features):
    rows = []
    for f in features:
        p = f["properties"]
        lon, lat, depth = f["geometry"]["coordinates"]
        rows.append({
            "id": f["id"],
            "time": pd.to_datetime(p["time"], unit="ms", utc=True),
            "mag": p["mag"],
            "magType": p.get("magType"),
            "depth_km": depth,
            "lat": lat, "lon": lon,
            "place": p.get("place"),
            "net": p.get("net"),
        })
    return pd.DataFrame(rows)


def magnitude_band(m):
    # Bands aligned with felt/damage expectations.
    if m >= 7.0: return "major 7+"
    if m >= 6.0: return "strong 6-7"
    if m >= 5.0: return "moderate 5-6"
    return "light 4-5"


# Pull a full year of M4+ events worldwide and tally them.
feats = query_events("2024-01-01", "2025-01-01", minmagnitude=4.0)
df = to_frame(feats)
print(f"{len(df):,} M4+ events worldwide in 2024")

# --- Tally by magnitude band ---------------------------------------------
df["band"] = df["mag"].apply(magnitude_band)
by_band = df.groupby("band").size().sort_values(ascending=False)
print(by_band)

# --- Shallow vs deep among strong quakes ---------------------------------
strong = df[df["mag"] >= 6.0]
shallow = strong[strong["depth_km"] < 70.0]
print(f"M6+ events: {len(strong):,}  "
      f"({len(shallow):,} shallow <70 km, the most damaging)")

# --- Regional tally: a Pacific Northwest bounding box ---------------------
pnw = query_events("2024-01-01", "2025-01-01", 4.0, region=(40, 50, -130, -120))
pnw_df = to_frame(pnw)
print(f"Cascadia / PNW box: {len(pnw_df):,} M4+ events, "
      f"largest M{pnw_df['mag'].max():.1f}")

Two practical notes apply. First, the shallow-versus-deep split in the script uses a seventy-kilometer threshold as a rough boundary between shallow crustal seismicity and intermediate-to-deep events; for hazard work the relevant distinction is really the depth relative to the population at risk, and a more careful analysis would weight each event by its depth and its distance to populated areas rather than applying a single cutoff. Second, the magnitude band tally mixes magnitude types—a deliberate simplification. For any analysis where a few tenths of a magnitude unit matter, filter or normalize on magType first, and prefer moment magnitude (Mww/Mw) for the larger events, because comparing an mb value for one event against an Mww value for another can manufacture a difference that is an artifact of the measurement method rather than a real difference in earthquake size.

Limitations and analytical caveats

ComCat is the most authoritative public record of global seismicity in existence, but it carries structural limitations that an analyst must internalize before drawing conclusions from it.

Completeness depends on magnitude and location. The catalog is not equally complete everywhere. In well-instrumented regions like California or Japan, even very small earthquakes are detected and located; in the open ocean and in remote, poorly instrumented parts of the world, only larger events are recorded reliably. This is exactly why our slice uses a magnitude-4 floor—above that threshold the global catalog is essentially complete—but it means that any analysis crossing the threshold, or comparing event rates between a dense network and a sparse one, must account for the magnitude of completeness varying by region. A naive map of all recorded earthquakes partly reflects where the seismometers are, not only where the Earth shakes.

Magnitudes are heterogeneous, and so are depths.Because ComCat merges solutions from many networks using different magnitude scales and different methods, the magnitude column is not a single homogeneous measurement. The same earthquake can carry different magnitudes from different agencies, and an analysis that sums, averages, or thresholds magnitudes across the whole catalog without attending to magType is mixing quantities that are only approximately comparable. Depth is worse: for events located only by distant stations it is often poorly constrained or fixed at a default value, so distributions of depth in poorly instrumented regions can be artifacts of the location procedure rather than real features of the seismicity.

Solutions evolve from preliminary to reviewed. The same speed that makes the catalog operationally valuable means that an event's first published parameters are automatic and preliminary; they are later reviewed by an analyst and frequently revised—the magnitude may shift by a few tenths, the depth may be re-estimated, occasionally an event is determined to be a duplicate or a non-tectonic signal and removed. The status field distinguishes automatic from reviewed solutions. An analysis built on a snapshot taken in the hours after a major event will not match the settled catalog, and the most recent days of data always contain a higher proportion of unreviewed, revisable solutions. For research, query the reviewed catalog; for monitoring, expect change.

An earthquake's size is not its impact. The theme of this entire piece is also its central caveat: the catalog records the physics of the source—time, place, depth, size—not the human consequence. Two earthquakes with identical magnitudes can produce opposite outcomes depending on depth, on the local geology that amplifies or damps the shaking, and above all on whether anyone lives above the rupture. The catalog is the necessary input to impact assessment, but the impact itself lives in the ShakeMap, the PAGER loss estimate, and the population and building data the earthquake parameters are combined with. Treating a high-magnitude row as automatically a high-consequence event—or a low-magnitude row as automatically harmless—over-reads what the parameters alone can bear.

Held with these caveats in mind, the usgs_quakes_bulk table is a uniquely valuable resource: a global, event-resolved, time-stamped record of every significant earthquake of the past several years, keyed to the impact products that turn a rupture deep in the Earth into a number on an emergency manager's screen—the empirical foundation beneath seismic-hazard maps, building codes, and the minutes-long race between a breaking fault and the warning that follows it.

Related writing

NOAA Storm Events Database: The Federal Record Behind 50 Years of US Weather Disasters — The companion hazard catalog on the atmospheric side, recording the tornadoes, floods, and severe storms that, like earthquakes, are point-in-time natural events scored by location, magnitude, and the damage they leave behind.

FEMA Disaster Declarations: The Federal Database Behind 70 Years of US Natural Disasters — Where ComCat records the geophysical event, the FEMA declarations record the federal response to it, and a damaging shallow earthquake is one of the hazards that turns a PAGER loss estimate into a presidential disaster declaration.

USGS Wind and Solar Energy Data: The Federal Database Behind US Renewable Energy Infrastructure — The same agency that maps where the ground shakes also maps the nation's energy infrastructure, and seismic hazard is a design constraint on the turbines, substations, and solar facilities that the USGS catalogs.