4ort / Docs / Trend intelligence
Methodology
Applies to /v1/why-trending, /v1/trend/*, the MCP tools and Marketer Alerts
Every number 4ort serves about attention is computed offline from public sources, stored, and read back by the request. No model writes a number or a reason at request time. This page states what each metric is, which source it comes from, and how late that source runs.
1. Attention: Wikipedia pageviews
Source: Wikimedia's hourly pageview dumps (dumps.wikimedia.org, CC0). Each Wikipedia article view is attributed to the knowledge-graph entity whose sitelink it is. We ingest the English, German, French, Spanish, Italian, Japanese, Russian and Portuguese editions.
- Views in the hour are the raw count for the latest complete hour. The ranking is this number, unchanged.
- Baseline is the entity's mean hourly views over the previous 168 hours (7 days), same editions. Delta is views ÷ baseline − 1, as a percentage.
- Rising ranks by delta, among entities with at least 20 views in the hour, so a 2-view article cannot top the list.
- Language editions are not countries. A German-edition view means a reader of German Wikipedia, wherever they are. We never label an edition as reader geography.
2. Category trending
A category is a rule over Wikidata typing we already hold: the entity's class (P31) and, for people, its occupation closure (P106). We do not hand-label entities. A person whose occupations include actor and singer appears in both Actors and Musicians. Each refresh takes the 20,000 most-viewed entities of the latest hour, keeps those a category's rule admits, and ranks them by views (top 50) and by delta (top 25 rising).
| Category | Wikidata rule |
|---|---|
| Musicians & singers | human · occupation: musician, rapper, singer |
| Actors | human · occupation: actor |
| Athletes | human · occupation: athlete |
| Politicians | human · occupation: politician |
| Business leaders | human · occupation: business_executive, chief_executive_officer, entrepreneur |
| Online creators | human · occupation: content_creator, influencer, internet_celebrity, podcaster, streamer, vlogger, youtuber |
| Writers & journalists | human · occupation: journalist, writer |
| Comedians & presenters | human · occupation: comedian, television_presenter |
| Films | animated_film, anime_film, film, film_project, television_film |
| TV shows | animated_television_series, anime_television_series, miniseries, television_program, television_series, television_series_season |
| Albums & songs | album, musical_work_composition, single, song |
| Bands & groups | boy_band, girl_group, musical_duo, musical_group, rock_band |
| Video games | video_game, video_game_series |
| Books, manga & comics | comics_character, light_novel_series, literary_work, manga_series, novel_series, written_work |
| Media franchises | film_series, media_franchise |
| Companies | animation_studio, automobile_manufacturer, business, company, enterprise, film_production_company, public_company, television_network, video_game_developer |
| Brands & products | aircraft_family, aircraft_model, automobile_model, automobile_model_series, brand, electronic_device_model, product_model, trademark |
| Websites & apps | mobile_app, online_service, social_networking_service, software, website, youtube_channel |
| Sports teams | american_football_team, association_football_club, baseball_team, basketball_team, ice_hockey_team, men_s_national_association_football_team, sports_club |
| Political parties | political_party |
| Universities | private_university, public_university, research_university, university |
| Airlines | airline |
| Sports events & seasons | baseball_competition, national_basketball_association_draft, recurring_sporting_event, sports_competition, sports_season, super_bowl |
| Elections | brazilian_presidential_election, general_election, gubernatorial_election, public_election, united_states_presidential_election |
| Countries | commonwealth_realm, country, republic, sovereign_state |
| Cities | big_city, capital_city, city, city_in_the_united_states |
Excluded everywhere: adult entities (one shared safety check), Wikimedia furniture (lists, disambiguation pages, categories) and entities our ranking prior marks unrankable.
3. Why it is trending
Source: the GDELT Project's Global Knowledge Graph (GKG 2.1), every 15 minutes. For each trending entity we search recent GKG headlines (72 hours), accept a headline only when the entity's full label appears in it and its KG identity wins against every other entity sharing that name (distinguishing description words and linked entities from its Wikidata claims). Ties stay unresolved. A brief shows three to five accepted headlines.
- The reason is the first accepted headline, quoted. It is evidence of coverage, not proof of cause.
- seen_at is when GDELT discovered the article, not when it was published. Where we measured a publication time from the publisher's page we show it; otherwise it is null and labelled as not supplied.
- why_status is
newswhen at least one headline was accepted, andorganicwhen attention moved and none was. An organic brief reads "Organic surge: attention is climbing with no single headline yet; likely driven by an upcoming or developing event" (or "Organic interest" when attention is not above its baseline). It names no cause and does not claim there is none.
4. Share of voice and news volume
A mention is a GKG document, discovered in the window, whose GDELT-extracted persons or organisations (or title phrases) contain the entity's name or one of its distinctive English aliases (two or more words, or six or more letters) as a whole phrase. GDELT sometimes joins adjacent names ("openai sam altman"), so the phrase may sit inside a longer extracted name. Headlines that name an entity GDELT did not extract are not counted, which makes these counts conservative. It is a name match on GDELT's own extraction, not an identity resolution: two people called John Anderson share mentions. Where another entity with at least 500 monthly views shares the name, the response sets ambiguous_name: true.
Share of voice = an entity's mentions ÷ the sum of mentions across the compared set (your watchlist, the entities you name, or a category's top entities), same window. The shift is the change in percentage points against the previous equal window. An all-zero set has no shares (null), never zero shares.
Counts start when an entity is first tracked (trending pools, categories, watchlists, or any entity requested through the API) and are backfilled 72 hours from that moment, because that is the window of GKG headlines we hold.
5. Share of attention (only 4ort measures this)
Share of attention = an entity's Wikipedia pageviews ÷ the sum across the same compared set, same window and editions. News coverage measures what publishers wrote; attention measures what readers looked up. They often disagree, and the disagreement is the insight.
6. Tone
Source: GDELT GKG field V1.5Tone for each mentioning document: positive-word score minus negative-word score, as a share of all words, so the range is −100 to +100 and most documents sit between −10 and +10. We report the mean over toned mentions in the window, the mean positive and negative scores, the number of toned mentions, and the shift against the previous window. A mean over fewer than ten documents is noisy; alerts require at least ten in both windows.
7. Alerts
Marketer Alerts evaluates each watchlist once per new pageview hour and fires only on a change: the transition from "condition false" to "condition true", outside a cooldown (default 6 hours), above volume floors. A new watchlist's first evaluation sets the baseline silently. Rules and defaults:
| Rule | Fires when |
|---|---|
| Attention spike | views in the hour ≥ 50 and ≥ 100% above baseline |
| News surge | ≥ 5 mentions in 6 hours at ≥ 3× the prior 66-hour rate |
| Share-of-voice shift | the entity's 24-hour share moved ≥ 10 points, with ≥ 20 mentions across the watchlist |
| Tone shift | 24-hour mean tone moved ≥ 2.0, with ≥ 10 toned mentions in each window |
Each alert carries the evidence block, the numbers it was judged on and its source hour. For an alert, a headline counts as a likely driver only if GDELT saw it no earlier than 6 hours before the alert's pageview hour; older coverage is background. With no such headline the alert is labelled organic. For 24 hours after an organic alert we re-check the news every hour, and the first time a headline matches the same entity we send one follow-up, "Update: likely driver found", linked to the first alert in the history. Alert history is kept 90 days.
8. Source lag and cadence
| Stage | Cadence | Typical lag |
|---|---|---|
| Wikimedia hourly pageviews | hourly | published 1 to 3 hours after the hour ends; our ingest adds up to 1 hour |
| GDELT GKG headlines and tone | every 15 minutes | 15 to 45 minutes after discovery |
| Category, share and tone build | hourly, at :48 | minutes after the pageview hour lands |
| Alert evaluation and delivery | every 15 minutes, acting on each new build | within 15 minutes of the build |
The live clocks are on Data freshness. Every API response carries a freshness block with the same values.
9. Retention
Hourly pageviews: 8 days. Daily pageviews: since 27 April 2026. Per-entity news hours: 400 days from first tracking. Per-document tone: 96 hours. Alert history: 90 days.
Sources and licences: Data usage & source rights.