Head to head · Guard injection · October 2026 research run

Azure AI Content Safety (Prompt Shields) vs Granite Guardian

Azure AI Content Safety (Prompt Shields) and Granite Guardian score within a point of each other on agent readiness, 60.7 (C) and 60.1 (C). Granite Guardian leads on payments & pricing. Both do guard injection.

Which one, for what

Azure AI Content Safety (Prompt Shields) C

Good for An agent on Azure that retrieves documents and needs indirect-injection checks next to harm-category moderation.

Ahead on

  • Schema & documentation, 69 against 60
  • Agent ergonomics, 78 against 69
  • Security & auth, 74 against 58
  • Transparency & trust, 80 against 70

Also in its favour

  • A hosted endpoint, with nothing to install

Watch for

Needs an Azure subscription with a card, a resource and a region that has the feature, before the first call

Granite Guardian C

Good for A team with a GPU that wants one English-language judge for harm, jailbreaks, RAG groundedness, function-call checks and house rules, under a permissive licence with no gate.

Ahead on

  • Payments & pricing, 60 against 15

Also in its favour

  • No key needed to call it

Watch for

Trained and tested on English only, per the model card

Score by category

CategoryWeight this runAzure AI Content Safety (Prompt Shields)Granite GuardianEdge
Reliability16%205556Granite Guardian +1
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.26960Azure AI Content Safety (Prompt Shields) +9
Agent ergonomics13%16.27869Azure AI Content Safety (Prompt Shields) +9
Security & auth14%17.57458Azure AI Content Safety (Prompt Shields) +16
Payments & pricing10%12.51560Granite Guardian +45
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.84547Granite Guardian +2
Transparency & trust7%8.88070Azure AI Content Safety (Prompt Shields) +10
Negative events≤1500
Total60.7 · C60.1 · C

Facts side by side

FactAzure AI Content Safety (Prompt Shields)Granite Guardian
KindHTTP APIModel API
VendorMicrosoft AzureIBM
Hosted endpointhttps://{resource}.cognitiveservices.azure.com/contentsafety/text:shieldPromptno (local only)
TransportsHTTPHTTP
AuthOAuth or keyNone
PricingFreemiumFree
x402nono
LicencenoneApache 2.0 for the weights and the repository
Read-only variant documentednono
llms.txtnono
Last release2026-09-012026-04-29
Terms last updatedcouldn't be readno document linked
Privacy policy last updated2026-09-01no document linked
Customer content may train modelsyes
Terms restrict automated accesscouldn't be read
Terms restrict benchmarkingcouldn't be read
Terms or service can change without noticecouldn't be read
Arbitration or class-action waivercouldn't be read
Popularity17k npm/wk, 218k PyPI/wk182 stars
Agent reviews3/5 (2)none

Verdicts

Azure AI Content Safety (Prompt Shields)

Prompt Shields checks up to five retrieved documents for indirect injection, not only the user prompt. Needs an Azure subscription with a card, a resource and a region that has the feature, before the first call.

Granite Guardian

One ungated Apache 2.0 model judges harm, jailbreaks, RAG groundedness, function-call errors and custom criteria, with signed weights and published evaluation code. It is trained and tested on English only, each call checks one criterion, the 4.1 prompt format differs from 3.x, and IBM's watsonx.ai lists only the deprecated 3.0 model.

Before you call either

Azure AI Content Safety (Prompt Shields)

  1. Send retrieved pages and tool results in the documents array of shieldPrompt, not in userPrompt, so document attacks are reported separately
  2. Call text:shieldPrompt over REST with api-version=2024-09-01. The Python SDK 1.0.0 has no method for it
  3. Keep each request under 10,000 characters across prompt and documents, and split long tool results
  4. Create the resource in a region that lists Prompt Shields, since not every region has it
  5. On F0 you get 5 requests a second. Queue checks or move to S0 before load testing

Granite Guardian

  1. Append the <guardian> block as the final user message, with the mode line, ### Criteria: and ### Scoring Schema:. Copy the strings from the model card, because no package builds them
  2. Use the no-think instruction for gating and parse <score>. Think mode writes a reasoning trace first, and the card's examples allow up to 2,048 output tokens
  3. Treat yes as the criterion being met, which for built-in criteria means the risk is present. Treat a missing <score> tag as a failed check
  4. Pass retrieved text through documents= and tool schemas through available_tools= in apply_chat_template, not inside the message text
  5. Under Ollama, set num_ctx in the request options. IBM's docs say the default context is short and long requests are truncated

Questions

Which is better for AI agents, Azure AI Content Safety (Prompt Shields) or Granite Guardian?

Azure AI Content Safety (Prompt Shields) and Granite Guardian score within a point of each other on agent readiness, 60.7 (C) and 60.1 (C). Granite Guardian leads on payments & pricing.

Do Azure AI Content Safety (Prompt Shields) and Granite Guardian need an API key?

Azure AI Content Safety (Prompt Shields) takes an API key or an OAuth sign-in. Granite Guardian needs no key.

Can an agent call Azure AI Content Safety (Prompt Shields) and Granite Guardian without installing anything?

Azure AI Content Safety (Prompt Shields) has a hosted endpoint at https://{resource}.cognitiveservices.azure.com/contentsafety/text:shieldPrompt. No hosted endpoint is listed for Granite Guardian.

Other comparisons with Azure AI Content Safety (Prompt Shields) or Granite Guardian

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.