Skip to content

Methodology

how we count what we show

Every source in the register earns 0–100 points. It is a practice score, not a truth score: it measures how open and consistent a source is — who stands behind it, whether it covers the big stories of its beat, how it treats its own texts. A high score does not mean a source is right; a low one does not mean it lies. The score means exactly what is written below, and nothing more.

The formula

The composite is the arithmetic mean of the criteria we can compute. Each criterion is 0–100 points earned from the components in the tables below. When a criterion cannot be computed for a source, it pulls the composite neither up nor down — the composite becomes the mean of fewer criteria, and we mark that.

The four criteria

Transparency

Who stands behind the source. Disclosure itself weighs most; the rest are verifiable traces: a named beneficial owner, a legal entity, a media-registry record, disclosed funding.

ComponentPoints
Ownership disclosure55
Beneficial owner named15
Legal entity on record10
In the media registry10
Funding disclosed10

Coverage completenessnot scored yet

Viche's thesis measured on a single source: what share of its beat's big stories it covered, and which it stayed silent on. This criterion activates once the story-coverage aggregate exists — until then it counts toward no source's composite.

Editorial practice

Editorial behaviour: bylines, news–opinion separation, corrections practice, sourcing. Today this is a curated assessment from our research; where it does not exist yet, the criterion is marked unscored rather than zero.

ComponentPoints
Curated editorial assessment100

Signal reliability

The technical honesty of the stream: regular output, full texts, stable collection. Components that do not apply to a source (say, full-text share for a social-only source) redistribute their weight instead of zeroing the score.

ComponentPoints
Activity: articles past 7 days40
Full-text share30
Fetch health past 7 days30

What one source is

A source is a newsroom, not a feed. When an outlet publishes the same story to its site, its Telegram channel and its YouTube channel, that is one source with three channels: one score, one voice in an event's coverage. So «2 sources» under an event means two different newsrooms, not two feeds of one. Every channel is listed on the source's own page, and the register shows the count beside the code.

How we count media groups

  • Since 29 September 2026 one question sets the media groups: who pays for the newsroom. Before that, Viche sorted newsrooms into seven groups that mixed three different questions — who pays, whether the source is a public authority, and what format it writes in. Those are now separate fields, and the seven groups became six groups by who pays.
  • A group belongs to the newsroom, not to a single report: all its channels and reports belong to the same group.
  • The media groups do not form a scale: none stands «left» or «right» of another. So all six are always shown in one and the same order.
  • The strip under an event is six equal segments, one per media group. A segment is filled when a newsroom of that group is among the collected reports; how many reports it filed does not change the strip. «Covered by 3 of 6 media groups» is the number of filled segments. The shares — how many sources and reports each group accounts for — are shown only in the table on the event's page.
  • An empty segment means the collected reports include no newsroom of that group; it does not prove a deliberate silence.
  • A newsroom we have not classified yet counts toward no group: it is named on its own — «1 of 6 newsrooms not yet assigned to a group». «Undisclosed» is a finding about the outlet: it does not say who pays for it. «Not classified yet» is our gap: we have not checked yet.
  • Earlier versions of Viche called the media groups «blocs», and there were seven of them.

Criteria

These are the rules by which we put each newsroom in a group. They only read what is already known about the outlet and add no new claim about its ownership. They are structural criteria, not a judgement of quality.

Who pays

Every newsroom belongs to one of six groups by who pays for it:

Budget
— A state or local budget: public authorities, state and municipal media.
Public money
— Public service broadcasters: public funds and editorial independence secured by their institutions.
Media business
— A commercial owner with no ties to a large non-media business group or to politics.
Big capital
— The ultimate owner is a large non-media business group or political capital.
Readers and grants
— A non-profit newsroom, or money mostly from grants, donations and subscriptions.
Undisclosed
— The outlet discloses neither its legal entity, nor who is responsible, nor who pays.

In «Big capital» we also mark where the capital comes from: oligarchic ties — a large non-media business group; political ties — a party, a sitting politician or their family. Outside that group we mark no owner's ties.

What it does

The second field is what the source does with the news. It does not change the strip; it shows in the share table on an event's page and on the source's page:

Actor
— the source is itself a public authority or a command: a primary source, not a medium.
Newsroom
— a daily news feed, or original news and investigations.
Commentary
— analysis, commentary or fact-checking without a daily news feed.

