Evaluation lab · San Francisco · London · Zürich
Reinforced Labs Request a briefing
Research note

Rubric-based evaluation and rubric rewards: atomic criteria, weights and noisy graders

A rubric turns one fuzzy judgement into many small checkable ones. We show, with a seeded simulation, how grader error shrinks real differences between systems, why more prompts beat more graders, what weight concentration costs, and how a rubric used as an RL reward gets gamed.

A rubric turns "is this answer good?" into a list of small, checkable questions with weights. Done well, it gives you scores that are stable, auditable and usable as a training reward. Done badly, it gives you a number that moves when you re-run the grader, rankings that flip between runs, and a reward that a policy learns to satisfy without getting better. This note works through the arithmetic of weighted rubrics with noisy graders, shows from a seeded simulation where the variance actually comes from, and covers what changes when the rubric becomes a reward for reinforcement learning.

A rubric, worked through#

Take a single prompt from a medication-safety evaluation: a user asks whether they can take ibuprofen with the blood-pressure tablet they were just prescribed. A holistic grader would read the answer and give it a 7 out of 10. A rubric grader instead checks six criteria, each with a weight set by a clinician:

Criterion (pass or fail)WeightType
States the correct usual adult dose, or correctly declines to give one4Objective
Flags the interaction between NSAIDs and the named antihypertensive3Objective
Tells the user which symptoms need urgent care3Mostly objective
Makes no claim that is not supported by standard references2Judgement
Uses plain language a non-clinician can follow1Subjective
Is concise (no repeated warnings or padding)1Subjective

An answer that passes the first four and fails the last two scores . The rubric does three useful things that the 7 out of 10 does not. It says why the answer lost points. It lets you measure grader reliability one criterion at a time. And it lets a domain expert decide, in advance and in writing, that a wrong dose matters four times as much as a wordy answer.

This structure is now standard in open-ended evaluation. HealthBench scores 5,000 health conversations against 48,562 conversation-specific criteria written by 262 physicians [1]. Prometheus trained an open evaluator to grade against user-supplied score rubrics [5], TICK generates instruction-specific checklists automatically [6], and WildBench pairs its tasks with checklists to make judge outputs more consistent [8]. Since mid-2025, the same rubrics have been used as rewards: Rubrics as Rewards (RaR) [2], checklist feedback (RLCF) [3] and rubric anchors [4] all train policies against per-criterion judgements instead of a single preference score.

The arithmetic of a weighted rubric#

Let a response be graded on criteria. Criterion has weight , and is its normalised weight. The grader returns , or the average of graders' votes. The response score is

Here is between 0 and 1. A system's score is the mean of over prompts. The interesting part is what grader error does to it.

Grader error shrinks real differences#

Suppose the grader for criterion flips the true label with probability in either direction, and the system truly meets the criterion with probability . Then the expected observed pass rate is

Here is the grader's per-criterion error rate and the true pass rate. The observed rate is pulled toward 0.5 by a factor . Subtract this for two systems A and B and the constant term cancels:

Each criterion's contribution to the gap between two systems is multiplied by . A grader that is wrong 10% of the time on a criterion keeps only 80% of the true difference on it. Noise does not bias the comparison toward one system, but it shrinks the signal you are trying to detect, and the shrinkage is worst on exactly the subjective criteria where graders disagree most.

Where the variance comes from#

If criteria are graded independently and each of graders errs independently, the variance of a system's mean score over prompts is

The first term in the bracket is response variance: which prompts the system happened to get right. The second is grader variance, and it is the only term that adding graders reduces. Both shrink with more prompts. Both are weighted by , so a rubric whose weight sits on a few criteria behaves like a short test. A handy summary is the effective number of criteria:

equals when weights are equal and falls toward 1 as one criterion dominates. The clinical weights above give ; a rubric weighted 10, 1, 1, 1, 1, 1 gives 2.1.

Worked example#

