This prompt is for evaluation engineers, compliance leads, and AI audit teams who need automated model-graded scores that are explainable, traceable, and defensible. The core job-to-be-done is converting a subjective quality assessment into a structured, evidence-backed judgment that a human reviewer or auditor can quickly verify. Unlike a standard rubric that outputs only a numeric score, this prompt forces the LLM judge to produce a justification, cite specific evidence from the evaluated output, and flag its own uncertainty. This is essential when scores feed into regulated workflows, customer-facing quality guarantees, or internal governance reports where a naked number is insufficient.
Prompt
Rubric with Justification Requirement Prompt Template

When to Use This Prompt
Define the job, ideal user, required context, and constraints for the Rubric with Justification Requirement prompt.
Use this prompt when the cost of an unexplained score is high—for example, when grading AI outputs for compliance with legal or safety policies, when scoring candidate responses in a high-stakes evaluation pipeline, or when building a dataset of graded examples that will be audited later. The prompt is designed to be wired into an automated evaluation harness where each justification is logged alongside the score, enabling downstream spot-checks, inter-rater reliability analysis, and audit trail construction. It is not a lightweight replacement for a simple pass/fail check; it adds tokens, latency, and complexity that are only justified when explainability is a hard requirement.
Do not use this prompt for high-throughput, low-risk scoring where speed and cost are the primary constraints. If you are grading thousands of short-form outputs where a numeric score is sufficient and human review is unlikely, a standard rubric without justification will be faster and cheaper. Similarly, avoid this prompt when the evaluation criteria are purely mechanical and can be checked with deterministic code—a regex or schema validator is more reliable than an LLM judge for format compliance. Finally, if the justification itself could leak sensitive information from the evaluated output, ensure your logging and storage practices redact PII before persisting the judge's response.
Before implementing, you must define the evaluation dimensions, the scoring scale, and the expected structure of the justification. The prompt template expects you to provide these as inputs. You should also prepare a small set of 5-10 human-annotated examples that demonstrate the desired relationship between scores, justifications, and evidence. These examples will be used to calibrate the judge and to build a regression test suite that gates any future changes to the rubric. The next section provides the copy-ready template you will adapt with your specific criteria.
Use Case Fit
Where the rubric-with-justification prompt template delivers value and where it introduces risk. Use these cards to decide if this prompt fits your evaluation pipeline before you invest in integration.
Good Fit: Audit-Ready Evaluation Pipelines
Use when: you need every automated score to be explainable to auditors, compliance reviewers, or external stakeholders. Guardrail: require justification fields in the output schema and run a secondary check that justifications cite specific evidence, not generic restatements of the score.
Bad Fit: High-Throughput Real-Time Scoring
Avoid when: latency budgets are under 500ms or you're scoring thousands of items per minute. Justification generation adds significant token output and reasoning time. Guardrail: use a lightweight pass/fail rubric without justification for real-time paths, and reserve this template for offline audit samples.
Required Inputs: Ground-Truth Evidence or Source Material
Risk: justifications become hallucinated rationalizations when the judge lacks access to the source material being evaluated. Guardrail: always pass the original source context, reference answer, or evidence document alongside the output being scored. Never ask a judge to justify a score from memory.
Operational Risk: Justification Quality Drift
What to watch: over time, justifications may become shorter, vaguer, or pattern-matched to scores without real reasoning. Guardrail: periodically sample justifications and run a justification-quality check prompt that grades specificity, evidence linkage, and whether the justification actually supports the assigned score.
Operational Risk: Uncertainty Flag Fatigue
What to watch: judges may over-flag uncertainty on borderline cases or under-flag when confidence is misplaced. Guardrail: calibrate uncertainty flags against human adjudication on a held-out set. Set explicit criteria for when uncertainty must be raised, such as conflicting evidence or missing source material.
Integration Pattern: Human Review Escalation
Use when: the justification reveals low confidence, flags missing evidence, or produces a score near a critical decision boundary. Guardrail: route any output where the uncertainty flag is true or the justification contains phrases like 'insufficient evidence' or 'cannot determine' to a human review queue before the score is used downstream.
Copy-Ready Prompt Template
A reusable prompt template that requires LLM judges to output score justifications, evidence citations, and uncertainty flags alongside numeric scores.
This prompt template is the core contract for an explainable, audit-grade LLM judge. It forces the model to produce not just a score, but a structured justification, a direct citation to the source material, and an explicit uncertainty flag. This design is critical for compliance, audit, and debugging workflows where a numeric score alone is a black box. The template uses square-bracket placeholders for all dynamic inputs, making it safe to copy directly into your application code or a prompt management system. Adapt the [RUBRIC_DIMENSIONS], [OUTPUT_SCHEMA], and [CONSTRAINTS] to match your specific evaluation task.
textYou are an expert evaluator. Your task is to score a piece of AI-generated content against a provided rubric. You must produce a structured output that includes your score, a detailed justification, a direct citation from the source material, and an uncertainty flag. ## EVALUATION INPUT [INPUT_TEXT] ## EVALUATION CONTEXT [SOURCE_MATERIAL] ## RUBRIC DIMENSIONS [RUBRIC_DIMENSIONS] ## SCORING SCALE [SCORING_SCALE] ## OUTPUT SCHEMA You must respond with a single JSON object that strictly follows this schema: { "score": <number>, "justification": "<string explaining the score, referencing specific rubric criteria and evidence>", "evidence_citation": "<a direct, verbatim quote from the SOURCE_MATERIAL that supports the justification>", "uncertainty_flag": "<one of: 'none', 'low', 'high'>", "uncertainty_reason": "<explain why the flag was set, e.g., ambiguous source, conflicting evidence, edge case>" } ## CONSTRAINTS [CONSTRAINTS] ## EXAMPLES [EXAMPLES] ## INSTRUCTIONS 1. Read the INPUT_TEXT and SOURCE_MATERIAL carefully. 2. Apply each RUBRIC_DIMENSION to the INPUT_TEXT. 3. Determine a score based on the SCORING_SCALE. 4. Write a justification that explicitly connects the score to the rubric criteria and the evidence. 5. Extract a direct, verbatim quote from the SOURCE_MATERIAL as your evidence_citation. If no single quote is sufficient, use the most relevant one and note the limitation in the uncertainty_reason. 6. Set the uncertainty_flag to 'high' if the evidence is contradictory, missing, or highly ambiguous. Set it to 'low' if there is minor ambiguity. Set it to 'none' only if the evidence is clear and directly supports the score. 7. Output only the JSON object. Do not include any other text.
To adapt this template, start by defining your [RUBRIC_DIMENSIONS] and [SCORING_SCALE] with precise, non-overlapping language. The [CONSTRAINTS] field is where you should inject rules like 'If the source material is empty, set the uncertainty_flag to high and score as 0.' The [EXAMPLES] block is not optional for high-stakes use; provide at least one few-shot example for each uncertainty level to calibrate the judge's behavior. When wiring this into an application, validate the output JSON against the schema before accepting the score. A common failure mode is the model providing a paraphrased justification in the evidence_citation field instead of a verbatim quote; a post-processing check for exact substring matches in the source material can catch this and trigger a retry.
Prompt Variables
Required inputs for the Rubric with Justification Requirement prompt. Each placeholder must be populated before the prompt is sent to the judge model. Missing or malformed variables are the most common cause of invalid evaluation output.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[RUBRIC_DIMENSIONS] | Defines the quality dimensions to score, each with levels, anchors, and weight | Accuracy: 1-5 scale where 5=Fully correct, 1=Completely incorrect; Completeness: 1-5 scale where 5=All required elements present, 1=Missing critical elements | Must contain at least 2 dimensions. Each dimension requires a name, scale range, and anchor descriptions for min and max values. Parse check: confirm JSON array of dimension objects |
[JUSTIFICATION_REQUIREMENTS] | Specifies what the judge must include in each justification: evidence citations, reasoning steps, uncertainty flags | For each score, cite the specific passage from [SOURCE_MATERIAL] that supports your judgment. If no evidence exists, flag as UNSUPPORTED. If evidence is partial, flag as PARTIAL with confidence 0-100. | Must define at least 3 required justification elements. Must include citation format specification. Must define uncertainty flag conditions. Schema check: confirm structured requirements object |
[SOURCE_MATERIAL] | The ground-truth or reference content against which outputs are evaluated | Original policy document section 4.2: 'All refund requests must be processed within 5 business days of receipt.' | Can be null if evaluating without ground truth, but justification requirements must then specify how to handle missing evidence. If provided, must be plain text or structured passages with identifiers. Null allowed only when [EVALUATION_TYPE] is reference-free |
[OUTPUT_TO_EVALUATE] | The model-generated content being scored against the rubric | The refund will be processed within 3-5 days after we receive your request. | Required. Must be non-empty string. Length should be within model context limits after accounting for rubric and source material. Pre-validate: check for empty or whitespace-only input |
[SCORING_TYPE] | Determines whether scoring is numeric, categorical, or binary per dimension | numeric | Must be one of: numeric, categorical, binary. Controls output schema validation rules. If numeric, scores must be integers within dimension ranges. If categorical, must match defined level labels. If binary, must be PASS or FAIL |
[EVIDENCE_GROUNDING_RULES] | Defines how strictly justifications must be tied to source material | Every claim in the justification must map to a specific line or passage in [SOURCE_MATERIAL]. Direct quotes require line numbers. Paraphrased claims require passage references. Claims without source mapping are invalid. | Must specify citation granularity (line, passage, section). Must define what constitutes an unsupported claim. Must specify whether partial evidence is acceptable. Parse check: confirm rules object with citation_format and unsupported_claim_policy fields |
[UNCERTAINTY_THRESHOLD] | The confidence level below which the judge must flag a score as uncertain | 70 | Must be integer between 0 and 100. Scores with confidence below this threshold will trigger uncertainty flags in output. Validation: check range and type. Default to 70 if not specified but warn in logs |
[OUTPUT_SCHEMA] | The exact JSON structure the judge must return, including score fields, justification fields, and metadata | {"scores": [{"dimension": string, "score": number, "confidence": number, "justification": string, "evidence_citations": string[], "uncertainty_flag": boolean}], "overall_score": number, "evaluation_metadata": {"judge_model": string, "timestamp": string}} | Required. Must be valid JSON Schema or example structure. Every field in schema must have a corresponding requirement in [JUSTIFICATION_REQUIREMENTS]. Schema check: validate JSON parse, confirm required fields present, confirm field types match [SCORING_TYPE] |
Implementation Harness Notes
How to wire the justification-requirement rubric prompt into an evaluation pipeline with validation, retries, and audit logging.
This prompt is designed to be called by an LLM judge service that evaluates another model's output. The judge receives the original input, the candidate output, and the rubric with justification requirements. The prompt template should be treated as a function: evaluate(input, output, rubric) -> {score, justification, evidence, uncertainty}. The calling application must supply all square-bracket placeholders before sending the request. Do not use this prompt for real-time user-facing scoring where latency is critical—justification generation adds tokens and time. Reserve it for offline evaluation, regression testing, audit sampling, and compliance review workflows where explainability is required.
Wiring the prompt into an application requires a structured output contract. Configure your model API call with JSON mode or a strict function-calling schema that enforces the output shape: score (numeric or categorical), justification (string), evidence (array of strings with source citations), and uncertainty (object with level and reason fields). On the application side, validate the response before accepting it: check that score falls within the defined scale, that justification is non-empty and references specific rubric dimensions, that evidence items point to actual source spans, and that uncertainty.level matches a predefined enum (e.g., low, medium, high). If validation fails, retry once with the validation errors injected into the prompt as additional context. After two failures, log the raw response and escalate for human review rather than silently accepting a malformed score.
Model choice matters. Use a model with strong instruction-following and reasoning capabilities for the judge role—frontier models like GPT-4, Claude 3.5 Sonnet, or Gemini 1.5 Pro are appropriate. Smaller or faster models often produce justifications that sound plausible but fail evidence-matching checks. Temperature should be set low (0.0–0.2) to reduce variance in scoring and justification quality. If your evaluation pipeline processes high volumes, consider batching evaluations and using a separate async worker queue. Store every evaluation result—including the prompt version, model version, timestamp, raw response, and validation outcome—in an audit log for downstream review. This is especially important for compliance use cases where score justifications may be challenged or reviewed by auditors.
Retry and failure handling must distinguish between format failures and content failures. A format failure (missing JSON field, wrong type) can be retried with stricter schema instructions. A content failure (justification contradicts the score, evidence is fabricated) should not be retried—it indicates the judge model is not reliable for that evaluation task and may require rubric simplification, model upgrade, or human fallback. Implement a justification quality check as a secondary validation step: use a lightweight classifier or regex-based check to verify that the justification text references the specific rubric dimensions and evidence items it claims to use. If the justification is generic or circular (e.g., 'scored 4 because it deserves a 4'), flag the evaluation for human review.
Integration with existing eval frameworks is straightforward. If you use Braintrust, LangSmith, or Arize, wrap this prompt as a custom scorer that returns the structured JSON. The score field maps to your metric, while justification and evidence fields become metadata for trace inspection. For CI/CD pipelines, gate deployment on a minimum percentage of evaluations passing both score thresholds AND justification quality checks. A passing score with a hallucinated justification is a silent failure that undermines the audit trail. Finally, periodically sample and manually review a subset of justifications against the original outputs to detect judge drift—LLM judges can develop systematic biases over time, and justification requirements help surface those biases faster than numeric scores alone.
Common Failure Modes
When a rubric requires justifications, the judge can fail in predictable ways. These are the most common failure modes and how to prevent them before they corrupt your evaluation pipeline.
Vague Justifications
What to watch: The judge outputs generic statements like 'The response was good' or 'The answer is mostly correct' without citing specific evidence from the output or the rubric criteria. This makes scores unverifiable and defeats the purpose of requiring justifications. Guardrail: Include a minimum specificity requirement in the prompt. Require the judge to quote the specific output text, name the rubric dimension, and explain why the evidence matches the score level chosen.
Score-Justification Mismatch
What to watch: The justification describes a high-quality output but the numeric score is low, or vice versa. The judge's reasoning and its final score are inconsistent, indicating a failure in the model's internal logic. Guardrail: Add a self-consistency check instruction. After the judge produces the score and justification, prompt it to verify that the justification's severity and sentiment directly support the assigned numeric value. Flag mismatches for human review.
Evidence Hallucination
What to watch: The justification cites a quote or fact that does not exist in the original output being evaluated. The judge fabricates evidence to support its score, creating a false audit trail. Guardrail: Implement a post-hoc grounding check. Use a separate, lightweight prompt or string-matching function to verify that every quoted string in the justification is a substring of the original output. Reject or flag justifications with unverifiable citations.
Uncertainty Omission
What to watch: The judge assigns a definitive score and writes a confident justification for an ambiguous or borderline case where a human would be uncertain. The required uncertainty flag is missing or set to 'none' incorrectly. Guardrail: Explicitly define uncertainty triggers in the prompt. Instruct the judge to set a high-uncertainty flag when evidence is contradictory, the output falls exactly on a score boundary, or the rubric criteria are only partially met. Audit a sample of low-uncertainty scores.
Rubric Criterion Neglect
What to watch: The justification focuses on general quality, style, or helpfulness but ignores the specific, constrained criteria defined in the rubric (e.g., a 'conciseness' rubric is scored based on 'tone'). The judge defaults to a generic helpfulness evaluation. Guardrail: Structure the output schema to require a separate justification field for each rubric dimension. This forces the judge to address every criterion explicitly rather than producing a single, unfocused block of text.
Overly Deferential Justification
What to watch: The justification uses hedging language like 'could be considered,' 'might be seen as,' or 'arguably' to avoid making a decisive call, especially on negative criteria. This leads to score inflation and reduces the distinction between score levels. Guardrail: Add a tone directive to the prompt. Instruct the judge to use declarative, definitive language based on the evidence. Prohibit hedging phrases in the justification unless the rubric explicitly defines a borderline case that warrants it.
Evaluation Rubric
Use this rubric to test whether the LLM judge produces valid, explainable, and trustworthy scores with justifications. Each criterion targets a specific failure mode in automated evaluation pipelines.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Justification Presence | Every score dimension includes a non-empty justification string | Missing or null justification for any scored dimension | Parse output JSON; assert |
Evidence Citation | Justification references specific source text or output excerpt when scoring groundedness or factuality | Vague language like 'the output is good' without quoting source material | Regex check for quoted text or section references in justification; human spot-check 20 samples |
Uncertainty Flag Output |
| Missing | Schema validation against expected uncertainty object shape; assert |
Score-Justification Consistency | Numeric score aligns with justification text direction (positive justification maps to high score, negative to low) | Score of 5/5 with justification describing major errors, or score of 1/5 with praise-only justification | LLM-as-judge meta-evaluation: another judge checks alignment; flag >10% inconsistency rate across test set |
Refusal Handling | Judge outputs | Judge assigns a low score instead of refusing, or refuses without providing a reason | Test with 5 known policy-violating inputs; assert |
Partial Credit Application | Judge applies partial credit rules defined in rubric when output is partially correct | Binary 0-or-full-credit scoring on dimensions where rubric specifies partial credit levels | Test with 10 partially correct outputs; assert score distribution uses intermediate values, not just extremes |
Confidence Calibration |
| High confidence (≥0.9) on scores that disagree with human raters by >1 point on a 5-point scale | Compare judge confidence against human-judge agreement on 50-item calibration set; flag if high-confidence errors exceed 10% |
Output Schema Validity | Full JSON output validates against expected schema with all required fields present | Missing | JSON Schema validation in test harness; reject any output that fails structural validation |
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Adapt This Prompt
How to adapt
Start with the base template and a single scoring dimension. Remove the [UNCERTAINTY_FLAGS] and [EVIDENCE_CITATION] fields from the output schema to speed up iteration. Use a lightweight model call without structured output enforcement—just ask for the justification in prose.
codeScore the [OUTPUT] against [CRITERION] on a 1–5 scale. Provide a 2-sentence justification.
Watch for
- Justifications that restate the score without reasoning
- Missing evidence when the score is extreme
- Inconsistent scoring between runs on the same input

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us