trending endpoint returns the top terms driving conversation on a topic or watchlist right now, ranked by a rolling z-score against a 14-day baseline. It is the fastest way to answer “what is everyone actually talking about” in one call, and it is available on every tier — including the free Watch trial.
Trending answers a different question from Alerts and Narrative:
Use trending as the state view — a tile on a dashboard, a feed in a wallboard, a row in an exec digest. Use alerts when you need a push-shaped, machine-routable event.
The endpoints
Both return the same JSON shape. Code written for one works on the other — the only difference is the scope identifier in the response (
topic vs. watchlist_id).
The response envelope
Field guide
score is not comparable across topics — global and cyber have different baselines. delta_24h is comparable across snapshots within the same topic.
Query parameters
A request for
limit=10000&hours=720 on a Watch key returns at most 20 terms over 24h, with query_window.effective_hours: 24 so your UI knows what it actually got.
Calling it
Reading the score
score is a rolling z-score — how many standard deviations above the 14-day baseline this term’s volume sits. Rough guidance:
Combine
score with delta_24h to distinguish accelerating from decaying stories:
- High
score+ highdelta_24h→ story breaking now - High
score+ low or negativedelta_24h→ story peaked, decaying - Low
score+ highdelta_24h→ emerging, worth watching
Trending on a watchlist
Same shape, scoped to your watchlist’s terms. Useful when the top terms inside your brand or threat scope diverge from the topic baseline.earnings accelerating fast (delta_24h: 3.7) on a brand watchlist is the kind of signal a comms team wants to see before the quarterly press cycle. See Topics and watchlists for watchlist setup.
Cadence and freshness
Snapshots refresh every few minutes. Polling faster than the snapshot cadence returns the same payload — burns RPM for nothing.
Below 15-second freshness on trending you’re chasing snapshot publication latency, not the data — there’s nothing newer to fetch. For sub-second event delivery, use Alerts via webhook.
Always read
X-RateLimit-Remaining and back off when it drops below 20% of X-RateLimit-Limit. Full pattern: Rate limits.
Common patterns
Filter out predictable churn
Some terms appear permanently elevated on certain topics (bitcoin on finance, russia on disinfo). Mute them client-side or with exclude_terms:
Track new entrants
Compare consecutive snapshots and surface terms that just appeared in the top N:Cross-topic comparison
Pull trending onglobal, cyber, finance, disinfo in parallel for a one-page situational view. Score is not comparable across topics, but presence and rank are. See Use cases recipe 5.
Snapshots and reproducibility
Every response carriessnapshot_id. Pin to a snapshot when you need to reproduce an analysis or align trending with a specific narrative or alert state. Snapshots are retained for the same window your tier allows on history depth (see Tiers — history depth caps).
410 snapshot_expired envelope means the snapshot rolled out of retention — refetch with latest. See Errors.
Operational guidance
- Don’t compare
scoreacross topics. Different baselines, different volume regimes.rankanddelta_24hare the cross-topic-safe fields. - Cache by
snapshot_id. Samesnapshot_id= same payload. Re-fetch only when you suspect a new snapshot exists (every few minutes). - Pair trending with narrative on dashboards: the term list is the spike, the narrative is the story. One without the other under-delivers.
- For watchlists, expect lower scores. A watchlist filters the universe — the top term in your brand scope may have a
scoreof 80 whileglobalhas terms above 800. The math is the same; the volume is smaller. - Trending counts against RPM like any other call. Don’t poll under the snapshot cadence.
What’s not trending
Trending is the ranked-state view. Everything else is volume, content, or events.
Last reviewed: 2026-05-19. API version 1.2.8.