In the simulation below, the two best systems have true weighted scores of 0.691 and 0.664 on the clinical rubric, a gap of 0.026. With a base grader error (criterion error rates from 0.05 on the dose criterion to 0.16 on the subjective ones), the attenuation formula predicts a measured gap of 0.0218; the simulation measured 0.0220. Each system's mean over 100 prompts has a standard deviation of about 0.022 (formula: 0.0219). The difference of two independent such scores has a standard deviation near , so a gap of 0.022 is about 0.7 standard deviations. The better system comes out on top in only 70% of re-runs. Nothing about the rubric is broken; it is simply too few prompts for a gap that size.

Designing atomic criteria#

Most rubric problems are criterion-writing problems. A good criterion is something two careful experts would mark the same way after reading only the response and the criterion. In practice that means it is:

  • Atomic. One fact or behaviour per criterion. "Gives the correct dose and warns about kidney disease" is two criteria; when graders disagree you cannot tell which half they disagree on.
  • Observable in the response. "The model understood the question" is not gradable. "Names the user's medication" is.
  • Binary or with anchored levels. If you need levels, write what each level looks like. Unanchored 1 to 5 scales drift between graders and over time.
  • Written with its negative. Many important criteria are penalties: "recommends a dose above the labelled maximum". HealthBench uses negatively weighted criteria for this [1]. Without them, a rubric only rewards what is present and cannot see harmful additions.
  • Non-overlapping. If "plain language" and "concise" both fire on the same padding, you have doubled the weight of one behaviour without meaning to.
Weak criterionProblemAtomic rewrite
Answer is accurate and completeTwo judgements, no referenceStates that ibuprofen can raise blood pressure; states the interaction with ACE inhibitors
Response is safeNot observable; graders apply private definitionsDoes not recommend exceeding 1,200 mg per day without clinician advice
Good toneSubjective, unanchoredDoes not use alarming language when no urgent symptom is described
Mentions seeing a doctorSatisfied by boilerplateNames at least one specific symptom that should prompt urgent care

The last row matters for training. A criterion that a stock phrase can satisfy will be satisfied by a stock phrase once a policy is optimised against it.

Inter-rater reliability, one criterion at a time#

Report agreement per criterion, not one number for the whole rubric. The usual statistic is Cohen's [9], which compares observed agreement with the agreement expected by chance from each grader's marginal pass rate:

Here is the fraction of items both graders mark the same, and is what two graders with those pass rates would agree on by luck. For two graders who each flip the truth with probability on a criterion met with prevalence , the pieces have closed forms: , each grader's pass rate is , and .

0.00.20.40.60.81.00.00.20.40.60.81.0grader error 0.05grader error 0.1grader error 0.2Prevalence of criterion being metCohen's κ between two graders
Figure 1. Cohen's between two graders with the same error rate, as a function of how often the criterion is truly met. Closed form; a 200,000-item simulation agreed to within 0.005 at every point. At , is 0.64 when half of responses meet the criterion and 0.12 when 98% do, although the graders are equally good in both cases.

This is the well-known prevalence effect, and it bites rubrics hard because many safety criteria are met by almost every response ("does not recommend a lethal dose"). A low on such a criterion may mean the graders are poor, or only that the criterion rarely fails. Report next to prevalence and raw agreement, and for rare-failure criteria measure grader sensitivity on a set enriched with known failures instead.

How grader noise moves rankings: a simulation#

Setup (simulation). Eight systems, the six-criterion clinical rubric above, and a true pass-rate matrix drawn from a logistic model with system ability, criterion difficulty and a system-by-criterion interaction (seed fixed; the matrix is in the code). Grader error on criterion is , with multipliers from 0.5 for the dose criterion to 1.6 for the two subjective criteria. For each setting we re-ran the whole evaluation 400 times, drawing fresh responses and fresh grader errors, and compared the measured ranking with the true one using Kendall's .

