Coverage health and limits
All stories
Each mark is one outlet in our feeds. Stripes mean no coverage found on that side, within our collection window.
What each outlet covered
Bias often shows up in what an outlet chooses to cover, not only in how it writes. This compares each outlet's feed today with the stories that left, center and right all covered.
How this is measured
A story counts as “every side covered” when at least one left, one center and one right outlet ran it. For each outlet we count how many of those stories appeared in its RSS feed during the edition window, which is about the last 36 hours.
Feeds don't carry everything an outlet publishes, so a story listed under “Didn't run” may have appeared elsewhere on its site. These numbers describe what each feed contained. They don't explain why, and one day is a small sample.
Research
Free tools for reporters and anyone checking what they read. They search the last 30 days of editions and show who covered what. They never say whether something is true.
Look up coverage
Paste a claim, a headline or a link. You'll see which outlets covered it, where we found no coverage, and any government record behind it.
Search government records
Every bill, rule, ruling and official statement we've read, newest first. Records no outlet covered are often worth a closer look.
Use the data
Both tools run on files anyone can download: the last 30 days in one file, and a file for each edition with every article, score and fact check. Use them for anything. A link back is appreciated. For code and AI assistants, see the API docs.
How stories are chosen
No editor picks the stories. A published rule does, and you can check every number on this page against the code.
From feeds to an edition
- Collect. Once a day we read the RSS feeds of every outlet on the source list, plus official sources. Records (Congress.gov, new laws, the Federal Register) are kept apart from statements (White House and agency press releases).
- Group. Articles about the same event are grouped into one story by comparing their meaning, and they must share a name few other articles use. Two documents from the same agency are never merged.
- Score. Each story gets a score from 0 to 1 using the formula below. Nothing about clicks, shares or engagement goes into it.
- Write. A model writes a plain summary from the outlets' own reporting, following our style guide. A banned-word check rejects loaded language, and a fact is stated plainly only when two outlets agree on it.
- Your settings. Your settings decide which stories you see. If you turn off an outlet, every story is scored again without it. You can also set your own weights for the score below. They only re-rank stories that were written: a story the published rule dropped has no summary to bring back.
Reading the coverage bar
Every story has a bar with three parts: left in blue, center in gray and right in red. Each mark is one outlet that ran the story, so more marks mean more outlets on that side.
- Every side ran it: two left outlets, one center and three right.
- Stripes: we read that side, and no outlet on it ran the story.
- Dashed outline: we couldn't read that side that day, so we don't know.
- The picture beside a story shows the same thing in the same order: left, center and right, with one ring per outlet. Circles overlap to show sides covering the same story. A dotted amber circle means no outlet on that side ran it, and a solid square means a government record backs it.
The score
- Breadth
- Share of left, center and right that covered it. This carries the most weight, so a story only one side covered can't rank near the top.
- Government record
- Whether a government record backs it up: a bill's status on Congress.gov, a new law, a rule in the Federal Register, a court ruling or official statistics. Stories with a record rank higher. Government statements, like White House or agency press releases, are listed but never add to the score, because they are an administration describing its own work.
- Coverage
- How many outlets covered it, on a log scale that stops counting at , so one story can't win on volume alone.
- Diversity
- How many kinds of outlet covered it: wire services, national, regional and international.
Today's scores
Every story from today's edition, broken into the four parts of its score. The line marks the threshold.
Checking the summaries
Every summary is checked against its sources before it's published. Any number in a bullet has to appear in the sources, and when a model writes the summary, a second pass confirms each bullet is supported. Bullets that fail are removed, and every removal is listed under the story's sources, so you can see what was cut and why.
Corrections
Sources and their lean
Every source starts with a lean label. When ratings from published media-bias services are added for a source, its label becomes their average, and the raters are listed under “Rated by.” If the list has more outlets on one side than another, outlets are weighted so each side counts equally toward coverage; “Counts as” shows each outlet's weight. You can turn any source off in Your feed.
| Source | Lean | Rated by | Counts as | Kind |
|---|
The optional market closes show the latest closing values from FRED, the St. Louis Fed's free data service. They update once a day with the edition, so they aren't live. FRED posts each series on its own schedule, so a value that lags shows its own date, and each one links to its source.
Make it yours
The Standard Edition is free, with no ads, no accounts and no tracking. Your settings stay in your browser and in your feed address, nowhere else.
Advanced: ranking and sources
Recipes
A recipe is a link: the settings above, with a name. There's no account and we keep nothing. Bookmark the link to save it, or send it to someone. Opening one replaces your settings in that browser.
Try one
Get it by RSS
Add this address to any feed reader. It carries the settings above.
Build a feed by hand
Every setting is a part of the feed address, so you can write one yourself or share it. Leave out anything you want at its default.
| Add | What it does |
|---|
Examples
Run your own copy
All of the Standard Edition is open source. To change the rules for everyone who reads your copy, fork the code and edit three files:
sources.yamllists every outlet and official source, with its lean. Add, remove or relabel them.boringnews/rubric.pyholds the weights and thresholds shown in How it works.editorial/style_guide.mdholds the writing rules the summaries follow, andeditorial/banned_words.txtlists the words the checker rejects.
The code is on GitHub. Changes to the rules are made in public commits, so you can see when and why anything changed.
Think we got something wrong? Challenge a label, report a wrong story, or propose a source or rubric change.
Every dollar in and out is listed here, and every change is a public commit, so you can see when any line changed.
Money out
Money in
The rules
Running costs
What the project depends on, and what it costs. Anything the maintainer pays personally is still listed, so the true cost is visible.
The day's news, once a day. Who covered it, who didn't, and every rule in public.
100% transparent. 100% free. Always.
Our mission
We want people to see what happened, who covered it and who didn't, so they can make up their own minds. The Standard Edition is free to read and free to copy, and every decision behind it is open to question.
Our goal is for anyone to have that view, in their own language, wherever they live, including places where news is restricted. Today we cover the United States, and the rest is on our public roadmap.
The idea behind it
Most people think media bias is about how a story is written. The bigger bias is which stories get told at all.
Gather enough reporting from across the political spectrum, and what the sources have in common points toward what's true. So we read outlets on the left, center and right, put government records beside them, and show where coverage is missing.
This has limits. Outlets repeating one wire report aren't really separate sources, and we're still working on how to count that. Every outlet can also miss the same thing. That's why we show the evidence and leave the conclusion to you.
What we believe
- Free, permanently. No ads, paywall, premium tier or accounts, and we never sell your data.
- Every decision is visible. Sources, labels, ranking and writing rules are public.
- You own the algorithm. Our rules are a starting point, and you can change them.
- Show the whole spread. You can see who covered a story and who didn't.
- Records sit next to the reporting. Laws, rules and rulings appear beside the coverage.
- Local news matters. State and city coverage is on the way as a full part of the edition.
- Boring on purpose. Once a day, with no outrage, infinite scroll or engagement metrics.
- Open books. Every dollar in and out is published.
- No tracking. No third-party analytics, ad pixels or profiles.
Who runs it and who pays
The Standard Edition is an open-source project run by Sean Manuel, not a business. It has no growth target, no exit and nothing to sell. It has no ads and no investors, and it doesn't take donations yet.
Every cost is listed in the public ledger, and every change to the rules is a public commit.
Contact us
To report a mistake, challenge a label or propose a change, open a public issue. Anyone can read it, and that's on purpose.
Questions people ask
Is this written by AI?
Yes. A model writes each summary from the outlets' own reporting, following our style guide. A banned-word check rejects loaded language, and any number in a summary has to appear in the sources.
Are you biased?
Every system has biases, and that includes ours. The difference is that you can inspect ours: the source list, labels and scoring are all public, and your settings can change them for you.
Why is an outlet labeled the way it is?
Every outlet starts with a left, center or right label. When ratings from published media-bias services are added, the label becomes their average. You can see each label in How it works.
Why was a story left out?
A published rule decides which stories get written, and your settings decide which of those you see. Today lists anything your settings hid, and why.
Does this tell me what's true?
No. We aren't fact-checkers. We show who said what and what the records say, so you can get as close to the truth as the evidence allows.
Do you track me?
No. Your settings stay in your browser and your feed address, and there are no accounts.
How do I challenge a decision?
Open a public issue to challenge a label, report a wrong story, or propose a source or rule change. Corrections appear in How it works.