How much protest is being reported, adjusted for how much is being reported at all.
Raw event counts rise and fall with news volume. The index divides protest-coded events by every event GDELT coded in the same files, so a busy news day does not look like a surge in unrest.
Four separate measures, last 30 days
We report these side by side instead of blending them into one score. A spike in reporting volume can mean one event drew a lot of coverage, not that more people protested.
- Complete day
- Provisional or incomplete (2)
Observed events
—Deduplicated event clusters first seen each day.
Reporting volume
—Source reports linked to those events. Reflects media attention, not protest size.
Geographic coverage
—Distinct countries with at least one observed event.
Data completeness
53% avgShare of the day’s 96 GDELT source files we processed.
Daily averages use complete days only. Today is always provisional until its last source file is processed.
Event categories
Observed events by type, last 30 days.
- Demonstration154 · 50%
- Civil unrest62 · 20%
- Protest62 · 20%
- Political rally20 · 6%
- Strike7 · 2%
- Public movement5 · 2%
Country activity trends
Daily event rate in the last 7 days vs. earlier observed days. Rising means at least 1.5× the earlier rate.
Country trends need at least 7 earlier observed days and 10 events per country. We currently have 0 earlier days and 2 recent. Event counts are shown below until then.
- United States102 recent · 0 earlier—Insufficient data
- India47 recent · 0 earlier—Insufficient data
- France36 recent · 0 earlier—Insufficient data
- Albania10 recent · 0 earlier—Insufficient data
- Italy10 recent · 0 earlier—Insufficient data
- Canada9 recent · 0 earlier—Insufficient data
- United Kingdom7 recent · 0 earlier—Insufficient data
- Portugal7 recent · 0 earlier—Insufficient data
- Belgium7 recent · 0 earlier—Insufficient data
- Australia6 recent · 0 earlier—Insufficient data
- Israel6 recent · 0 earlier—Insufficient data
- Mexico6 recent · 0 earlier—Insufficient data
- China5 recent · 0 earlier—Insufficient data
- Netherlands4 recent · 0 earlier—Insufficient data
- Guyana3 recent · 0 earlier—Insufficient data
- Poland3 recent · 0 earlier—Insufficient data
- Ireland3 recent · 0 earlier—Insufficient data
- Tunisia3 recent · 0 earlier—Insufficient data
- Germany3 recent · 0 earlier—Insufficient data
- Iran3 recent · 0 earlier—Insufficient data
Daily intensity
Protest events per 1,000 GDELT-coded events. Faded bars had under 25% of the day's source files processed and are excluded from the index.
Share of reported activity, last 7 days
Countries with fewer than 3 events are omitted. Share reflects reporting volume, not the size or severity of protests.
| Country | Events | Locations | Outlets | Share |
|---|---|---|---|---|
| United States | 102 | 82 | 149 | 32.9% |
| India | 47 | 25 | 88 | 15.2% |
| France | 36 | 15 | 143 | 11.6% |
| Albania | 10 | 3 | 25 | 3.2% |
| Italy | 10 | 5 | 26 | 3.2% |
| Canada | 9 | 8 | 9 | 2.9% |
| Belgium | 7 | 2 | 16 | 2.3% |
| Portugal | 7 | 3 | 18 | 2.3% |
| United Kingdom | 7 | 5 | 17 | 2.3% |
| Australia | 6 | 5 | 8 | 1.9% |
| Israel | 6 | 6 | 8 | 1.9% |
| Mexico | 6 | 5 | 6 | 1.9% |
| China | 5 | 3 | 6 | 1.6% |
| Netherlands | 4 | 2 | 4 | 1.3% |
| Germany | 3 | 3 | 3 | 1.0% |
| Guyana | 3 | 3 | 3 | 1.0% |
| Iran | 3 | 1 | 6 | 1.0% |
| Ireland | 3 | 2 | 3 | 1.0% |
| Poland | 3 | 2 | 3 | 1.0% |
| Tunisia | 3 | 2 | 6 | 1.0% |
Formula
intensity(day) = 1000 × protest_events(day) / gdelt_coded_events(day)
index = 100 × mean(intensity, last 7 days) / mean(intensity, earlier days)
- A day counts only if at least 25% of its 96 GDELT 15-minute files were processed.
- The index requires at least 3 sufficient days and 30 events, otherwise it reads “Insufficient data”.
- An event is a deduplicated cluster of reports (same place, category, and day), not an individual article.
- Today is always provisional. Days with under 25% of source files are incomplete and excluded; days between that and 95% are shown faded as partial.
- No historical values are estimated or backfilled with models. Charts begin when ingestion began.
- This measures reported activity in GDELT-monitored media. It is not a measure of participants, severity, or political significance. Read the full methodology.