Methodology

The Bunting Rating

The Bunting Rating is a single number between 0 and 100 that captures how much the left, centre, and right of US news media diverge in framing the same story. It does not say which side is right. It says how far apart they are. The higher the number, the more a story is being told as fundamentally different events depending on where you read it.

What it measures

The Bunting Rating measures divergence in framing across the political spectrum. Framing is not just which facts are reported, but how they are told: the emphasis, the language, the protagonists and antagonists, the implied stakes. Each story is reduced to a set of measurements taken on the framing produced by each part of the spectrum, and the rating reflects how far those measurements have spread from one another.


Scoring categories

Each framing summary is scored on eight dimensions. Together they capture how a story is told, not just what it says. Each dimension runs from minus one to plus one, with the two ends representing opposing framings of the same underlying topic. Lower and higher do not map to political left and right: some dimensions carry political weight, others do not.

01 · Frame type

Whether the story is told as a problem or as an opportunity.

Threat / crisis Opportunity / benefit

02 · Actor morality

The moral colouring applied to the key figures in the story.

Villainous / corrupt Heroic / principled

03 · Actor agency

Whether the key actors are shown as having power and choice, or as caught up in forces beyond them.

Passive / powerless Active / decisive

04 · Urgency

The level of alarm the story is told with.

Routine / minor Critical / alarming

05 · Scope

How broadly the story's significance is framed.

Narrow / local Broad / systemic

06 · Blame attribution

Whether responsibility lands on systems and structures, or on individual choices.

Systemic / structural Individual responsibility

07 · Proposed solution

Whether the implied solution rests with government and collective action, or with markets and individual freedom.

Government / collective Market / individual

08 · Emotional register

The emotional pitch of the prose itself.

Analytical / factual Moral outrage / emotional

A framing summary is reduced to a vector of eight numbers between minus one and plus one, one for each dimension. This vector is what the rating compares.


The six perspective buckets

Before scoring, every story is analysed in six buckets: the three political leans (left, centre, right) crossed with the two outlet types (corporate and independent). Six framing summaries are produced, six framing vectors are extracted. Splitting corporate from independent within each lean prevents large commercial outlets from drowning out smaller voices, and lets the rating notice when ownership structure is shaping the framing rather than politics.

Left

Corporate

Centre

Corporate

Right

Corporate

Left

Independent

Centre

Independent

Right

Independent


How it is calculated

Two measurements feed into the score.

Left to right distance

We compute the weighted Euclidean distance between every left and right framing vector across the four corporate and independent combinations, and take the maximum. Taking the maximum, rather than the average, means a story where one corner of the left and one corner of the right diverge sharply is reflected in the rating rather than smoothed away by quieter pairs.

Centre deviation

We measure how far the centre's framing sits from the midpoint of the left and right framings. A centre exactly between the two adds nothing to the score. A centre that has drifted toward one pole adds to it.

The two are combined, weighted 70% to the left-right distance and 30% to the centre deviation. The result is passed through a sigmoid scaling function that maps the raw distance to a 0 to 100 score. Sigmoid scaling means small differences below the noise floor stay near zero, mid-range divergence moves the needle proportionally, and extreme cases approach but never quite reach 100. A score of 0 would mean every outlet in every lean is saying the same thing in the same way; a score of 100 would mean the framings are maximally opposite with no shared ground.

Range Label What it means
0 to 20 Consensus Outlets broadly agree on what happened and why it matters.
21 to 40 Slight divergence Tone and emphasis differ; the core facts are largely shared.
41 to 60 Moderate polarisation Framing differences are significant enough to change how readers understand the story.
61 to 80 Significant polarisation The story is being told as a different event depending on where you read it.
81 to 100 Extreme polarisation The framings are near-incompatible. Readers of one side would barely recognise the account from the other.

A worked example

To show rather than just describe, here is an illustrative three-framing comparison of the kind that feeds into a rating calculation. These are representative framings, not verbatim quotes.

Same story. Three framings.
Left
"A direct assault on democratic norms, eroding decades of institutional trust."
Centre
"A contested policy shift drawing legal challenges from multiple states."
Right
"A long-overdue correction that restores constitutional balance and executive authority."
Bunting Rating 81 Significant polarisation

Illustrative example. Real analyses are published on Substack.


Limitations

Every measurement approach has limits. The table below names each limitation we are aware of, what we did about it, and what we could not fully solve. Transparency here is the point.

Limitation Mitigation Residual
Sample of outlets is not the whole media landscape Outlets span left, centre, and right and corporate and independent, deliberately oversampling independents to avoid a corporate-only frame Outlets we do not cover (regional press, Spanish-language, niche podcasts) are not in any rating
Story selection bias: only stories covered by enough of the spectrum get rated Topic clustering is done by AI from full content, not from a curated list Stories ignored by one side never make it to a rating, so the divergence sample skews toward "stories everyone covers"
Per-lean characterisation could be smoothed by AI generalisation Each lean is analysed in isolation before any synthesis; verbatim headline quotes drive the headline carousel so the outlet's own words do the work Sonnet still writes the framing summaries; the prose is a one-step-removed view of the actual coverage
LLMs carry their own framing biases We use structured per-lean prompts; emit verbatim headlines alongside summaries so readers can audit We cannot see inside Claude's training data; if it has a systematic lean, the framings inherit it. Disclosed openly.

What the score means in practice

A low score on a story means you can probably read any outlet's account and come away with a broadly accurate picture. A high score is a signal worth paying attention to: it means the story has become politically contested at the level of basic framing, not just policy preference. Those are the stories where reading across the spectrum is not just interesting but necessary to understand what is actually happening.

We publish every rating with the framing summaries and verbatim headline pull-quotes so you can judge the score for yourself. The number is a starting point, not a verdict.