How it works

What every number, badge and emoji on the site means, and how it's made. Everything here is computed on one home computer, every hour, from the front pages of the outlets we follow.

Where the news comes from

๐Ÿ—ž๏ธOutlets and front pages

We follow 145 outlets and read what's on their front pages every hour. 85 are read straight from their homepage, 52 from their own RSS feeds, 3 through Google News (outlets that block readers like ours), and 5 with a real browser (pages built by JavaScript).

A headline is live while it's still on a front page. When it drops off, we keep it, which is how the site can say an outlet dropped a story (๐Ÿ‘ป) or rewrote a headline.

๐ŸงนNews, not everything

Front pages carry shopping guides, horoscopes and recipes too. A language model labels every new headline as news, not news, or page junk; only news counts toward stories, the cloud and the measures below. Very short or very long "headlines" and text repeated across a page are dropped as navigation.

How headlines are read

๐Ÿค–The language model

A small open model, qwen3:8b, runs on our own computer (not a cloud service). It reads each new headline once and answers in a fixed format: whether it's news, whether it presents the news as good or bad, how loaded the wording is, and the feelings it's most likely to stir. Before scoring, it writes a short note on how the headline treats the news and for whom, which keeps its answers grounded. It makes mistakes, so treat any one score as a rough read; the averages over many headlines are what the site shows.

๐ŸŒฆ๏ธMood

Whether a headline presents its news as good or bad, from grim to upbeat (โ›ˆ๏ธ ๐ŸŒง๏ธ ๐Ÿž ๐ŸŒค๏ธ โ˜€๏ธ; "+" means more so), judged from the outlet's own words and tone. The same court ruling can be ๐ŸŒง๏ธ grim in one outlet's headline, โ˜€๏ธ upbeat in another's and ๐Ÿž plain in a wire report's: that difference is the outlets' framing. Plainly reported deaths and disasters are grim. A story's mood is the average of its headlines. (Until Oct 4, mood was how good the event was for the people it affects, whoever reported it; for anything political that meant the model taking a side.)

๐ŸŒถ๏ธSpin

How much a headline's own wording adds emotion, judgment or alarm beyond the facts: ๐Ÿž plain, ๐ŸŒถ๏ธ loaded (a charged word or two, like "slams" or "chaos"), ๐ŸŒถ๏ธ๐ŸŒถ๏ธ loaded+ (built to provoke). Words quoted from someone don't count. Outrage bait counts even in plain words ("Oh, come on:", "You can't make this up").

๐Ÿ˜ฑFeelings

The feelings a headline is most likely to stir in a reader, ranked, up to three, from: ๐Ÿ˜ฑ fear, ๐Ÿคฌ anger, ๐Ÿ˜ญ sadness, ๐Ÿคฎ disgust, ๐Ÿคฏ surprise, ๐Ÿ˜„ joy, ๐Ÿคž hope, ๐Ÿฅ› neutral. Like ranked-choice voting, each headline's vote is split 3:2:1 across its picks, and a story's or word's feelings are the average of those votes. A story card shows every feeling with 20% or more of the votes; ๐Ÿฅ› neutral is plain information.

Stories and sagas

๐Ÿ“ฐStories

Headlines about the same event, from different outlets. Each headline is turned into a meaning fingerprint by a sentence-embedding model running on our own machine (mxbai-embed-large), and headlines whose fingerprints are close enough (0.8+) join up; a story needs at least six outlets. Stories look back 24 hours, so an outlet that dropped one still shows on its card, faded with a ๐Ÿ‘ป. The language model writes each story's title.

Covered by on a card (๐Ÿซ to ๐Ÿ˜) is the average lean of the outlets covering it, compared with all the outlets we follow, which lean left as a group. Arrows beside a meter show it moving over the last few hours: โ—€ or โ–ถ as coverage shifts toward left- or right-leaning outlets, โ–ฒ or โ–ผ as the news turns brighter or grimmer; more arrows, more movement.

