The Civic Stress Index
A percentile-against-history measure of civic stress, not a forecast. Being rebuilt from scratch after its first version failed basic empirical validation.
What this is trying to measure
The Civic Stress Index is not a prediction of civil unrest, and it isn’t even a forecast in the way a weather forecast is — it doesn’t try to say what tomorrow holds. It’s closer to a weather record: what is today’s reading, in the context of the full history of readings, compared to the average? A percentile against history, not a prediction and not a verdict.
Concretely, that means: for every real indicator we track, we ask where today’s value falls in the complete empirical distribution of that same indicator’s history — not whether it crosses some hand-picked danger threshold, and not whether it matches a target answer for a handful of remembered crisis months. “Today is more extreme than X% of history” is a question we can answer honestly with enough real historical data. “Today means unrest is coming” is not a question this instrument tries to answer at all.
The project runs three independent instruments, each measured against its own historical baseline, always shown together — a spectrum from mechanical conditions to institutional state to collective behavior:
- CSSI, the Civic Supply Stress Index — a fast, deliberately mechanical reading (12-hour cadence) of directly-measured market numbers: fuel prices, mortgage rates, rent levels. No interpretation involved, nothing coded or classified — just what things cost right now, compared to their own history.
- CSI, the Civic Stress Index proper — the middle instrument. A monthly reading of slower-moving economic, institutional, and social data: trust in institutions, polarization, economic aggregates. The stress state, not the raw conditions or the response to them.
- CMI, the Civic Mobility Index — a daily reading of collective action itself: real protest and mobilization activity, compared to its own history. Not a claim that mobilization causes stress in the other two instruments — a separate, honest measurement of what people are actually doing, on its own terms.
None of the three feeds a score into another. They’re three different kinds of measurement — mechanical, institutional, behavioral — not one instrument computed from the others. That structure isn’t arbitrary: it follows Gurr’s own framework directly, which the theoretical grounding below is drawn from — material conditions, mediated by institutional trust, expressed as collective action.
The theoretical grounding we’re drawing on is real, established research: Gurr’s relative deprivation theory (Why Men Rebel, 1970) — the finding that perceived wage-price gaps predict unrest better than objective economic conditions; the Political Instability Task Force and Goldstone et al.’s work on regime type and state capacity as instability predictors; NBER and Federal Reserve research on purchasing-power erosion as a driver of economic stress distinct from headline inflation; and Census Household Pulse Survey data validating subjective economic stress as a measurable signal in its own right.
That’s the goal. What follows is an honest account of why the first attempt at building it failed.
The first attempt was archived
The first version shipped 7 formulas with credible-sounding statistical names, presented as validated. They weren’t. When tested against real historical data, they couldn’t distinguish COVID’s onset, the largest protest movement in US history, or the January 6th Capitol riot from an ordinary quiet month. We’ve archived all of it.
Read the full retrospective: “Foolishly Naive Starting Points, Fundamental Flaws”
What survives from the first attempt: real data infrastructure — FRED, BLS, GDELT, and NewsAPI integration, all fetching genuine daily and monthly indicators rather than fabricated placeholders. That foundation is sound. The scoring methodology is being redesigned on top of it, this time checked against its own claims before anything ships.
There is no dashboard here yet. Check back as the rebuild progresses.