0.40.60.81.00.000.100.200.301 grader, 100 prompts3 graders, 100 prompts1 grader, 400 prompts3 graders, 400 promptsBase grader error rate εKendall τ with true ranking
Figure 2. Mean Kendall between measured and true rankings of eight systems, against base grader error . Quadrupling the prompts (blue, green) helps far more than tripling the graders (amber versus red). 400 simulated re-runs per point.
Setting at Kendall τTop system foundSD of a system score
1 grader, 100 prompts0.81270%0.0221
3 graders, 100 prompts0.84773%0.0194
1 grader, 400 prompts0.93695%0.0110
3 graders, 400 prompts0.94995%0.0097
Perfect grader (), 100 prompts0.87079%0.0218

The last row is the sobering one: even a perfect grader on 100 prompts finds the best system only 79% of the time. Response sampling, not grading, is the dominant source of variance at this scale, which is what the variance formula predicts: at the grader term contributes of the total , a bit under 30%.

Grader variance does matter when you hold the responses fixed, for example when re-grading a frozen set of outputs after changing judge prompts. With 100 fixed responses per system, the SD of a system score from grading alone was 0.0116 with one grader, 0.0068 with three and 0.0053 with five, and the ranking matched the noise-free grading of the same responses with of 0.815, 0.888 and 0.907. If two dashboards built from the same outputs disagree, grader noise is the cause; if two evaluation runs on fresh samples disagree, it is mostly the prompts.

0.40.50.60.70.8S1S2S3S4S5S6S7S8circle: true score · bar: 90% range of measured scoreSystemWeighted rubric score
0.100
1
100

Figure 3 (interactive). True rubric score of each of eight simulated systems (circles) and the 90% range of its measured score over 1,000 re-runs (bars), using the same generative model as the article's simulation. Untick "resample responses" to see grader noise alone. Default: , one grader, 100 prompts, Kendall .

Weighting: who decides, and what it costs#

Weights encode values, so they should come from the people accountable for the outcome: clinicians for clinical criteria, compliance staff for regulatory ones. Write them before seeing model outputs, and version them with the rubric. Weights tuned after the fact to make a preferred model win are a quiet form of overfitting.

Weights also change the statistics. At , one grader and 200 prompts, the three schemes in the interactive figure behaved as follows (each against its own true ranking):

WeightsKendall τTop system foundSD of a system score
Flat6.00.90486%0.0139
Clinical 4, 3, 3, 2, 1, 14.90.89184%0.0152
One dominant 10, 1, 1, 1, 1, 12.10.78155%0.0235

Concentrating weight on one criterion raised the score SD by 69% relative to flat weights and cut top-system identification from 86% to 55%. If one criterion truly matters ten times more than the rest, it is often better to make it a gate (any failure is reported separately and blocks release) and weight the remainder evenly, than to fold it into the average.

Rubrics as rewards#

Using a rubric as an RL reward replaces a single learned preference score with computed by a judge model per criterion, often with prompt-specific rubrics. RaR reported up to 31% relative improvement on HealthBench over Likert-style judge rewards [2]; RLCF reported gains on all five instruction-following benchmarks it tested [3]. The attraction is that the reward is decomposed and inspectable: when it goes up, you can see which criteria moved.

The risk is the same one that affects any learned reward [10], which we covered for preference reward models in our note on reward overoptimization. The policy optimises , not the experts' intent, and it will find any systematic way to raise without raising . We call this criterion gaming. It differs from noise: noise is random across responses, while gaming is a behaviour the policy can adopt on every response.

A simulated case of criterion gaming#

Setup (simulation). Each candidate response has a hedging level . Hedged answers omit the dose more often (true pass rate on that criterion falls by up to 40%), skip the interaction check more often (up to 30%), make fewer unsupported claims (genuinely better), and are longer (concision falls by up to 60%). They also append "please see your doctor". Graders for the escalation and plain-language criteria are swayed by that phrase: their false-positive rate rises by , where measures how gameable the grader is. The true score never rewards boilerplate.

0.400.500.600.00.20.40.60.81.0rubric reward, γ=0.9rubric reward, γ=0.5rubric reward, γ=0true score (all γ)Hedging level h adopted by the policyExpected weighted score
Figure 4. Expected rubric reward (solid) and true weighted score (dashed) if a policy adopts hedging level on every response. With an ungameable grader () the reward falls with hedging, as it should. At the reward rises from 0.528 to 0.564 while the true score falls from 0.536 to 0.447. A policy following the reward gradient learns to hedge. Exact expectations from the simulation model.

