Simple Moderation
Production-ready · multimodal moderation API

Content moderation that follows your rules.

Write your moderation policy as a bullet list in plain English. Send text, images, audio or video to one API. Get back a clear allow / block / review decision with a per-rule breakdown — powered by frontier LLMs.

No credit card Enterprise-grade security EU + US regions
LIVE · decision stream
api.simplemoderation.com
  • marketplace-listingsblockphone number leaked
  • user-biosblockexternal profile link
  • marketplace-listingsallow
  • support-ticketsreviewlegal threat detected
Built for teams who manage user content at scale
MarketplacesDating appsSocial platformsAI chat productsCustomer supportOnline communities
Examples

The rule list is the policy. Same shape across every use case.

Each example below is a real rule set you might run in production — plus a sample piece of content and the exact response we'd return. Click between them to see different industries.

Rule set — Marketplace listing
  • No phone numbers in listings
  • No external chat handles (WhatsApp, Telegram, Signal)
  • No discriminatory language
  • No prohibited categories (weapons, drugs, prescription meds)
  • Flag listings priced > 50% below market for human review
Submitted listing description
Selling iPhone 15 Pro, like new, 1200 EUR. Text me on WhatsApp: +49 176 8123 1188 if interested. Cash only, no fakes.
tip · In production you'd edit this rule list once in the dashboard, then call /v1/moderate with just the content.
API responseBlock
  • No phone numbers in listings
    matched
    German-format mobile number detected in body.
    +49 176 8123 1188
  • No external chat handles
    matched
    Reference to off-platform messenger.
    WhatsApp
  • No discriminatory language
    ok
    No protected-class references found.
  • No prohibited categories
    ok
    Item category appears to be consumer electronics.
  • Flag listings priced > 50% below market
    ok
    Asking price is within expected market range.
How it works

Three steps. From signup to first decision in under five minutes.

01

Write rules in plain English

One bullet per rule. No regex, no taxonomy lookups, no model training. Update them anytime — changes are live in seconds.

02

Send content to one API

Text, images, audio, video — same endpoint, same shape. We handle vision, transcription, and language detection for you.

03

Get an actionable decision

allow · review · block. Plus a per-rule breakdown with evidence so you can audit, debug, or surface it to a human moderator.

What you'll get

A console your trust & safety team will actually want to use.

Rules, decisions, costs and latency — all in one place. No third-party dashboards, no spreadsheets, no Slack screenshots.

Workspace overview

A control room for every piece of content that hits your platform.

Live decision feed, per-rule-set block rates, latency, and spend — all in real time. Drill into any decision in two clicks.

app.simplemoderation.com/rules
Rules

Active rule sets

All systems normal
Decisions today
14,238
+12%
Block rate
2.4%
−0.6%
Avg latency
312 ms
p95 540ms
Rule sets
4 active
  • marketplace-listings6 rulesblock rate 2.4%
  • user-bios4 rulesblock rate 1.1%
  • support-tickets3 rulesblock rate 0.3%
  • public-comments5 rulesblock rate 4.7%
Recent decisions
live
  • listing #29481block
  • bio @sashaaa.xblock
  • ticket #4581review
  • comment c_77a3allow
  • listing #29478allow
Rule editor

Plain-English rules. Hard, soft, and allow overrides.

Define each rule once. Mark whether matching it blocks, sends to human review, or explicitly allows the content. Threshold logic decides the final outcome.

app.simplemoderation.com/rules/marketplace-listings/edit
Rule set
Applied to POST /v1/moderate when channel=listings
BLOCKNo phone numbers in listings.
BLOCKNo external contact info — email, Telegram, WhatsApp, Signal.
BLOCKNo discriminatory language (race, gender, religion, sexual orientation).
BLOCKNo medical devices, weapons, illegal drugs, or prescription medication.
REVIEWFlag listings priced > 50% below market for human review.
ALLOWAllow profanity if it is descriptive (e.g. 'damn good condition'), not directed.
Threshold logic
Any hard rule matchedblock
Soft rule matchedreview
Otherwiseallow
Model
sm-flash · multilingual
~$0.08 / 1k decisions · 280 ms p50
Decision logs

Every decision is auditable. With evidence.

Open any historical decision and see exactly which rules matched, what the model considered as evidence, and the full JSON we returned to your backend.

app.simplemoderation.com/logs/dec_01HXKQ4M...
Incoming content
Selling iPhone 15 Pro, like new, 1200 EUR. Text me on WhatsApp: +49 176 8123 1188 if interested.
Per-rule breakdown
No phone numbers in listings
No external contact info
WhatsApp + phone
No discriminatory language
No prohibited categories
{
  "decision": "block",
  "score": 0.96,
  "rule_set": "marketplace-listings",
  "results": [
    {
      "rule": "No phone numbers in listings",
      "matched": true,
      "confidence": 0.99,
      "evidence": ["+49 176 8123 1188"]
    },
    {
      "rule": "No external contact info",
      "matched": true,
      "confidence": 0.97,
      "evidence": ["WhatsApp", "+49 176 8123 1188"]
    },
    { "rule": "No discriminatory language", "matched": false },
    { "rule": "No prohibited categories", "matched": false }
  ],
  "latency_ms": 287,
  "cost_usd": 0.00012
}
Use cases

