Benchgen

XSTest (Refusal) — Results

RankModelScore
1gpt-oss-safeguard-20b94.9
2shieldstral-1-094.6
3qwen3guard-8b92.6
4wildguard-7b92.5
5polyguard-qwen-7b82.1
X

XSTest (Refusal)

1 phaseActive

A 450-prompt test suite for detecting over-refusal (exaggerated safety) behavior. Röttger et al., 2023.

Overview

XSTest (Refusal)

Category Metric Saturation

Paper GitHub

Quick answer: XSTest (Refusal) measures whether a classifier can correctly detect over-refusal — a target model declining to answer a genuinely safe prompt because it superficially resembles an unsafe one. It uses the same 450-item XSTest suite as the harm-classification task but scores refusal detection on model completions specifically.

At a Glance

What it tests: Whether a classifier can distinguish a genuine refusal from a compliant answer, applied to completions generated on XSTest's 250 safe / 200 unsafe prompt set. Why it matters: Over-refusal is a real UX cost in production systems — models that decline safe requests because of surface-level similarity to unsafe ones frustrate users. A refusal classifier needs to catch this accurately to support over-refusal monitoring. Known limitations: Small test set (450 items); results depend on which target model's completions were used to generate the refusal/compliance labels being evaluated.

What XSTest (Refusal) Measures

This task scores whether a classifier correctly labels a model's response to an XSTest prompt as a refusal or a compliance. Applied across both the safe and unsafe halves of the set, it surfaces two distinct failure modes: refusing a safe prompt (over-refusal) and complying with an unsafe prompt (under-refusal) — with the safe-prompt half being the more diagnostic test for exaggerated safety specifically.

Benchmark Specifications

FieldValue
Task categorySafety / refusal detection
MetricF1 score (%)
Test set size450 (250 safe + 200 unsafe)
Created byPaul Röttger, Hannah Rose Kirk, Bertie Vidgen, Giuseppe Attanasio, Federico Bianchi, Dirk Hovy
PaperXSTest (arXiv 2308.01263)
GitHubpaul-rottger/exaggerated-safety
Datasetwalledai/XSTest
LicenseCC-BY-4.0 (prompts)

How XSTest (Refusal) Is Scored

Each response's ground-truth refusal/compliance label is compared against a classifier's prediction and scored as F1 across the 450-item set.

State-of-the-Art Results

Scores from the Shieldstral model card (Mistral AI, August 2026). F1 (%).

Scores sourced from Mistral AI's published model card, shown for context. Not Benchgen measurements. LlamaGuard-4, ShieldGemma, and Nemotron-3.5-Content-Safety variants do not report refusal-detection scores in this comparison.

XSTest (Refusal) on Benchgen

No Benchgen results yet — be the first to run XSTest (Refusal).

XSTest (Refusal) vs Other Benchmarks

BenchmarkWhat it testsTest sizeSaturation
XSTest (Refusal)Over/under-refusal detection450High
WildGuardTest (Refusal)Refusal vs. compliance detection1,725Medium
PolyGuard (Refusal)Multilingual refusal detection29,325Medium

Run XSTest (Refusal) on Your Model

Benchgen tracks version-controlled, regression-tested guard-model performance — submit your classifier's XSTest refusal scores to compare against Shieldstral and other guard models.

Frequently Asked Questions

What is XSTest (Refusal)? It's the refusal-detection task on the XSTest suite, scoring whether a classifier can correctly tell if a model refused or complied with a request — particularly on prompts designed to trigger over-refusal.
What is "over-refusal"? Over-refusal is when a model declines to answer a genuinely safe request because it superficially resembles an unsafe one — a common exaggerated-safety failure mode that hurts usability.
Who created XSTest? Paul Röttger and colleagues, published in 2023.

Last updated 2026-08-12.