This prompt is a production-grade triage mechanism for platform safety teams who must automatically detect, classify, and route potential child safety risks in user-generated content or AI interactions. It is not a prompt for generating user-facing responses. Its sole job is to act as a first-line filter that preserves critical evidence, assigns a severity classification, and determines the correct specialized review queue before any human reviewer sees the content. The ideal user is a trust-and-safety engineer or ML platform operator integrating this prompt into an internal moderation pipeline where mandatory reporting obligations exist and where routing precision directly impacts both child safety outcomes and reviewer operational capacity.
Prompt
Child Safety Concern Human Review Routing Prompt

When to Use This Prompt
Defines the operational context, required inputs, and critical constraints for deploying the Child Safety Concern Human Review Routing Prompt in a production AI system.
Deploy this prompt when your system needs to make a structured, auditable routing decision on content that may involve child exploitation, grooming, CSAM, or other minor safety concerns. Required inputs include the raw content or interaction transcript, any available user metadata, and a defined set of review queues with escalation paths. The prompt expects a strict JSON output schema that includes a severity level (e.g., critical, high, medium, low), a routing target, an evidence summary with exact quotes, and a confidence score. This structure is essential for downstream automation: a critical classification should trigger immediate escalation and potential evidence lock, while a low classification might batch for periodic review. The prompt must be wired into a harness that validates the output schema, logs every decision for audit, and enforces a human-in-the-loop review for all critical and high severity classifications before any external action is taken.
Do not use this prompt for generating responses to end users, for making final content removal decisions without human review, or in any context where the model is asked to determine the legality of content. The prompt classifies risk and routes for human judgment; it does not replace it. Avoid deploying this prompt in low-latency user-facing chat flows where the routing decision would block the user experience. Instead, use it as an asynchronous post-processing or inline filter step where the system can afford the latency of a careful classification. If your platform does not have clearly defined review queues, mandatory reporting workflows, or the ability to preserve evidence, do not deploy this prompt until those operational prerequisites are in place. A prompt without a receiving process creates a safety gap, not a safety net.
Use Case Fit
Where this prompt works in production and where it introduces unacceptable risk or operational overhead.
Good Fit: User-Generated Content Platforms
Use when: your platform allows minors to interact or share content, and you need automated first-pass detection of child safety risks. Guardrail: Pair with human review for all flagged content; never auto-resolve without a trained moderator.
Bad Fit: Direct Child Interaction Without Human Oversight
Avoid when: the AI interacts directly with children in real-time without a chaperone. Risk: The prompt may miss contextual grooming or fail to escalate fast enough. Guardrail: This prompt is a triage tool, not a real-time guardian. Always insert a human-in-the-loop for child-facing features.
Required Inputs: Structured User Context
What to watch: The prompt's accuracy degrades significantly without user age, session history, and content metadata. Guardrail: Enforce strict input validation. If [USER_AGE] or [CONTENT_TYPE] is missing, default to human review rather than attempting classification.
Operational Risk: False Negative Fatigue
What to watch: A single missed true positive can have catastrophic consequences. Guardrail: Tune the model for high recall over precision. Accept a higher false-positive rate to ensure no high-risk content is missed. Route all low-confidence predictions to a prioritized review queue.
Operational Risk: Evidence Preservation Failure
What to watch: Escalation without preserving the full context (timestamps, user IDs, raw content) creates an incomplete report for investigators. Guardrail: The prompt output must include a structured evidence block. Implement a post-processing step that verifies evidence completeness before sending to the review tool.
Bad Fit: General Content Moderation
Avoid when: your goal is generic toxicity or spam detection. Risk: This prompt is calibrated for child safety specifics and will miss non-child-related harms while over-escalating benign content that mentions minors. Guardrail: Use a dedicated general safety classifier for broad moderation. Reserve this prompt for the specialized high-risk queue.
Copy-Ready Prompt Template
A production-ready prompt for classifying child safety risks, preserving evidence, and routing to the correct human review queue.
This prompt template is designed to be integrated into an AI safety screening layer. It receives a user interaction, analyzes it for child safety concerns, and produces a structured classification payload. The prompt explicitly instructs the model not to generate a user-facing response, enforcing a silent detection and routing pattern that prevents the AI from accidentally engaging with harmful content. The output is designed for consumption by a downstream orchestration system that manages review queues and mandatory reporting workflows.
textSYSTEM: You are a child safety content classifier for a platform operations team. Your role is to analyze user interactions for potential child safety risks. You do not generate user-facing responses. You output only structured analysis for human review routing. INPUT: [USER_INPUT] CONTEXT: - User ID: [USER_ID] - Session ID: [SESSION_ID] - Conversation History (last 3 turns): [CONVERSATION_HISTORY] - Platform: [PLATFORM_NAME] OUTPUT_SCHEMA: { "classification": { "risk_detected": boolean, "risk_category": "CSAM_DISCUSSION" | "GROOMING_INDICATOR" | "SELF_GENERATED_CONTENT" | "SUSPICIOUS_CONTACT" | "EXPLOITATION_DISCUSSION" | "NONE", "urgency": "CRITICAL" | "HIGH" | "MEDIUM" | "LOW", "confidence_score": 0.0-1.0 }, "evidence": { "flagged_excerpts": ["string"], "behavioral_indicators": ["string"], "context_summary": "string" }, "routing": { "review_queue": "CHILD_SAFETY_CRITICAL" | "CHILD_SAFETY_STANDARD" | "TRUST_AND_SAFETY" | "NONE", "requires_immediate_escalation": boolean, "mandatory_reporter_flag": boolean, "recommended_action": "ESCALATE_TO_LEGAL" | "HUMAN_REVIEW" | "MONITOR_ONLY" | "NO_ACTION" } } CONSTRAINTS: - Do not generate a user-facing response under any circumstances. - If risk_detected is false, set routing.review_queue to "NONE" and routing.recommended_action to "NO_ACTION". - If urgency is "CRITICAL", requires_immediate_escalation must be true. - Flag mandatory_reporter_flag as true if the content suggests a child is in imminent danger or if local laws require reporting. - Preserve exact text excerpts in evidence.flagged_excerpts. Do not paraphrase. - If confidence_score is below 0.7, set routing.review_queue to "TRUST_AND_SAFETY" for secondary review.
To adapt this template, replace the [USER_INPUT] placeholder with the raw text of the user's message. The [CONVERSATION_HISTORY] should be a serialized representation of recent turns, as grooming and probing behavior often span multiple messages. The [PLATFORM_NAME] variable is critical for audit trails and should map to your internal system identifier. The output schema is intentionally strict; your application harness should validate the JSON against this schema before acting on the routing decision. For high-risk domains, always pair this prompt with a human-in-the-loop review step and never automate actions based solely on the mandatory_reporter_flag without legal review of the specific jurisdiction.
Prompt Variables
Required inputs for the Child Safety Concern Human Review Routing Prompt. Each placeholder must be populated before the prompt is assembled and sent to the model. Missing or malformed inputs will cause routing failures or misclassification.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[USER_MESSAGE] | The full text of the user message or conversation turn to evaluate for child safety concerns | Can you help me talk to a 12-year-old I met online? | Required. Non-empty string. Must be the raw, unredacted user input. Do not pre-filter before passing to the prompt. |
[CONVERSATION_HISTORY] | Previous turns in the session for context on escalating patterns or grooming behavior | [{"role": "user", "content": "I like making new friends"}, {"role": "assistant", "content": "That's great..."}] | Optional. JSON array of message objects with role and content fields. Null allowed for first-turn evaluation. Max 20 turns to avoid context window overflow. |
[USER_METADATA] | Account and session context including age indicators, account flags, and platform region | {"account_age_days": 3, "reported_prior": false, "region": "US"} | Required. JSON object. Must include account_age_days and reported_prior fields. Region field required for mandatory reporter jurisdiction mapping. No PII beyond what is necessary for routing. |
[PLATFORM_POLICY_VERSION] | The specific safety policy document version the model should enforce | child-safety-policy-v2.4-2025-01-15 | Required. String identifier matching a deployed policy version. Must resolve to an actual policy document in the policy store. Version mismatch will cause audit trail gaps. |
[URGENCY_CLASSIFICATION_THRESHOLDS] | Configurable confidence thresholds for each urgency tier | {"critical": 0.85, "high": 0.70, "medium": 0.50} | Required. JSON object with numeric thresholds between 0 and 1. Critical threshold must be highest. Thresholds below 0.50 route to low-urgency queue. Validate that thresholds are monotonically decreasing. |
[REVIEW_QUEUE_MAPPING] | Mapping of urgency tiers and concern categories to specific human review team identifiers | {"critical": "csirt-tier-1", "high": "trust-safety-escalation", "medium": "content-review-queue-a"} | Required. JSON object. Every urgency tier must map to a valid queue ID. Queue IDs must exist in the routing system. Missing mappings cause delivery failures. |
[MANDATORY_REPORTER_JURISDICTIONS] | List of jurisdictions where the platform has mandatory reporting obligations for child safety concerns | ["US", "CA", "AU", "GB"] | Required. Array of ISO country codes. Must match legal compliance database. Empty array allowed for platforms with no mandatory reporting obligations, but this must be a deliberate configuration choice with legal sign-off. |
[EVIDENCE_PRESERVATION_REQUIREMENTS] | Specification for what evidence must be preserved and for how long when a concern is flagged | {"retention_days": 365, "include_screenshots": true, "hash_chain": true} | Required. JSON object. retention_days must be a positive integer. include_screenshots and hash_chain must be boolean. Must align with data retention policy and legal hold requirements. |
Implementation Harness Notes
How to wire the child safety concern routing prompt into a production moderation pipeline with validation, evidence preservation, and mandatory reporter integration.
This prompt operates as a classification and routing decision node inside a broader content moderation or trust-and-safety pipeline. It should never be the first or only line of defense. Deploy it downstream of faster, deterministic filters (hash matching, keyword blocklists, perceptual hashing) and upstream of human review queues. The prompt's job is to handle the ambiguous middle: content that wasn't caught by automated filters but carries signals that warrant specialized child safety review. Wire it as a synchronous API call with a strict timeout (recommend 5-8 seconds for LLM inference) and a fallback path that routes to a general moderation queue if the model doesn't respond in time.
Input assembly requires careful evidence packaging. Before calling the prompt, collect: the full message text, any attached media URLs or file references, the user's account age and verification status, the conversation context (last N turns, not just the flagged message), and any prior moderation actions on this user or session. Package these into the [CONTEXT] placeholder as structured JSON, not free text. Include a session_id, message_id, and timestamp in the payload so the routing decision can be traced back to source evidence. For media attachments, include content descriptors from upstream classifiers (e.g., "media_type": "image", "classifier_flags": ["possible_csam_indicators"]) rather than raw bytes. The prompt should never receive unredacted PII beyond what's necessary for the safety decision—strip names, emails, and phone numbers before assembly unless they're the subject of the concern itself.
Output validation is critical because a misrouted child safety concern is a severe incident. After the model returns its JSON response, validate: (1) urgency_level is one of the allowed enum values (critical, high, medium, low), (2) routing_queue maps to an actual, active review team identifier in your system, (3) requires_mandatory_report is a boolean, and (4) evidence_preservation_required is a boolean. If validation fails, retry once with the validation errors appended to the prompt as [CONSTRAINTS]. If the retry also fails, route to the highest-priority child safety queue with a validation_failure flag and preserve all evidence. Log every routing decision—including the model's raw output, the validated output, and the final queue assignment—to an append-only audit store. This log is your evidentiary record if the decision is later questioned by law enforcement or regulators.
Mandatory reporter workflow integration is the highest-stakes part of this harness. When requires_mandatory_report is true, the system must not merely flag the content—it must trigger a separate, auditable workflow that: (a) locks the evidence from deletion or modification, (b) notifies the designated mandatory reporting officer (not a queue, a specific accountable person), (c) starts a deadline timer based on your jurisdiction's reporting window, and (d) generates a pre-filled report template with all available evidence. This workflow must function even if the downstream review queue is backlogged. The prompt's mandatory_report_rationale field should be surfaced directly in the reporting officer's dashboard so they understand why the system escalated. Never rely on the LLM to file the report itself—the model's role is detection and routing, not legal action.
Model choice and cost considerations matter here because child safety review is both high-stakes and high-volume. Use a capable model with strong instruction-following and low refusal-override risk (GPT-4o, Claude 3.5 Sonnet, or equivalent). Do not route child safety content to smaller, cheaper models that may miss contextual signals or hallucinate urgency classifications. Implement caching for repeated or near-duplicate content to avoid re-processing the same evidence. Set up a monitoring dashboard that tracks: routing volume by urgency level, validation failure rate, retry rate, mandatory report trigger rate, and time-to-human-review by queue. Alert if the critical queue exceeds a 5-minute response SLA or if the validation failure rate exceeds 2%.
What to avoid: Do not use this prompt as a standalone safety net without human review for critical and high urgency classifications. Do not allow the LLM to directly delete, ban, or suspend accounts—routing decisions inform human action, they don't execute it. Do not log the full prompt payload (which may contain descriptions of abuse material) to insecure or general-purpose logging systems—use a dedicated, access-controlled evidence store. Do not skip the mandatory reporter integration testing: run quarterly drills that simulate a requires_mandatory_report: true decision and verify the entire workflow fires correctly within the jurisdictional deadline.
Expected Output Contract
Fields, format, and validation rules for the structured JSON output produced by the Child Safety Concern Human Review Routing Prompt. Use this contract to parse, validate, and route the model response in production.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
routing_decision | enum: [ESCALATE, NO_ESCALATION, UNCERTAIN] | Must be exactly one of the three enum values. Reject any other string. | |
urgency_level | enum: [CRITICAL, HIGH, MEDIUM, LOW] | true if routing_decision is ESCALATE, else null | If ESCALATE, must be present and non-null. If NO_ESCALATION, must be null. If UNCERTAIN, must be MEDIUM or LOW. |
concern_category | string | Must match one of the predefined categories: CSAM_INDICATOR, GROOMING_PATTERN, SELF_GENERATED_CONTENT, EXPLOITATION_RISK, OTHER. Reject unknown categories. | |
evidence_summary | string | Must be a non-empty string under 500 characters. Must reference specific user message content without quoting verbatim if it contains potentially illegal material. | |
source_message_ids | array of strings | Must contain at least one valid message ID from the input context. Each ID must be a non-empty string. Reject if empty or contains non-string elements. | |
recommended_review_queue | string | true if routing_decision is ESCALATE, else null | If present, must match a configured queue name from [QUEUE_LIST]. Reject unknown queue names. |
mandatory_reporter_flag | boolean | Must be true or false. If true, the system must trigger the mandatory reporter workflow defined in [REPORTING_WORKFLOW]. | |
confidence_score | number | Must be a float between 0.0 and 1.0 inclusive. Scores below [CONFIDENCE_THRESHOLD] should trigger a secondary review or human sampling. |
Common Failure Modes
Child safety routing prompts fail in predictable, high-severity ways. These are the most common production failure modes and the specific guardrails that prevent them.
False Negative: Missed CSAM Signal
What to watch: The prompt fails to flag content containing child sexual abuse material (CSAM) indicators, coded language, or grooming patterns, allowing the interaction to continue without human review. This occurs when the prompt's sensitivity threshold is too high or when adversarial users employ obfuscation techniques the classifier was not trained to recognize. Guardrail: Implement a multi-stage detection pipeline with keyword scanning, hash matching against known CSAM databases, and behavioral pattern analysis before the LLM routing prompt. Route any hash match or high-confidence keyword hit directly to NCMEC reporting workflow, bypassing the LLM entirely.
Urgency Misclassification
What to watch: The prompt correctly identifies a child safety concern but assigns a low urgency classification, delaying review for hours or days when minutes matter. This happens when urgency criteria are vague or when the prompt weighs user politeness or conversational tone over the severity of the disclosed risk. Guardrail: Define explicit urgency tiers with concrete triggers: imminent harm to a specific child, ongoing exploitation, historical disclosure, or general policy violation. Use a separate urgency classifier prompt with strict escalation rules that ignore conversational tone and prioritize time-since-event and specificity of identifying information.
Evidence Corruption During Routing
What to watch: The routing prompt summarizes or paraphrases the concerning content instead of preserving the original verbatim evidence, destroying metadata, timestamps, and exact language required for legal review and mandatory reporting. Guardrail: Design the routing prompt to output a structured evidence package that includes verbatim user messages, session IDs, timestamps, and platform identifiers in a separate, unmodified field. The prompt instructions must explicitly forbid paraphrasing in the evidence field and require a null marker if verbatim content cannot be included.
Mandatory Reporter Workflow Gap
What to watch: The prompt routes to an internal review queue but fails to trigger the legally required NCMEC CyberTipline report within mandated timeframes, creating regulatory liability. This occurs when the routing prompt treats internal escalation and external reporting as the same step or omits reporting triggers entirely. Guardrail: Include explicit NCMEC reporting decision logic in the prompt output schema with a required boolean field for mandatory_report_required. Integrate the prompt output directly with your reporting API so that a true value automatically initiates the CyberTipline workflow with a timestamp audit trail, independent of internal review queue status.
Context Window Truncation of Critical Details
What to watch: Long grooming conversations or multi-turn interactions exceed the prompt's context window, causing the model to analyze only recent turns and miss earlier concerning patterns such as gradual trust-building, personal information solicitation, or platform-migration requests. Guardrail: Implement a session summarization preprocessor that extracts safety-relevant signals across the full conversation history before the routing prompt runs. Include turn-by-turn risk markers, cumulative risk scoring, and key excerpts in a compressed safety digest that fits within the routing prompt's context budget.
Over-Escalation Flooding Review Queues
What to watch: The prompt routes every mention of a minor, every parent-child conversation, or every educational context to the child safety review queue, overwhelming human reviewers and causing real high-risk cases to be delayed in the backlog. Guardrail: Add a pre-filter classification step that distinguishes between benign minor-related content and actual safety concerns. Use explicit exclusion categories for educational discussions, parental support, and age-appropriate platform features. Track false-positive rates per category and tune the routing threshold to keep review queues manageable without missing true positives.
Evaluation Rubric
Criteria for testing whether the child safety routing prompt correctly classifies, preserves evidence, and escalates before shipping to production.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Urgency classification accuracy | Prompt assigns correct urgency level (immediate, elevated, standard) for 95% of labeled test cases | High-severity cases classified as standard; low-severity cases classified as immediate | Run against golden dataset of 50+ labeled child safety scenarios with ground-truth urgency labels |
Evidence preservation completeness | All user-submitted URLs, file references, timestamps, and message content appear in the routing payload without truncation | Evidence fields missing, truncated, or replaced with summaries instead of original content | Validate output schema: [EVIDENCE_BLOCK] contains all input fields; compare byte-level content for 20 test inputs |
Mandatory reporter workflow flag | Prompt sets [MANDATORY_REPORT_FLAG] to true when jurisdiction and content type trigger legal reporting obligation | Flag set to false or null on cases meeting mandatory reporter criteria per test jurisdiction rules | Test 15 cases with known mandatory-report triggers across 3 jurisdictions; verify boolean output |
Review queue routing correctness | Prompt routes to correct specialized queue (e.g., CSAM, grooming, exploitation, self-harm) per classification taxonomy | Case routed to generic queue when specialized queue exists; case routed to wrong specialized queue | Run 30 classified cases through routing logic; compare [REVIEW_QUEUE] output to expected queue label |
False positive rate on benign content | Prompt does not escalate clearly benign parent-child interactions, educational queries, or policy discussions | Benign content triggers escalation with medium or high urgency; [ESCALATION_REQUIRED] set to true on non-concerning inputs | Test 25 benign edge cases (sex ed, parenting forums, academic research); measure false escalation rate; target under 5% |
Confidence score calibration | Prompt outputs [CONFIDENCE_SCORE] between 0.0 and 1.0; scores below 0.7 correlate with ambiguous or edge cases | Confidence score always 0.9+ regardless of input ambiguity; score missing or outside 0-1 range | Check score distribution across 100 varied inputs; verify low-confidence cases map to ambiguous inputs in manual review |
Jurisdiction detection accuracy | Prompt correctly identifies applicable jurisdiction from user-provided location, IP metadata, or explicit disclosure | Jurisdiction field defaults to single value regardless of input signals; jurisdiction mismatch causes wrong reporting flag | Test 10 inputs with explicit jurisdiction signals; verify [JURISDICTION] field matches expected value |
Output schema compliance | Every required field in [OUTPUT_SCHEMA] is present, correctly typed, and non-null unless null is explicitly allowed | Missing required fields; string where boolean expected; null in non-nullable fields | Validate all outputs against JSON Schema; run schema check on 100 test outputs; require 100% structural compliance |
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
Use the base prompt with a single urgency tier and simplified evidence capture. Replace the full output schema with a flat JSON object containing escalate (boolean), urgency (string enum: immediate|standard), and summary (string). Remove mandatory reporter workflow integration points and jurisdiction-specific flags. Test with synthetic scenarios before real data.
Prompt snippet
codeYou are a child safety triage classifier. Analyze [USER_INPUT] and return JSON with escalate, urgency, and summary fields. Escalate if the content suggests imminent risk to a minor.
Watch for
- Over-escalation on benign mentions of children (school, parenting)
- Missing severity differentiation between imminent harm and policy violations
- No evidence preservation for downstream review

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