๐ŸงตSagas

One running story told in several parts: the Cornell case's allegations, the prosecutor, the attorney general taking over. Two stories join a saga when their centers are close (similarity 0.54+) and they share a distinctive name, one in at least 30% of both stories' headlines but no more than 4% of the day's, that outlets capitalize as a name (Cornell, Iranian), not a common word (rally).

Sagas are kept: each hour today's stories are compared with the last week's, so a saga gathers parts across days and never loses one when its earlier parts leave the front pages. A saga shows while any of its parts is current; parts that have left the front pages are listed, quieter, with when they ran. Sagas count once in the top stories and the news-day sticker.

๐ŸšจNews day

How big a news day it is: the share of outlets carrying the top story on their front page right now, weighed by the story's age (full weight for 12 hours, then halving every 24). 45%+ is a big news day, 25%+ just another news day, less a slow one.

๐Ÿš€Speed of break

How many outlets had a story within 75 minutes of our first sighting (two hourly reads). 8+ earns the rocket.

๐Ÿ™ˆBlindspots

Stories almost only one side is covering: at least 6 rated outlets, 70%+ of them from one side, and that side's share at least 1.5ร— its share of all our rated outlets. Their story cards carry a ๐Ÿ™ˆ label and a meter of who's covering them (blue left, gray center, red right) with a tick where an average story would split; the ๐Ÿ™ˆ button above the cards shows only blindspots.

The word cloud

โ˜๏ธSize and color

The 95 words and phrases the most outlets are using right now; each outlet counts once per word, so a busy outlet can't inflate one. Bigger means more outlets.

Color is who uses a word more readily: blue for left-leaning outlets, red for right, a blue-to-red blend for both, gray when it's mostly center outlets. Each outlet's use is weighted by how many distinct words it publishes, so high-volume outlets don't tilt everything their way.

๐Ÿ˜ฐEmoji bookends

A word framed by emoji (๐Ÿ˜ฐdeath๐Ÿ˜ฑ) has a strong feeling in its headlines: at least 25% of the votes, among words 5+ outlets use; the 25 strongest get them.

๐Ÿ“Sorting

Words are packed at tilts (bigger ones closer to level) and drift along the arrow behind them: biggest first by default, or left to right, or plain to spicy. Click a word to see how outlets are using it.

Other measures

๐Ÿ“ขBuzz

In the headline table: how much a headline uses the words and phrases everyone else is using today, as a percentile of the day's headlines (๐Ÿ“ข top 5%, ๐Ÿ”Š top 20%, ๐Ÿ”‰ top half, ๐Ÿ”ˆ low, ๐Ÿคซ quiet).

๐Ÿ˜ˆFraming

On the outlets page: on stories other outlets also covered, whether an outlet's headlines make the same event look worse (๐Ÿ˜ˆ gloomier) or better (๐Ÿ˜‡ sunnier) than everyone else's. Comparing within a story separates how an outlet frames the news from which news happens to be bad.

โœ๏ธHeadline changes

Headlines an outlet changed on an article it had already published, over 7 days. A change counts only if the old headline left before the new one appeared; live blogs, reused links and minor changes (capitalization, punctuation, a label like "WATCH:") are skipped.

๐Ÿ“กWire copy

On the outlets page: the share of an outlet's headlines over the last week that are AP or Reuters headlines, word for word or nearly (very close in meaning and sharing most of their words). Outlets mostly rewrite wire stories in their own words; this counts only the ones they run as is.

๐Ÿ“ŒAggregators

Google News, Drudge Report, RealClearPolitics and Political Wire mostly link to other outlets' stories, so they don't count as outlets covering a story, or toward lean, the news-day sticker or the cloud. A story card says "๐Ÿ“Œ picked up by" when one of them is linking to it right now.

๐Ÿ”ŽInvestigations