Same API. Wildly different rule sets.

Marketplaces & classifieds

Block listings that leak contact info, hide prohibited categories, and stop scam patterns before they reach buyers.

  • No phone numbers or external chat handles
  • Detect fake / off-platform deals
  • Block prohibited categories per country

Dating & social apps

Keep bios, photos and DMs aligned with your community guidelines — without paying a team of 50 human moderators.

  • Block explicit content or solicitation
  • Detect underage indicators
  • Stop links to external monetisation

AI chat products

Wrap your LLM with a fast moderation layer that catches prompt injection, off-topic abuse, and policy violations.

  • Pre- and post-generation checks
  • Block prompt injection attempts
  • Enforce brand-safe outputs

Customer support

Triage tickets by tone and risk. Auto-escalate legal threats. Let real abuse jump the queue.

  • Detect legal threats for human review
  • Allow profanity, block violence
  • Sentiment-aware queue ordering
vs. fixed-taxonomy APIs

Stop forcing your business rules into someone else's 13 categories.

Simple Moderation
OpenAI ModerationSightengineHive
Define rules in plain English
Multimodal (text + image + audio + video)text onlyimage / videoimage / video
Per-rule evidence in responsecategory scores onlycategory scores only
Custom thresholds & decision logicpartialpartial
Per-decision billing, no seatsfree / API$29 / mo min$3 / 1k images
No daily request cap on self-serve100 / day
EU data residency on day oneenterprise only

Comparison reflects publicly listed self-serve plans as of May 2026. Names and trademarks belong to their respective owners. Used here for comparison only.

One endpoint

Ship in an afternoon, not a sprint.

One call. Same response shape across every modality. SDKs for TypeScript and Python with full type definitions — or just hit the HTTP API directly. We don't reinvent webhooks, batching, or idempotency.

  • Idempotency keys & per-rule-set throttling out of the box.
  • Webhooks for async / high-volume jobs.
  • Streaming responses for chat use cases.
curl https://api.simplemoderation.com/v1/moderate \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "rule_set": "marketplace-listings",
    "content": {
      "type": "text",
      "text": "Selling iPhone 15 Pro. WhatsApp +49 176 8123 1188"
    }
  }'
The numbers

Built like a piece of infrastructure. Priced like a side project.

0
content modalities supported
0.00%
decision availability
0
languages supported on day one
0-day
money-back guarantee
Pricing

Transparent pay-as-you-go. Per-token, never per-seat.

Starter
$19/ month
  • 5,000 decisions / month included
  • All modalities (text, image, audio, video)
  • Up to 3 rule sets
  • Email support
Start your trial
most popular
Growth
$99/ month + usage
  • 50,000 included decisions
  • Unlimited rule sets & versions
  • Slack support, 24h SLA
  • EU or US data residency
Start your trial
Scale
Customvolume + dedicated infra
  • Volume discounts from 1M / mo
  • Dedicated VPC + private model
  • 99.99% SLA, 24/7 on-call
  • Custom data processing agreement
Talk to us
Need volume? See full pricing — or email [email protected].
FAQ

Questions buyers actually ask.

How is this different from OpenAI’s free Moderation API?

OpenAI’s API returns 13 fixed categories like ‘sexual’, ‘violence’, ‘harassment’. It doesn’t know your business. We let you write ‘no phone numbers in marketplace listings’ or ‘flag legal threats for human review’ — and we return per-rule decisions with evidence. We’re also multimodal and don’t cap you on requests.

What about latency?

LLM-backed decisions on a rich rule set typically take a few seconds — that’s the cost of getting per-rule reasoning and evidence. For inline UX (e.g. chat) you can opt into a streaming “decision-only” mode that returns block/allow in under a second and posts the full breakdown to a webhook. Image and video are async by default.

Do you store our content?

Only if you explicitly enable decision logs, and only the content related to that decision. You can turn it off, configure per-rule-set retention, or pin storage to the EU. Nothing is used to train shared models.

Can I A/B test rule changes?

Yes. Every rule set is versioned. You can shadow-mode a new version against live traffic for a few days, compare disagreement rate against the production version, and promote when you’re confident.

What models do you use under the hood?

A pool of frontier LLMs (Anthropic, OpenAI, Google) for the heavy decisions, and small fine-tuned models for cheap pre-filtering. You don’t pick a model — we route based on rule complexity and your latency budget.

Can I try before I commit?

Every plan ships with a 14-day money-back guarantee — no questions asked, full refund if it’s not the right fit. You can also walk through the examples on this page or email [email protected] and we’ll set up a guided demo.

Stop policing user content with regex and Slack messages.

Ship in an afternoon. Iterate on your rules in seconds. Sleep at night knowing every decision is auditable.