Vilokana
Sign In
← Back to Vilokana

Methodology

Last updated 16 October 2026

This page explains how Vilokana gets its numbers. It describes what the system does today, including where it is weak.

We would rather you check us than trust us.

01The short version

Vilokana shows how news outlets frame stories. Every lean, score and label you see here is an estimate made by software. None of it is a verdict on a journalist, an outlet or a person.

We do not check whether a story is true. A lean score is about framing, not accuracy.

We read public headlines and summaries, and we link back to the original article wherever we show one. We do not republish articles.

02Where the articles come from

Right now we track 4 outlets: NDTV, Scroll.in, The Hindu and The Indian Express.

A scraper visits each outlet's public front page and saves every article's headline, short summary, link, picture and publication time. We aim to check each outlet about every 30 minutes, but gaps happen, and an outlet can go quiet when its website changes. So the articles we hold are not a full record of what each outlet publishes.

Today every outlet we track is an English-language news website. We do not yet cover regional-language outlets, television, radio or social media.

03Lean: how we estimate it

For each article, an AI model (Claude Haiku, a small model from Anthropic) reads the outlet name, the headline (first 200 characters) and the summary (first 500 characters). It does not read the full article.

It answers with a lean (Left, Centre or Right), a confidence from 0 to 1, a score for each of the three leans, and a one-sentence reason. It is asked to weigh word choice and framing, which voices are centred or left out, policy positions that are stated or implied, and how the piece sits against the known Indian political spectrum.

The same step gives each article one topic, and notes which sectors it may help or hurt when that is clear. Sectors are left out when the model is unsure.

A headline and a summary are thin evidence. The model can be wrong, and the same article could score a little differently if it were scored again. Left, Centre and Right are blunt labels for a political spectrum with many more than three sides. If the model gives no usable answer, the article has no score. We leave it blank. We do not guess.

04Pulse: how stories are grouped and shown

Outlets report the same event under different headlines. We join two articles into one story when they were published within 72 hours of each other and their headlines share most of their meaningful words. Common words like "the" or "says" are ignored.

When the headlines only partly match, an AI model is asked one narrow question: do these report the same specific event? If it is not confident, or it fails, the article starts a new story.

A story appears in Pulse's story lists only when at least two outlets have reported it. Today's Briefing is different: it lists the ten most recent scored articles, each on its own.

The lean bar on a story is the average of the scores of its articles, so it only reflects the articles that were scored. The outlet lean card shows, for each outlet, the average of its scored articles from the last 7 days. An outlet with no scored articles in that window is shown without a lean. It describes the articles we collected, not the outlet's editorial line.

Grouping is automatic. It will sometimes join two different stories, or split one that is the same.

05Decode: reading one article in full

Decode works differently. You paste a link, we fetch the page, and the model reads the article text itself (up to the first 12,000 characters).

It is told to judge only the text in front of it, and not to use what it knows about the outlet, the author or the topic. So a Decode result is about this article, not about the outlet's reputation.

You get a lean, a confidence, a short explanation, and two to five findings that point to wording, sourcing or omissions in the text. If the text is thin, the model is told to say so and lower its confidence. If we cannot read the page at all, we say that instead of guessing.

Every analysis costs us real money, so Decode needs you to sign in and has a daily limit for each account. We keep a saved copy of each result so a repeat of the same link is quick. The Privacy page says what we store.

06Silence: where few outlets are reporting

Silence looks at the 500 most recent articles that we could tie to an Indian state. It counts how many different outlets reported on each state. When two or fewer did, we flag that state and show its latest article.

This is a simple count. It does not group by topic yet, and it says nothing about why an outlet stayed quiet. With only a few outlets tracked, a state can show up here because we track few outlets, not because the press ignored it.

07Ground: how we tie articles to states

We find a state by looking for its name, its cities and its well-known political terms in the headline and summary. The first state that matches wins. An article that mentions none of them gets no state. This is keyword matching, so it makes mistakes: for example when a city is mentioned in passing, or when a story spans more than one state.

On the Ground map, the fill shows how many articles we tagged to each state, on a compressed scale so smaller states stay visible. The border shows which way that state's scored coverage leans.

08Chain: who owns what

Each outlet's page names the group we list as its owner, and Chain is meant to map those groups. This information is entered by us, and we are still adding a named public source and a date to each claim. Until then, check an ownership claim against company filings before you rely on it.

09What this cannot tell you

It cannot tell you whether a story is true or fair, and it cannot see what an outlet chose not to publish. It cannot speak for outlets we do not track.

With a small set of outlets and a small number of scored articles, differences between outlets can come from small samples, not real editorial differences.

10Corrections

If a score, a story grouping, a state tag or an owner name looks wrong, email contact@vilokana.com with the link. We would rather fix it than defend it.