Turn it down!
We set out to build a calm feed and got a loud, boring one instead. Here is how we bring the news back to readers, and readers back to digesta.
Every digesta reader has sliders in the settings: drag left, get fewer stories. It works simply. We gather each story from the reports several outlets publish about one event, and each story has a number — how many outlets wrote about it. The slider raises the bar: “only send me what at least N outlets covered.”
The logic seems obvious: the more outlets noticed an event, the bigger it is. Want fewer news? Keep the big ones. Nothing to check here. It all looked simple — a formula for the perfect news backdrop.
But something felt off: when a reader turned the slider down, instead of calm they got a feed that was half politics — up from a quarter. And boredom on top.
01Too loud, and far too close
First we assumed too much politics simply gets into the feed, and started tuning the selection thresholds. We tried everything: cap the number of outlets from one country, require more different countries, drop stories where one press dominates. Nothing helped — the share of politics stayed around 40% under any setting.
When every lever of one kind gives the same answer, the problem is usually not the setting. It's what you measure.
For each political story we counted what share of its sources came from our most numerous press — the Russian one. And we sorted the stories by how many outlets wrote about them.
The quiet half of politics is the most international. The loud half is the most Russian. Raising the bar cut exactly the first and kept the second.
The reason is that the press writes at very different speeds. In our pool there are almost as many American outlets as Serbian ones — yet they publish four times less. An event noticed by a dense, fast press gathers twenty outlets in an hour. An event covered only by Japan, India and Korea won't reach even twelve — we simply don't have that many outlets from there.
02A high bar
To keep this from staying abstract, we looked at what exactly would drop out in a single day if we raised the politics bar from 12 outlets to 24.
Would drop: “Korea refuses to send troops to the war with Iran”, “The State Department approved $2.68bn of air defenses for Ukraine”, “The EU sanctioned Cuban nickel companies”, “The US won't impose new tariffs on China before the Trump–Xi meeting”.
Would stay: “Trump barred CNN from the White House” (117 outlets), “Pamfilova reported readiness for the State Duma elections” (86), “Trump Jr.'s wedding was paid for with Russian money” (40).
A change meant for “less political noise” would have thrown out the international news and kept the loud stuff. We cancelled it before shipping.
03Exercises in addition and multiplication
There was nothing to subtract politics with: the same filter also subtracts the international news. So we had to add the rest, not subtract. And that's when it turned out the slider itself was broken, too — in a predictable way.
Different categories have different starting bars: a sports story rarely gathers 12 outlets, so sport needs five, games three, tech six. The reader's slider raised them all by the same addition. “Plus 12” meant: games from 3 to 15, sport from 5 to 17, politics from 12 to 24.
Games grew fivefold. Politics doubled. Small categories died out first; politics barely noticed. So we replaced addition with multiplication: the slider no longer adds the same number to the bar — it raises it by the same factor.
| stories a day | politics: before (add) | politics: after (multiply) |
|---|---|---|
| 81 | 28.7% | 28.7% |
| 53 | 34.7% | 30.2% |
| 41 | 39.4% | 30.5% |
| 31 | 42.2% | 32.9% |
| 18 | 48.4% | 34.0% |
The difference between the columns is one line of arithmetic. It held half the problem.
04Balance across topics
We looked for the other half not where it broke, but where we had long overlooked it. It turned out we kept the strictest bar on exactly the categories that are already the scarcest. Sport, games and tech had their own lower bar. Economy and culture didn't: they were judged by the common one, 12 outlets, while offering three or four stories a day. The strictest bar stood where there was the least material.
We lowered both to six — and the feed grew by almost eight stories a day, while not a single story left it. Then, the sources: we re-examined the pool and realized we were missing dedicated business outlets, and anything on climate or health. So our 300+ sources gained 28 more, and three new countries — Kenya, Chile and Peru.
05A default mistake
And last, where there was neither a threshold nor an algorithm. In digesta, language and feed composition are different things. Language only changes what the buttons and summaries are written in. The composition (a global feed or a country one) is a separate setting. An anonymous visitor was always served one and the same composition: the one for the Russian audience. So a person got 108 stories a day, nearly half of them politics, crime and accidents. A French and a Brazilian visitor saw the same feed, just with the interface in their language. Not because anyone designed it that way, but because the default composition was chosen once and never revisited. Now the default is the global, neutral feed.
Here we also found a second quiet mistake. The slider could turn the feed down only to a certain limit — and that limit stood exactly where politics is highest. And it wasn't the reader who set it: of 55 people with a tuned feed, 32 sat at the strictest notch, put there by our own onboarding. We had placed a third of the audience with our own hands at the very point where the feed skews worst. We had to admit the mistake and fix it.
06Manual control
If a reader mutes a specific category, we now additionally check its stories for one-sidedness: a story won't pass if the share of sources from one country exceeds 40%.
| what the reader gets | Russian-source share | one-sided stories |
|---|---|---|
| didn't mute politics | 18% | 27% |
| muted it, as before | 23% | 29% |
| muted it, with the new rule | 16% | 0% |
Before, “less politics” left the reader with politics turned up. Now — turned down.
07Where it landed
Here is the same feed we started with. The table shows the share of politics along the slider: how it was before the fixes and how it is after.
| stories a day | politics share: before | politics share: after |
|---|---|---|
| ~80 | 28.7% | 28.6% |
| ~50 | 34.7% | ~30% |
| ~30 | 42.2% | ~33% |
| ~16–18 | 48.4% | 33.7% |
A reader can still turn the volume down to the quietest notch. Only now, at that notch, they get not half politics but a third — about as much as on the full feed. In a day we subtracted exactly one thing from the feed — one-sided stories, and only for those who asked for less. Everything else we didn't subtract, we added. And we fixed the ruler we measured with.
Method and caveats
Data. 1,096 global-feed stories for 05–19.09.2026, 328 of them political; a pool of 350 active outlets, 48 media spaces. Bot delivery — 39,930 messages a week. 28 new outlets were added on release day and are not in this article's numbers: a new source doesn't count toward thresholds for ten days.
What “share of Russian sources” means. The share among the story's national sources — outlets that write for a specific country's audience. International subject press (Nature, Ars Technica) is not in the denominator: its audience is a subject, not a country. A media space is defined by audience, not by registration: an emigrant outlet writing in Russian for a Russian reader counts as Russian.
This is about WHO wrote, not WHAT was written. We did not measure content, tone or stance — only the mix of sources. “A story where 40% of sources are from one press” does not mean “a biased story.” It means exactly what it says: a reader who asked for diversity is entitled to it.
Category — by the story's main label, assigned by a language model over the whole cluster. A label is a judgment, not a fact, and a story usually has several; “politics” here means “the model judged it politics first.”
What the method can't do. It only sees the outlets in our pool. The link “loudness ↔ press density” is a property of this pool on this date, not a law of nature. For categories with little supply (science, AI, games) — one to three stories a day, and their shares are noisy.
On bot readers — a tiny sample. 82 active readers, 55 with a tuned feed. Enough to see that 32 of 55 sit at the strictest notch, but too few to judge how the fixes affect retention. We'll return to this with a measurement a week after release.