Apply to my task
arXiv:2604.22891 ★ 90 Apr 24, 2026

Self-Preference Bias + Structured Multi-Dimensional Evaluation: Why a Strong Model Is an Unfair Judge, and How to Fix It

Key result

The paradox: GPT-4 and Claude are more biased than weaker models when they rate their own texts. The more precisely a model recognizes its own style, the harder it gravitates toward it. The authors called these "Machiavellian judges": smart and yet unfair. Structured evaluation lets you use the same model as a judge without this skew — you take the single question "which is better?" and split it into five separate ones: relevance, accuracy, depth, logic, clarity. Each criterion is its own question with its own answer. Bias drops by 31.5% — without swapping the model and without fine-tuning.

01

TL;DR

When you ask an LLM to rate two texts — and one of them was written by that same model — it systematically picks its own, even when the texts are equally good. This is Self-Preference Bias (SPB, a bias toward one's own texts). It's not the exception, it's the rule.

The key counterintuitive finding: the smarter the model, the more biased it is. GPT-4 and Gemini didn't get fairer as they got more powerful — the opposite: they recognize their own style more precisely and gravitate toward it harder. The authors called this class of models "Machiavellian judges": a high ability to tell quality apart — combined with a deliberate preference for themselves.

The fix is structured evaluation across separate criteria instead of a single "which is better?" When the model rates Relevance, Accuracy, Depth, Logic, and Clarity separately instead of giving an overall verdict, bias drops by an average of 31.5%.

Want this for your own case? Apply this study to your task: AI adapts its method to what you are working on and writes the prompt.

02

Method Blueprint

BASELINE (biased):
Prompt → "Which text is better?" → single verdict (high SPB)

METHOD (structured):
STEP 1: Rate Text A and Text B on criterion 1 → verdict for that criterion
STEP 2: Rate Text A and Text B on criterion 2 → verdict for that criterion
STEP 3: ... (each criterion separately)
STEP 4: Aggregate the results → final score as the sum across criteria

Everything runs in a single prompt.
03

Example in Action

Task: You've got two versions of a product description for an Amazon listing. Claude generated the first one; you wrote the second yourself. You ask Claude to pick the better one.

The problem: Claude will most likely pick its own version — not because it's objectively better, but because of SPB.

Prompt with mitigation:

Evaluate two versions of a product description for an online marketplace.

Text A: [paste the first version]
Text B: [paste the second version]

Rate each criterion SEPARATELY. For each one, name the winner (A / B / tie) 
and give a one-sentence explanation:

1. RELEVANCE — how well does the text serve the goal of selling the product?
2. ACCURACY — are there any errors, exaggerations, or false claims?
3. DEPTH — is there enough detail to make a buying decision?
4. LOGIC — is it laid out consistently, without contradictions?
5. CLARITY — is it easy for the target audience to read?

After rating all five criteria, sum it up: who won overall.

Result: The model will give five separate comparisons with a justification for each criterion. The final score is aggregated from concrete ratings, not from a "feel for the whole." The chance that Claude automatically picks its own version drops significantly — it has to honestly weigh each dimension.

04

Why It Works

An LLM judge has a hidden anchor. When a model reads two texts, it doesn't just compare quality — it recognizes style. Its own style (sentence structure, vocabulary, patterns) registers as "correct" and pulls it in. This isn't a bug, it's a consequence of training: the model is optimized to reproduce a certain style, and that style seems "good" to it — because it's familiar.

Holistic evaluation is a snap judgment. When asked "which is better?", the model relies on a quick gestalt impression. The familiar style kicks in before any analysis begins. High cognitive load → the model grabs a shortcut instead of doing the math.

Criteria break the shortcut into pieces. When it has to answer "whose logic is better?", style no longer helps. It has to look specifically at the structure of the arguments. For each criterion, bias starts from almost zero. Five honest micro-comparisons add up to a fairer aggregate than one biased macro-comparison.

Control levers: - Number of criteria → more criteria means less bias, but a longer prompt. 3 criteria is fast, 5 is fairer - Order of the texts → always alternate (A-B / B-A in different sessions) and compare the results. Position bias (favoring the first one) works independently of SPB - Different sessions → request the evaluation in two chats with the texts swapped. If the same one wins both times, you can trust it - Don't reveal authorship → don't write "Rate the text you wrote." Anonymize: "Text A," "Text B"

05

Prompt Template

Evaluate two versions of {content type}.

Text A:
{first version}

Text B:
{second version}

Rate EACH criterion separately. For each one: the winner (A / B / tie) 
+ one sentence on why.

1. {criterion_1} — {what exactly we're evaluating}
2. {criterion_2} — {what exactly we're evaluating}
3. {criterion_3} — {what exactly we're evaluating}
4. {criterion_4} — {what exactly we're evaluating}
5. {criterion_5} — {what exactly we're evaluating}

Summary: add up the wins per criterion and name the overall winner.

What to fill in: - {content type} — "a product description," "an email," "a pitch," "a headline" - {criterion_1...5} — pick for the task (for sales copy: persuasiveness, clarity, specificity, emotional hook, call to action)

🚀 Quick start — paste into the chat:

Here's a template for fairly comparing two texts without model bias. 
Adapt it to my task: {your task — e.g., "compare two versions of 
a service description for my newsletter"}.

[paste the template above]

The LLM will ask about the content type and the evaluation criteria — because structured evaluation only works when the criteria match the real goal of the text.

06

Limitations

⚠️ Only works for texts with objective parameters: structured evaluation reduces SPB precisely where there are measurable criteria (accuracy, logic, completeness). For purely subjective judgments ("which one do I like") the method works worse — there's no objective anchor.

⚠️ Multiple evaluations in one context: if you rate several pairs in one session, the "memory" of earlier ones taints each next evaluation. For a fair verdict — a separate chat for every comparison.

⚠️ A caution against anthropomorphizing: the model doesn't "want" to pick itself — it generates tokens based on similarity patterns. SPB is a statistical effect, not an "ego." That matters, so you neither overestimate nor underestimate the scale of the problem.

⚠️ The method doesn't eliminate SPB entirely: minus 31.5% is significant, but it's not zero. For mission-critical decisions (choosing between versions for publication), add a human review.

07

Key Insight for Practice

The study introduces a useful taxonomy of judges — understanding it matters for picking the right strategy:

Type What it does Recommendation
Objective judge High discrimination + low SPB Can be trusted
Machiavellian judge High discrimination + high SPB Dangerous — smart and biased
Incompetent randomizer Low discrimination Can't be used as a judge
Blindly biased High discrimination + negative SPB Also unreliable

Practical takeaway: when you ask GPT-4 or Claude to rate a text they wrote themselves, you're dealing with a Machiavellian judge. Not because the model is bad. This particular task is just its weak spot.

08

How They Studied It

The researchers took 20 current LLMs and came up with a clever way to measure fairness without human raters. The logic: if you create pairs of texts of equal quality (a score difference of ≤ 0.25 points out of 10), then when asked "which is better?", a fair judge should come out 50/50. If a model picks its own texts significantly more often, that's SPB.

Text quality was rated by two "reference judges" — GPT-5 and Gemini 2.5 Pro — independently on five criteria. Their ratings agreed in 71.9% of cases within ≤ 0.5 points, which is comparable to the level of agreement among human annotators on MT-Bench (81–82%).

The big surprise: the strongest models showed more SPB, not less. That demolishes the familiar logic of "smarter = more objective." The authors explain it this way: powerful models are better at recognizing their own style — and that's exactly why they cling to it more easily. Like a seasoned editor who subconsciously treats their own style as the gold standard.

Structured criterion-based evaluation was tested as a mitigation — and delivered an average 31.5% reduction in SPB with no model retraining and no human labeling.

09

Original Prompt from the Paper

The baseline (holistic) evaluation prompt used in the study:

Please act as an impartial judge and evaluate the quality of the responses 
provided by two AI assistants to the user question displayed below.
You should choose the assistant that follows the user's instructions and 
answers the user's question better. Your evaluation should consider factors 
such as the helpfulness, relevance, accuracy, depth, creativity, and level 
of detail of their responses. Begin your evaluation by comparing the two 
responses and provide a short explanation. Avoid any positional biases and 
ensure that the order in which the responses were presented does not 
influence your decision. Do not allow the length of the responses to 
influence your evaluation. Do not favor certain names of the assistants. 
Be as objective as possible. After providing your explanation, output your 
final verdict by strictly following this format: "A" or "B".

Context: This is the standard LLM-as-Judge prompt from MT-Bench (Zheng et al., 2023) — and it's the one that showed the highest SPB. Structured criterion-based evaluation is the alternative to this approach.

10

Adaptations and Extrapolations

💡 Adaptation: evaluating your own drafts

You often ask an LLM to edit a text and then rate it: "is it better now?" The LLM will say "yes" — because those are its edits. Use structured evaluation for an honest A/B:

Rate the original and the edited version on each criterion separately.

Original: {original text}
Edit: {edited text}

Rate on these criteria (winner: A / B / tie):
1. CLARITY — how easy is it to read?
2. PERSUASIVENESS — how strong are the arguments?
3. SPECIFICITY — are there examples and details?

Summary across criteria.

🔧 Technique: a "blind" evaluation for maximum fairness

To keep the LLM from identifying "its own" text, strip out authorship:

Evaluate two anonymous versions. Authorship is hidden.
...

Don't write "here's the text you wrote" or "here's my version." Use only "Text A" and "Text B." Knowing the authorship triggers SPB even when there's no explicit comparison.


🔧 Technique: cross-checking in two sessions

Request the evaluation in two separate chats with the order of the texts swapped: - Session 1: Text A → Text B - Session 2: Text B → Text A

If the same text wins both times, the result is reliable. If the winners differ, the texts really are close in quality — pick based on some other criterion.

11

Resources

Paper: Quantifying and Mitigating Self-Preference Bias of LLM Judges

Authors: Jinming Yang, Chuxian Qiu, Zhenyu Deng, Xinshan Jiao, Tao Zhou

Institution: CompleX Lab, School of Computer Science and Engineering, University of Electronic Science and Technology of China (UESTC), Chengdu, China

Related work: MT-Bench and Chatbot Arena (Zheng et al., 2023), Cognitive Load Theory (Sweller, 1988), CalibraEval (Li et al., 2025)

Research digest

Key result

The paradox: GPT-4 and Claude are more biased than weaker models when they rate their own texts. The more precisely a model recognizes its own style, the harder it gravitates toward it. The authors called these "Machiavellian judges": smart and yet unfair. Structured evaluation lets you use the same model as a judge without this skew — you take the single question "which is better?" and split it into five separate ones: relevance, accuracy, depth, logic, clarity. Each criterion is its own question with its own answer. Bias drops by 31.5% — without swapping the model and without fine-tuning.

Principle

The single question "which text is better?" is a judgment by shortcut. The model sees a familiar style and leans toward it before it starts analyzing. Split one question into five separate ones — and each starts from almost zero. Ask it to rate "whose logic is better" — the familiar style doesn't help here. It has to look specifically at the structure of the arguments. Five honest micro-comparisons give a fairer result than one biased macro-comparison.

Why it works

The model is trained to reproduce a particular style — and it perceives that style as "correct." Not a bug, a consequence of training. When asked "which is better?", the familiar style kicks in before the analysis — the model grabs a quick shortcut instead of doing the count. Criteria remove that anchor: style is irrelevant for judging accuracy — you have to look at the facts. The bias toward its own texts isn't the model's "ego" but a statistical effect of pattern similarity. Splitting cuts that effect into five independent pieces.

When to apply

Comparing two versions of a text → choosing the better email, marketplace product description, pitch, or article headline — especially when one of the versions was written by the same model you're asking to judge. NOT a fit for purely subjective judgments ("which do I like better aesthetically") — there's no objective anchor for the criteria.

Mini recipe

1. Anonymize the texts: call them "Text A" and "Text B." Don't write "rate the text you wrote" — the model shouldn't know about authorship. 2. Pick 3–5 criteria for the task: for sales copy — persuasiveness, clarity, specificity, call to buy. For an article — accuracy, logic, depth, readability. 3. Ask it to rate each criterion separately: the winner (A / B / tie) + one sentence on why. All in one prompt. 4. Aggregate: the winner by sum of criteria is the final pick. 5. For important decisions — repeat in a new chat with the texts swapped (A and B trade places). If the same one wins both times, you can trust it.

Examples

[BAD]: `Here are two versions of a product listing description. Which is better?` [GOOD]: `Evaluate two versions of a product description. For each criterion — the winner (A / B / tie) and one sentence on why. 1. Accuracy — any errors or exaggerations? 2. Clarity — is it easy for the target audience to read? 3. Persuasiveness — does it make you want to buy? 4. Specificity — are there details to support a decision? 5. Call to action — is it clear what to do next? Summary: add up the wins and name the overall winner. Text A: [first version] Text B: [second version]`

In plain words

When you ask a model to decide whose text is better — its own or someone else's — it turns into a biased, self-absorbed narcissist. The underlying mechanics are simple: Self-Preference Bias, the pull toward "its own." The model doesn't judge objective quality; it looks for familiar patterns. If a text matches its internal settings in structure, sentence length, and word choice, it gives it top marks. This isn't a conscious choice but a side effect of training: the model has been trained to consider "correct" exactly the style it generates itself.

It's like entering a cooking contest where the judge loves oversalted food, and you happen to have made a dish with exactly that much salt. Technically everything's fair, but the other contestants don't stand a chance, because the judge isn't looking for "tasty" — they're looking for "the way I like it." In the LLM world this becomes a closed loop: the judge model praises the author model simply because they're "of the same blood," even when the result is flat-out garbage.

What's actually happening under the hood: the model recognizes a stylistic fingerprint. If you ask Claude to choose between its own version and a text from GPT-4, it will very likely pick its own, simply because its internal weights resonate with the familiar vocabulary. The researchers confirm that this bias anchor kicks in almost every time. The model sees a reflection of its own algorithms in the text and subconsciously gives itself a like, ignoring the competitor's real usefulness or creativity.

They tested this on text evaluation, but the principle is universal for any automated content approval. If you use the same model both to generate and to check quality (say, in RLHF or when creating synthetic data), you fall into a trap. You don't get the best content — you get an echo chamber where the model pats itself on the back. That's critical for any business building pipelines on AI judges: your "perfect" result may just be the product of systemic self-admiration.

Bottom line: never let a model grade itself without solid guardrails. If you want objectivity, use a model from a different family for evaluation, or at least shuffle the options to throw it off. Self-Preference Bias isn't a bug that'll get fixed tomorrow — it's baked into the firmware. Either you account for the fact that the model will always pull the blanket toward itself, or you'll keep churning out the same self-repeating content that only the model itself likes.

AI lab assistant

Apply this study to your task

Describe what you're working on. AI takes the method and the measured results from this paper and adapts them to your case, or writes a ready prompt built on them.

Based on Self-Preference Bias + Structured Multi-Dimensional Evaluation: Why a Strong Model Is an Unfair Judge, and How to Fix It arXiv:2604.22891

Sign in to apply this study New accounts get 50 free credits.