← All methodology
Methodology · Narrative Maturity Score

Where is each narrative sitting on the cycle?

A stage label and 0 to 100 maturity index for every sector. Tells you which narratives are early, which are working, which are running out of fuel.

The five stages

0 - 15
Dormant
15 - 35
Awakening
35 - 65
Building
65 - 85
Mainstream
85 - 100
Cooling

Higher index = further along the lifecycle = closer to a rotation point. The bands are non-overlapping so the index is monotonic across the cycle.

What each stage means

  • Dormant: no meaningful momentum on either window. Pre-narrative state.
  • Awakening: short-term momentum building, weekly action still narrow. Early movers entering.
  • Building: broad participation, momentum confirming. The sweet spot of the cycle.
  • Mainstream: weekly action strong but short-term decelerating. Late majority territory.
  • Cooling: short-term momentum negative, breadth weakening. Rotation likely.

Inputs (v1)

We use the price-momentum signals already computed for sector heat scoring:

  • Average 24h % price change across the sector's tokens.
  • Average 7d % price change.
  • The existing 0 to 100 sector heat score.
  • Token count classified into the sector.

v2 will layer in 30-day momentum, on-chain TVL deltas, social mindshare, developer activity, and funding-round signals for a richer adoption-curve fit.

Classification logic

Heuristics applied in order. first match wins:

1. tokenCount === 0 → Dormant (avoids fake stages from sparse sectors) 2. avg24h ≤ -3 AND avg7d ≤ 0 → Cooling (short-term rolled over with weekly confirmation) 3. avg7d ≤ -5 AND avg24h ≤ +1 → Cooling (weekly downtrend, no short-term recovery) 4. |avg24h| < 1.5 AND |avg7d| < 2 → Dormant (both windows essentially flat) 5. avg24h > +1.5 AND avg7d ≤ +3 → Awakening (short-term wake-up, weekly still narrow) 6. avg7d ≥ +12 AND avg24h < avg7d / 4 → Mainstream (7d very strong but 24h decelerating) 7. avg24h > +1.5 AND avg7d > +3 → Building (both positive and aligned) 8. otherwise → Awakening (conservative default)

Within each stage's band, the index is positioned by how strongly the sector expresses the stage's defining signal, stabilised by a small nudge from the existing heat score.

What this score does NOT do

  • Issue buy/sell signals for any specific token.
  • Predict when a sector will rotate. We tell you the stage; rotation timing is your call.
  • Account for off-chain catalysts directly (regs, ETF launches, hacks). these shift the underlying price data which feeds the score, but with lag.
  • Get backtested against historical retrospective labels yet. That backtest is a v2 task.
Want the dev-facing deep dive?
Full technical spec with formulas + threshold values lives in the repo at docs/methodology/narrative-maturity.md.
View on GitHub →