> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gdeltcloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Event metric reference

> What each event metric measures, what you can do with it, and how it is computed.

Every event we code carries a set of numbers. These pages are generated from the definitions the coder and the scaler both import, so the formula below is the formula that produced the value in your response.

This page is the index: the design rule, `significance` in full, and one summary per metric. Each of the four scored metrics has its own page with its sub-factors, its `NULL` rule and what it does not claim. What applies to all four is on [Limits and error bars](/metrics/limits).

Metric contract version: `v2-2026-07-24`, carried on each event as `metric_version`. Events coded before it carry an empty value and were scored on an earlier scale — do not compare the two.

## The design rule

| Rule                               | What it means for you                                                                                                                          |
| ---------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| **Reconstructable**                | Every value is reproducible by a third party from the sub-factors plus the published formula. If you cannot reproduce it, that is a bug in us. |
| **`NULL`, never a fabricated `0`** | A missing observable is UNKNOWN. A `0` asserts a measurement somebody made. Each metric states its own `NULL` condition on its page.           |
| **Rubric-based, not empirical**    | The cited frameworks give each rubric its structure and vocabulary. They do not make the values empirical measurements.                        |

## `significance`

**The one number that ranks events.**

The default sort on `GET /api/v2/events`, and the only metric intended to compare events across domains. It is a weighted blend, renormalized by the maximum its family can actually reach — without that denominator a maxed global pandemic is structurally out-ranked by any moderately lethal clash.

| Term                 | Weight | Applies to                                           | What it reads                                                                   |
| -------------------- | ------ | ---------------------------------------------------- | ------------------------------------------------------------------------------- |
| `goldstein`          | 0.25   | `conflict`, `cameoplus_political`                    | abs(goldstein)/10 — CAMEO cooperation/conflict intensity, sign discarded        |
| `magnitude`          | 0.2    | `cameoplus_political`, `cameoplus_other`             | magnitude/10 — within-domain intensity; NULL means unknown and drops the weight |
| `systemic`           | 0.15   | `cameoplus_political`, `cameoplus_other`             | systemic\_importance                                                            |
| `propagation`        | 0.1    | `cameoplus_political`, `cameoplus_other`             | propagation\_potential                                                          |
| `market`             | 0.1    | `cameoplus_political`, `cameoplus_other`             | market\_sensitivity                                                             |
| `lethality`          | 0.55   | `conflict`                                           | log1p(fatalities)/log(101) — conflict only; CAMEO+ has no cd row                |
| `civilian_targeting` | 0.1    | `conflict`                                           | a deliberate attack on civilians outranks an equally lethal combatant clash     |
| `article_count`      | 0.05   | `conflict`, `cameoplus_political`, `cameoplus_other` | log1p(articles)/log(101) — attention                                            |
| `confidence`         | 0.05   | `conflict`, `cameoplus_political`, `cameoplus_other` | the coder's own confidence                                                      |

**Reachable maximum per family** — the renormalization denominator, derived from the weights above.

| Family                | Max raw blend |
| --------------------- | ------------- |
| `conflict`            | 1             |
| `cameoplus_political` | 0.9           |
| `cameoplus_other`     | 0.65          |

A term that cannot fire for a family contributes nothing **and** its weight leaves that family's denominator. The one exception worth knowing: when `magnitude` is unmeasured its term and its weight both drop, which is arithmetically identical to imputing the other metrics into the magnitude slot. See [what `magnitude` does not claim](/reference/metrics/magnitude).

## `magnitude`

Intensity WITHIN this event's own domain (0-10).

Range `0`–`10`, published for the **cameoplus** family only. Filter with `magnitude_min` / `magnitude_max`.

$$
\text{magnitude} =
\begin{cases}
0 & \text{conflict},\; d = 0 \\[4pt]
\min\!\bigl(10,\; 2 + 2\log_{10} d\bigr) & \text{conflict},\; d > 0 \\[4pt]
\operatorname{clamp}(t,\, 0,\, 10) & \text{hazard, verbal, economic}
\end{cases}
$$

[What it is for, the sub-factors the coder scores, when it is `NULL` →](/reference/metrics/magnitude)

## `systemic_importance`

How much the wider system DEPENDS ON THE NODE this event touches (Basel G-SIB style), 0-1.

Range `0`–`1`, published for the **cameoplus** family only. Filter with `systemic_importance_min` / `systemic_importance_max`.

$$
\text{systemic\_importance} = \frac{s + i + r}{3}
$$

[What it is for, the sub-factors the coder scores, when it is `NULL` →](/reference/metrics/systemic-importance)

## `propagation_potential`

The CONDITIONS that let a shock travel, 0-1.

Range `0`–`1`, published for the **cameoplus** family only. Filter with `propagation_potential_min` / `propagation_potential_max`.

$$
\text{propagation\_potential} =
\begin{cases}
0 & c \le 0.05 \\[4pt]
\dfrac{c + k + b + p + (1 - m)}{5} & c > 0.05
\end{cases}
$$

[What it is for, the sub-factors the coder scores, when it is `NULL` →](/reference/metrics/propagation-potential)

## `market_sensitivity`

How much market-relevant information this carries for a REASONABLE INVESTOR (the securities-disclosure materiality test) — NOT a predicted price move.

Range `0`–`1`, published for the **cameoplus** family only. Filter with `market_sensitivity_min` / `market_sensitivity_max`.

$$
\text{market\_sensitivity} =
\begin{cases}
0 & e \le 0.05 \\[4pt]
\dfrac{e + b}{2} & e > 0.05
\end{cases}
$$

[What it is for, the sub-factors the coder scores, when it is `NULL` →](/reference/metrics/market-sensitivity)

## Why some metrics are exactly 0

Two metrics can be gated to exactly 0 regardless of their other sub-factors: `propagation_potential` when `channel ≤ 0.05`, and `market_sensitivity` when `claim_exposure ≤ 0.05`. Read that 0 as a value, not a missing reading: it says the event is self-contained, or that nothing traded is exposed, however dramatic the event is. Unknown is represented by the metric being absent, never by a 0.

## Every filterable metric field

`GET /api/v2/events` accepts a `_min`/`_max` pair for each of the **8** fields below. Four of them are full metric definitions with a published formula, each on its own page; the rest are stored properties of the coded event.

| Field                   | Range      | Family scope     | Full definition                                                    |
| ----------------------- | ---------- | ---------------- | ------------------------------------------------------------------ |
| `significance`          | `0`–`1`    | both families    | —                                                                  |
| `confidence`            | `0`–`1`    | both families    | —                                                                  |
| `goldstein_scale`       | `-10`–`10` | both families    | —                                                                  |
| `magnitude`             | `0`–`10`   | `cameoplus` only | [magnitude](/reference/metrics/magnitude)                          |
| `systemic_importance`   | `0`–`1`    | `cameoplus` only | [systemic\_importance](/reference/metrics/systemic-importance)     |
| `propagation_potential` | `0`–`1`    | `cameoplus` only | [propagation\_potential](/reference/metrics/propagation-potential) |
| `market_sensitivity`    | `0`–`1`    | `cameoplus` only | [market\_sensitivity](/reference/metrics/market-sensitivity)       |
| `geo_precision`         | `1`–`3`    | both families    | —                                                                  |

### Stored fields

These carry no published formula — they are properties the coder stamped on the event, filterable on the same `_min`/`_max` pattern.

#### `confidence`

Confidence — range `0`–`1`, published for both families.

#### `goldstein_scale`

Goldstein scale — range `-10`–`10`, published for both families.

#### `geo_precision`

Geo precision — range `1`–`3`, published for both families.