The evidence standard

  • No ownership claim without a source: the register of legal entities, the media register, the outlet's own imprint or «About us» page, media-ownership monitoring, or an investigation by a newsroom that answers for its text.
  • A trace nobody has confirmed (a domain-owner snapshot on a third-party site, an anonymous post) does not go into the profile.
  • «Undisclosed» comes only after a check: we went through the outlet's site and the registers and found no legal entity, no one responsible and no one who pays. A public, named person in charge without a disclosed ownership structure is not «Undisclosed».

Border rules, September 2026 version

Decisions for the cases the rules above do not settle (29 September 2026, after 341 outlets were checked):

  1. Former politicians. «Big capital» with political ties only if the owner held an elected mandate in the last five years or holds a political or state office now. An older mandate is «Media business»; the history goes into the decision's reasoning.
  2. Proof of a tie. A political tie counts only when a register, an official form or a signed publication names the owner (or a member of their family) as that politician. A matching name or a cautious «probably linked» goes into the reasoning but does not set the group.
  3. Foreign state money. «Public money» when the law guarantees editorial independence (the BBC, Radio Liberty, Voice of America). «Budget» for a foreign government's own outlet without that guarantee. An NGO or diaspora paper with a foreign state's grants is «Readers and grants».
  4. Mixed money. Between «Media business» and «Readers and grants» the owner's legal form decides: an NGO or a foundation is «Readers and grants»; a company or a private person is «Media business» unless the outlet publishes a revenue split in which grants and donations are more than half. A subscription-only newsletter, and a volunteer project on donations with no advertising and no company, are «Readers and grants».

How to appeal a classification

An outlet can appeal its group or any other field of its classification. Write to [email protected] with the outlet's name, the group you contest and your evidence. We check it by the same standard and record the decision — change or keep — with its date and reason; every profile's history is kept.

Bands

  • 80–100 — exemplary practice
  • 60–79 — good practice
  • 40–59 — partly opaque
  • 0–39 — opaque

Four honesty rules

  1. We do not score truth. The word “credibility” does not appear in this product: a source scoring 85 can be wrong, a source scoring 40 can be right.
  2. The formula is public. Every source's every point decomposes into components on its page. If the arithmetic cannot be shown, the number is not shown.
  3. Missing data is not bad practice. An unscored criterion is marked and excluded from the mean; it never counts as zero.
  4. No movement arrows until score history exists. “Better/worse than last month” arrives only with stored monthly snapshots.

How we measure tone

  • Tone is how each media group framed the event: how it was written, not what happened. We estimate each report's tone automatically, from the words of its headline (for a post without one, from the start of its text), so every tone figure is an estimate, and for a single report it can be wrong.
  • For each media group we average each source's reports, then average across the group's sources, so each source weighs the same. The scale runs from −1 (negative framing) to +1 (positive framing). The spread shows how far apart the groups stand on that scale: 0 — framed alike, 2 — opposite.
  • When the spread is at least 0.3, the «Tone» tab shows each group's estimate on a scale marked −1, 0 and +1, with how many of its reports were estimated. Below that threshold the difference between groups is noise, not a finding: the tab says «No meaningful measured difference found», and the groups' estimates open only on request, with «Show tone estimates».
  • Tone is drawn in one neutral colour: its direction is shown by the position on the scale and the sign of the number, not by colour, so it cannot be mistaken for the media groups' colours.
  • «Good» or «bad» is an assessment of the event for Ukraine and its citizens, not a neutral fact. A model sets the label, and it can be wrong.

Two languages

An event's summary, its key facts and a storyline's title are Viche's own words: a language model writes them after reading every report of the event. The English is written by the same model in the same pass, from the same reports — it is not a machine translation of the Ukrainian, it is the same material composed in English. Outlets' own headlines are never translated: the source list shows what each newsroom published, in its own language, linked to the original. An event covered by a single source has no Viche text at all, so on an English page it stays in Ukrainian and is marked as Ukrainian.

Where the data comes from

Components are computed from Viche's public read plane: researched ownership profiles (with their confidence level), the media registry, and 7-day collection metrics. Each source's page shows every input next to its points. Formula version: v1, August 2026.

Back to the source register

Allow visit statistics? PostHog keeps them (EU servers) under a random browser id — no name, no account; kept for 12 months. Vercel Speed Insights measures page speed, with no id. The site works the same without. Details