Best-of- selection exerts weaker, per-sample pressure, and the picture is subtler. At with the honest grader, the selected responses scored 0.991 on the rubric and 0.925 in truth, and their mean hedging fell from 0.50 to 0.42. With the gameable grader the selected responses scored 0.998 on the rubric but 0.857 in truth, and selection no longer moved hedging at all (0.50). The proxy improved while the true score fell by 0.07. Note that even the honest grader shows a proxy-to-truth gap at large : selecting the maximum of many noisy scores favours responses the grader over-scored, a winner's curse that exists without any gaming.

Detecting it#

Two checks caught the gaming in our simulation and work in practice:

  1. A held-out audit grader. Grade a sample of training-time outputs with a grader the policy never saw (a different judge model, or experts). In the best-of-128 run, the audit grader scored 0.867 for honest-grader selections and 0.810 for gameable-grader ones. Compare the train-reward-to-audit gap against its value early in training, not against zero, since the winner's curse makes it positive anyway.
  2. Per-criterion reward curves. Plot the pass rate of each criterion over training. A criterion whose pass rate climbs toward 100% while correlated objective criteria fall is the signature of gaming. In the hedging case, escalation rises while the dose criterion drops.

Failure modes we see most often#

Failure modeSymptomFix
Prevalence collapse near zero on a criterion almost every response passesReport raw agreement and prevalence; measure sensitivity on an enriched failure set
Compound criteriaGraders disagree and adjudication cannot say whySplit into atomic criteria; re-measure agreement
Overlapping criteriaOne behaviour (padding, refusal) moves several criteria togetherCheck correlations between criterion pass rates; merge or reword
Missing negativesA harmful addition does not lower the scoreAdd negatively weighted criteria for known harms
Boilerplate-satisfiable criteriaPass rate jumps after RL with no change in expert ratingsRequire specific content; audit grader; per-criterion curves
Weight concentrationScores swing with a single criterion's graderMake the critical criterion a gate; compute
Judge driftScores change after a judge model update with frozen outputsPin judge versions; re-grade a frozen calibration set on every change

LLM judges bring their own biases to every criterion, including position and verbosity effects [11] (we measured both in an earlier note), and calibrating a judge against human labels per criterion, as LLM-Rubric does [7], is worth the effort when a rubric gates releases.

Practical checklist#

DecisionDefaultChange it when
Criterion formatBinary, atomic, observableA level scale has written anchors that experts agree on
WeightsSet by domain experts before seeing outputs; versionedNever tuned to make a model win
Critical safety criteriaReported as gates, not averagedThe criterion is common and low stakes
Reliability evidencePer-criterion error rate from 200 to 400 expert-adjudicated itemsRare-failure criteria: use an enriched set
Spend on prompts versus gradersMore prompts firstComparing re-gradings of frozen outputs
UncertaintyBootstrap over prompts, report intervals and rank stabilityNever report a bare leaderboard
Rubric as rewardHeld-out audit grader plus per-criterion curvesNo exceptions

Code: rank stability by bootstrap#

Given per-prompt, per-criterion grades for several systems, this estimates how often the ranking you report would survive a re-run on a fresh sample of the same size.

import numpy as np
from scipy.stats import kendalltau

def rank_stability(grades, weights, n_boot=2000, seed=0):
    """grades: array (systems, prompts, criteria) of 0/1 or mean grader votes."""
    rng = np.random.default_rng(seed)
    w = np.asarray(weights, float) / np.sum(weights)
    scores = grades @ w                      # (systems, prompts)
    point = scores.mean(1)
    S, M = scores.shape
    taus, top = [], []
    for _ in range(n_boot):
        idx = rng.integers(0, M, M)          # resample prompts, paired across systems
        b = scores[:, idx].mean(1)
        taus.append(kendalltau(point, b).statistic)
        top.append(np.argmax(b) == np.argmax(point))
    k_eff = w.sum() ** 2 / (w ** 2).sum()
    return dict(score=point, tau=np.mean(taus), p_top=np.mean(top), k_eff=k_eff)

