Skip to main content
The Trends List endpoint supports three sort modes via sort_by. Each answers a different question. Most confusion about trend ordering comes from expecting one mode to answer another mode’s question.
sort_byThe question it answersUse it for
recommended (default)“What’s worth my attention overall?”Browsing; a balanced view of what’s hot
newest”What’s new since I last checked?”Daily/weekly catch-up on new arrivals
rising”What’s inflecting right now?”Timing: catching a wave before it peaks

Biggest is not the same as rising

rising ranks by acceleration of posting activity: is this trend’s content being created faster than its own recent baseline? It does not rank by total size. A trend with millions of views and a large, steady stream of videos is established: it tops recommended, but its curve is flat, so it sits low on rising. A small trend whose activity is compounding week over week is the one rising is built to surface. That’s the window where creating content for it puts you early. Two trend activity charts: a large steady trend that ranks first on Recommended but reads Steady on Rising, next to a small accelerating trend that reads Rising If a 6.1M-view trend appears below a 43K-view trend on rising, that is the sort working as intended: the smaller trend is accelerating harder relative to its own baseline. For “biggest overall”, use recommended.

Rising means rising now

The rising signal is anchored to a trend’s latest evidence and fades as that evidence ages. Two trends with the same climb rank very differently if one climbed this week and the other went quiet three weeks ago: Two identical climbing curves; the one whose latest video is 2 days old reads Rising +0.29 while the one quiet for 3 weeks reads roughly zero Each trend’s momentum value ranges from −1 to +1: positive = building, negative = fading, near zero = steady, too little evidence to judge, or evidence that has aged out of relevance. There is no cliff: the value decays smoothly, so a trend that was hot three weeks ago drifts down the list rather than vanishing.

Freshness follows the most recent wave

freshness_score (0–1) measures how recent a trend’s content activity is, weighted toward its newest wave of videos. It is a recency level, independent of size. A trend can be small and fresh, or huge and stale. Trends often resurface: a format that had early buzz and then a strong second wave reads as fresh again, because the score follows the recent wave rather than averaging over the trend’s whole lifetime. A trend with early buzz plus a new second wave scoring 0.62 active, next to a trend with early buzz only scoring 0.18 stale timeliness_status bands the same signal into recent / active / stale / cold if you prefer labels over thresholds.
If you’re rendering your own “fresh” or “hot” badge, decide which question it should answer. “Recently active content” → threshold on freshness_score (or use timeliness_status). “Act on this now” → threshold on momentum (e.g. ≥ 0.1). “New to the catalog” → sort by newest and compare emerged_at against your last visit. Mixing these produces badges that feel wrong on big-but-established trends.

Field quick reference

FieldMeaning
freshness_score0–1 recency of content activity, weighted toward the newest wave. Size-blind.
timeliness_statusThe same signal as labels: recent, active, stale, cold.
momentum−1..+1 trajectory of posting activity, decaying as the latest evidence ages.
emerged_atWhen the trend first accumulated enough confirmed videos to count as a real trend in our catalog. This is when we confirmed it; for formats where we backfill older example videos, it can be later than the oldest video you see on the trend.

Which sort for which workflow

  • “I check in every morning”: use newest, and stop at the first trend you recognize from yesterday.
  • “I plan content weekly”: use recommended, filtered to your categories.
  • “I want to catch waves early”: use rising, and prioritize entries that are also recent/active on timeliness_status.

Legacy sort values

Older sort_by values keep working forever; they resolve to their closest current equivalent instead of erroring:
Value sentResolves toNotes
momentumrisingRenamed; identical behavior.
timelinessnewestRetired as a distinct sort in July 2026. For a freshness-ordered view, use newest with the timeliness_status=recent filter, or order client-side by freshness_score.
emerging(unchanged)Still accepted as its own ordering, by emerged_at. For most catch-up workflows newest is the better fit.