Methodology
Last updated 3 November 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 25 outlets: Business Today, Daily Excelsior, DT Next, EastMojo, Free Press Journal, Greater Kashmir, Hindustan Times, India Today, India TV, Kerala Kaumudi, Lokmat Times, News9 Live, OdishaTV, Outlook India, Republic World, Scroll.in, Sentinel Assam, The Hindu, The Indian Express, The New Indian Express, The Pioneer, The Statesman, The Tribune, ThePrint and Times of India.
Paused: NDTV. We stopped collecting it, so older articles stay visible and nothing new is added. We pause an outlet when its website refuses automated readers that say who they are. We do not disguise ours.
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.
Before visiting an outlet, the scraper reads its robots.txt file and skips any page the outlet asks automated visitors not to fetch. If that file cannot be read, we fetch nothing from that outlet until it can.
If an outlet's site answers us with a refusal (HTTP 403 or 429), we leave it alone for an hour, then two, four and at most six hours, and start again from the beginning the first time it answers normally. At the time of writing, ThePrint refuses us often, so its coverage here has gaps.
Some outlets, on every side of the political spectrum, block automated visitors or publish in a way our scraper cannot read. We leave those out. So the outlets we track are not a balanced sample of Indian news, and an outlet's lean here is only a comparison between the outlets we can read.
Today we read only English-language news websites. Several outlets here are regional papers, and some also run television channels or editions in other languages; we read only their English websites. We do not yet cover regional-language websites, television broadcasts, 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 told what the three words mean here, in these words:
Left. The wording or framing takes the side of opposition parties, minorities, labour, welfare, civil-liberties or secular-liberal positions, or attacks the government or the ruling party in loaded terms.
Centre. The text reports what happened in plain wording, with claims attributed to named sources, and does not take a side. Include pieces that quote several sides.
Right. The wording or framing takes the side of the government or the ruling party, nationalist or Hindu-cultural positions, or law-and-order and market-first positions, or attacks the opposition or liberal positions in loaded terms.
When the headline and summary are too short or too procedural to show any framing (a match score, a weather forecast, a price), it is told to answer Centre with a confidence of 0.5 or lower and say so. It is also told not to guess a lean from an outlet's reputation, and that a Left or Right answer must quote the word or phrase that drives it. It does not always do that: in our test, 10 of its 15 Left or Right answers quoted words. These three meanings are a simplification of a political spectrum with many more than three sides.
Lean scores saved before 26 October 2026 came from an earlier, vaguer instruction (word choice and framing, which voices are centred or left out, policy positions, and how the piece sits against the known Indian political spectrum). We have not re-scored them, so an outlet's 7-day average can mix both for a few days.
The same step files each article under one of twenty-seven topics. Power and policy: politics (parties and leaders), elections (campaigns, polls, results, voter rolls), governance (Cabinet decisions, schemes, laws, rules, government pay and pensions), corruption (bribery, graft and money-laundering cases and the ED, CBI and vigilance actions over them) and protests (rallies, strikes, bandhs and agitations, and police action on the people in them). The world: world (events in other countries), diplomacy (India's dealings with other governments) and defence. Money and work: business, markets (share prices, IPOs, gold, crypto, the rupee), employment (jobs, layoffs, wages, recruitment) and agriculture (farming, crop prices, irrigation). Knowledge and health: technology, science, environment (pollution, climate, forests, wildlife), health and education. Law and safety: crime (offences and policing), courts (hearings, bail, verdicts and judges' orders), accidents (crashes, fires, collapses, stampedes and natural disasters where people are hurt), weather (forecasts, alerts and the monsoon) and transport (trains, flights, metro, roads and their projects). Daily life: civic (city services, water and power cuts, traffic, public holidays and community news) and religion (temples, mosques, pilgrimages and festivals). Play: sports, cricket and entertainment. A story is filed by what it is about, not by who is in it, and the instruction carries a written rule for the close calls, such as police action on protesters, which is protests and not crime. Articles first scored before 28 October 2026 used fourteen topics and keep them, so older cricket, election, weather and similar news sits under politics, sports, civic, accidents or crime, and Cricket, Elections and the other new topics fill up from that day. Articles first scored before 26 October 2026 used ten topics, without crime, courts, accidents and civic, and some older ones still do. The step also notes which sectors an article may help or hurt when that is clear, and leaves sectors out when the model is unsure.
04Lean and topic: how well it works
We checked the scoring on 150 articles collected in October 2026. Two of us (founders of Vilokana, not an independent panel) labelled each article's topic and lean from the same headline and summary, without seeing the AI's answer. We could see the outlet name, so our own lean labels may lean on an outlet's reputation.
We often disagreed with each other. On the 131 articles we both labelled fully, we chose the same topic 66% of the time and the same lean 71% of the time (counting "can't tell" as Centre). For many articles there is no single right answer, so a figure for how often the AI is right can only be as firm as that.
To judge the fourteen-topic instruction, 49 of the 150 articles were held back and scored once, after the wording was fixed. On the 27 of them where we both chose the same topic, the AI chose it too on 24 (89%). With so few articles, the true figure could be anywhere from about 72% to 96%. Where we both saw no lean (21 articles), the AI never said Left or Right. Where we both saw a Left or Right lean (15 articles), it gave the same lean on 6, said Centre on 9, and never reversed the direction.
So it is cautious. It misses much of what a person might call lean, most of all when a person judges by who a story is about instead of how it is worded. Crime and civic stories were the hardest to file: we chose the same topic on only 4 of 9 crime and 8 of 20 civic articles. We measured this on 25 October 2026. We have not measured the twenty-seven-topic instruction that replaced it on 28 October 2026. More topics means more close calls between neighbours, such as politics and elections or crime and protests, so its accuracy may be lower, and we will publish a figure once we have measured one.
05Pulse: 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 and the opening of their summaries share enough of their meaningful words. A rare word counts for more than a common one, and filler words like "the" or "says" are ignored. A story never holds two articles from the same outlet. Roundup pages that cover many topics at once, such as "live updates", are left out of grouping.
When the words 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. For You also shows single-outlet articles in the topics you follow, so an article can appear there without a second outlet. Following a broad topic also brings its narrower ones: Politics brings Elections, Governance, Corruption and Protests, Business brings Markets, Employment and Agriculture, Civic brings Weather, Transport and Religion, World brings Diplomacy, Science brings Environment and Sports brings Cricket. Following a narrower topic on its own brings only that. The email digest works the same way.
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.
06Decode: 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.
07Deep analysis: one story, all the outlets
Deep analysis is a Vilokana Pro page that opens one story, meaning the articles we grouped together because two or more outlets reported the same event. Most of it is counting: how many articles and outlets, when each was published, how many were estimated Left, Centre or Right, which owner groups the outlets belong to, which states the articles were tagged to, and which outlets we collect have no article in the story. Those numbers are counted from articles we already hold, and no new model call is made for them. The Left, Centre and Right labels being counted are the AI estimates described under Lean.
Sector impact repeats the notes the scoring step made for each article (see Lean above). We show how many articles said a sector may be helped or hurt, with each article's own reason. We do not add them up into a size or a percentage.
The AI read is the one part that calls a model on request. It is given up to 12 of the story's headlines and short summaries, not the full articles, and is asked to compare how they are worded: what they share, where the framing differs, and which words stand out. A point about what the articles share, or how they differ, must cite its sources by number, and a quoted phrase must appear word for word in the article it cites. Otherwise the point is dropped. It does not say what is true. It can be wrong and it can miss things the full articles say.
Each reader has a daily limit on new AI reads, and so do all readers together, because every read costs real money. A read is saved once per story and shown to every Pro reader without counting against anyone. If more articles join the story, the next read is made fresh.
An outlet listed as missing from a story means we hold no article from it in this group. It does not prove the outlet ignored the event: we only read front pages, and our scraper can miss a run or a grouping.
08Silence: where few outlets are reporting
Silence looks at the articles from the last 48 hours that we could tie to an Indian state. (If fewer than 500 came in, it uses the 500 most recent instead.) It counts how many different outlets reported on each state. When three or fewer did, we flag that state and show its latest article. States with no article at all in those 48 hours are listed separately as having no reports: that can mean the outlets we follow did not cover them, or that our place-matching missed them, and it does not mean nothing happened.
This is a simple count. It does not group by topic yet, and it says nothing about why an outlet stayed quiet. We track a limited set of outlets, so a state can show up here because none of the outlets we track cover it closely, not because the press ignored it.
09Ground: 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.
10Chain: who is behind each outlet
Chain keeps three kinds of statement apart. On record means we read it from the Ministry of Corporate Affairs (MCA) register: the name of the company that publishes an outlet, its company number (CIN), when it was incorporated, and the people the register lists as its directors. We read these records by hand on 3 November 2026. They show that the company exists and who runs it. They do not show who owns it, because the register's master data does not list shareholders.
Reported means a named publication or document said who holds a company's shares. We write it as a sentence that names the source and its date, and we link to the page. We opened every link on the day shown and read the claim there. A reported claim is the source's statement, not our finding, and it may be out of date: some of ours come from a 2018 study, and each one says so. Untraced means we found no published, dated source, so Chain shows no holder rather than a guess.
Directors, owners and editors are different people, and Chain keeps them apart. A director is not necessarily an owner, and an editor is not necessarily a director. This information is entered by us, not worked out by software. We leave out any claim we cannot link to, and we do not label an owner's politics.
MCA asks for a sign-in before it shows a company's master data, so we cannot link straight to one company's record. We show the CIN so you can search for it yourself, and we say that on every record. If you know a newer or better source for a company, tell us (see Corrections below).
11What 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.
Two people reading the same headline often disagree about its lean (see above), so treat a lean as one reading, not a fact.
12Corrections
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.