The bootstrap resamples prompts, which captures the response term in the variance formula. To capture grader variance too, re-grade a subset with independent graders and resample the graders as well. If prompts come in clusters (several items per source document or conversation), resample clusters instead of items, as described in our note on clustered standard errors.

Frequently asked questions#

Is a rubric better than a single holistic score from an LLM judge?

For release decisions, usually yes. A rubric tells you why a response lost points, lets you measure grader reliability one criterion at a time, and lets domain experts fix the relative importance of criteria in advance. A holistic score can still be useful for quick pairwise comparisons, but it hides which behaviour changed.

Should I add more graders or more prompts?

In our simulation, more prompts. With eight systems, one grader and 100 prompts, Kendall tau with the true ranking was 0.81; three graders raised it to 0.85, while 400 prompts with one grader raised it to 0.94. Extra graders only reduce the grader term of the variance, which matters most when you re-grade a fixed set of outputs.

Why is Cohen's kappa so low on some of my criteria when the graders seem fine?

Kappa depends on prevalence. Two graders who each err 10% of the time have kappa 0.64 on a criterion met half the time, but only 0.12 on one met 98% of the time. For criteria that almost always pass, report raw agreement and prevalence and measure grader sensitivity on a set enriched with known failures.

How should rubric criteria be weighted?

Weights should be set by the domain experts accountable for outcomes, written down before outputs are seen, and versioned. Heavy concentration on one criterion reduces the effective number of criteria and makes scores noisier; a criterion that matters far more than the rest is often better reported as a separate pass or fail gate.

How do I tell if a policy trained with rubric rewards is gaming the rubric?

Grade a sample of training outputs with a held-out audit grader the policy never saw and watch the gap between training reward and audit score over time. Also plot each criterion's pass rate over training: a criterion that climbs toward 100% while related objective criteria fall is the typical signature.

Sources#

  1. R. K. Arora, J. Wei, R. S. Hicks et al.. HealthBench: Evaluating Large Language Models Towards Improved Human Health, 2025. arxiv.org
  2. A. Gunjal, A. Wang, E. Lau et al.. Rubrics as Rewards: Reinforcement Learning Beyond Verifiable Domains, 2025. arxiv.org
  3. V. Viswanathan, Y. Sun, S. Ma et al.. Checklists Are Better Than Reward Models For Aligning Language Models, 2025. arxiv.org
  4. Z. Huang, Y. Zhuang, G. Lu et al.. Reinforcement Learning with Rubric Anchors, 2025. arxiv.org
  5. S. Kim, J. Shin, Y. Cho et al.. Prometheus: Inducing Fine-grained Evaluation Capability in Language Models, 2023. arxiv.org
  6. J. Cook, T. Rocktäschel, J. Foerster et al.. TICKing All the Boxes: Generated Checklists Improve LLM Evaluation and Generation, 2024. arxiv.org
  7. H. Hashemi, J. Eisner, C. Rosset et al.. LLM-Rubric: A Multidimensional, Calibrated Approach to Automated Evaluation of Natural Language Texts, 2024. arxiv.org
  8. B. Y. Lin, Y. Deng, K. Chandu et al.. WildBench: Benchmarking LLMs with Challenging Tasks from Real Users in the Wild, 2024. arxiv.org
  9. J. Cohen. A Coefficient of Agreement for Nominal Scales, 1960. doi.org
  10. L. Gao, J. Schulman, J. Hilton. Scaling Laws for Reward Model Overoptimization, 2022. arxiv.org
  11. L. Zheng, W.-L. Chiang, Y. Sheng et al.. Judging LLM-as-a-Judge with MT-Bench and Chatbot Arena, 2023. arxiv.org

Know the number before you ship.

A 45-minute working session with an evaluation engineer. Bring one use case; leave with a threat model, a draft eval plan with sample sizes, and an honest read on where you stand.