The newest pieces from open-source and investigative outfits (Bellingcat, ICIJ, OCCRP, DFRLab, Citizen Lab, Just Security), read from their feeds once an hour. They publish a few deep pieces a week rather than a front page, so they're listed on their own and don't count toward stories, the cloud or any measure. ๐Ÿ“ฐ in the news marks one that matches a current story.

๐ŸŽ™๏ธOn the shows

The newest from news-of-the-day podcasts, newsletters and political streams (Pod Save America, Breaking Points, Up First, Ruthless, Megyn Kelly, Hasan Pikerโ€ฆ), one per show, read from their own feeds every couple of hours. We sort shows by how they follow the news, not by format: news of the day shows react to this week's news, several stories at a time; thinking shows take one subject at a time (The Remnant, Noahpinion). Only news-of-the-day shows appear here; we keep a record of the rest for research. Blue, red and gray mark a show's rough side by reputation, not a rating.

Outlet ratings

โš–๏ธLean: AllSides

Each outlet's lean is AllSides' Media Bias Rating (CC BY-NC 4.0), on their five levels: Left, Lean Left, Center, Lean Right, Right. Outlets AllSides doesn't rate are shown dashed and "not rated", and are left out of every lean average.

โœ๏ธOur estimate (est.)

For outlets AllSides doesn't rate, we estimate lean from the wording of their headlines over 30 days, with a model trained on the rated outlets. It publishes only when the model checks out (tested by hiding each rated outlet in turn, its rank agreement must be 0.45+) and it's confident about the outlet. Right now it calls a side for 36 of the 117 rated outlets in that test, and gets 94% of those right; 6 outlets carry an estimate. Estimates are dashed "est." chips, and they stay out of lean averages.

๐Ÿ“šReliability: Wikipedia

Whether Wikipedia's editors treat an outlet as a reliable source (generally reliable, no consensus, generally unreliable, deprecated), from their perennial sources list (CC BY-SA 4.0). It's a judgment about citing a source, not a fact-check score.

How it was built

๐Ÿ““ Every change to how we collect and measure things, dated, with what didn't work and the mistakes we caught: the methods log.

โœ๏ธ2024: by hand

The site began in January 2024 as Maudlin, designed and written mostly by hand: the scrapers for each outlet, the database, the word cloud and the first sentiment measures, over about 680 commits through August 2024.

๐Ÿ› ๏ธ2026: rebuilt with AI assistance

For the 2026 midterms it was rebuilt with an AI coding assistant (Anthropic's Claude), starting in October 2026. The ideas, the design, the research questions and every decision about what ships are a person's; the assistant wrote and tested much of the new code to that direction, and helped research sources, ratings and methods.

๐Ÿง Two different AIs

Building the site is one thing; reading the news is another. The measures on this site (news or not, mood, spin, feelings, story titles) come from the small open model described above, qwen3:8b, running on our own computer. Every score records which model and which version of its instructions made it, and we test how stable its answers are before trusting them, including publishing where it fails.

Limits

๐Ÿ—ž๏ธFront pages, from a left-leaning mix

Front pages, not readership. We measure what outlets put up front, not what people read or share.

Our outlet mix leans left as a group; lean measures compare against that mix, and blindspots account for it.

๐Ÿค–The model makes mistakes

Single scores are rough; averages over many headlines are steadier. Small models also shift with how a question is worded, which is why we test stability before trusting a measure.

๐Ÿ“…Young data, mostly US

Young data. Our database starts on October 2, 2026, so stories that were already running then look newer than they are, and 30-day measures are still filling in.

Mostly US. Stories, sagas and lean use US outlets plus a few British ones; we follow foreign outlets for the cloud and the outlets page.

Reusing it. How we work is open: the methods log is CC BY 4.0, credit bignews.day. The motif index, our readings and our other writing are all rights reserved: ask us before reusing them, and ask about research use. The lean ratings and the reliability list keep their own licenses, below each page. The code is open source under the GNU AGPL v3: github.com/mas-4/maudlin2.