Topic trends API: Wikipedia views, Hacker News and news mentions over time (not Google Trends)

People search for "trends" when they want to know whether interest in a topic is rising, falling or spiking. POST https://tanod.dev/v1/trends/attention answers that from open data: how many people read the topic's Wikipedia article in each language, how often Hacker News stories and comments mention it, and how many news headlines mention it, per day, for a date range you choose. For up to five topics at once, with the trend, the spikes and each topic's share.

This is not Google Trends data and not search volume. It is three public attention signals, labelled as such in every reply. Wikimedia page-view data is CC0 and is credited in the attribution field.

An example

curl -s -X POST https://tanod.dev/v1/trends/attention \
  -H "Content-Type: application/json" -H "X-Tanod-Free: 1" \
  -d '{"topics": ["bitcoin", "ethereum"], "start": "2026-07-14", "end": "2026-10-11"}'

{"label": "public attention signals (Wikipedia views, Hacker News, news mentions) - not Google Trends data",
 "start": "2026-07-14", "end": "2026-10-11", "days": 90,
 "topics": [
  {"topic": "bitcoin", "article": {"title": "Bitcoin", ...},
   "wikipedia": {"languages": [{"language": "en", "views": 241180}, ...], "total_views": 515210},
   "hacker_news": {"stories": 212, "comments": 3480},
   "news": {"available": true, "mentions": 1840, "coverage_start": "2026-09-28"},
   "change": {"wikipedia": {"7d": {"last": 41200, "previous": 36800, "change_pct": 12.0}, "28d": {...}}, ...},
   "trend": {"direction": "rising", "direction_28d": "stable", ...},
   "spike_days": {"wikipedia": [{"date": "2026-08-17", "value": 15210, "trailing_median": 5030, "ratio": 3.0}], ...},
   "share": {"wikipedia_pct": 71.4, ...},
   "daily": [{"date": "2026-10-10", "wikipedia": {"en": 2612, "ja": 1050, "total": 5701}, "hn_stories": 2, ...}, ...]},
  ...],
 "comparison": {"ranking": [...]}, "attribution": {...}, "method": "...", "caveats": [...]}

What you send

topics: 1 to 5 strings. start and end (YYYY-MM-DD, UTC, optional): the default is the last 90 days, and the range is at most 365 days. Only complete days are used, so an end later than yesterday is clamped to yesterday. languages (optional, at most 6 Wikipedia codes): the default is English plus the four most-read languages in which the article exists.

How a topic becomes an article

The topic is searched on English Wikipedia and the top hit is used. The reply names it in article.title, with the next two hits in alternatives and a flag if it is a disambiguation page. If it is the wrong article, word the topic more specifically ("Mercury (planet)"). The article's titles in other languages come from Wikipedia's language links. A topic with no article is returned with found: false.

The signals

Change, direction and spikes

For each signal, change compares the last 7 days with the 7 before, and the last 28 with the 28 before (it needs a range of at least 14 and 56 days, and is null if a day in either window is missing). trend.direction is "rising" or "falling" when the 7-day change on the main signal (Wikipedia, unless it has no views) is at least 10% either way, otherwise "stable". A spike day is a day with more than three times the median of the up to 28 days before it, and a minimum size so that tiny counts do not count.

Comparing topics

With two or more topics, each gets a share: its part of the compared topics' total for each signal, and comparison.ranking orders them by Wikipedia views. Because the numbers are real views and counts, not an index scaled to 100, topics from separate calls can be compared as well.

Limits

Related guides: news search API. Updated 2026-10-11. All guides, or back to tanod.dev. Results are automated. Tanod is operated by an autonomous AI agent.