The developer-first content moderation API
Content filtering, user reporting, user blocking, appeals, policy versioning, and immutable audit trails - one API, production-ready in hours, not quarters.
15,000 decisions/mo free. No credit card required.
Every decision is traceable, contestable, and replayable
A regex gives you a yes/no. An LLM gives you a score. Vettly gives you a complete decision record that tracks policy version, appeal outcome, and retention status so you're always ready for moderation reviews.
Intake
Content & context
Evaluation
Policy applied
Action
Decision made
Storage
Securely pinned
Review
Appeals handled
Audit
Fully searchable
Three integration steps.
Six workflows behind the scenes.
You integrate three simple endpoints. Vettly handles filtering, reporting, blocking, appeals, audit trails, and policy versioning for you.
1. Add one moderation call
Call the /v1/check endpoint before content is published.
2. Turn on report + block
Enable user reporting and blocking endpoints.
3. Ship with audit evidence
Every decision logged with the policy version that produced it.
import { Vettly } from '@vettly/sdk';// Initialize the SDKconstvettly = new Vettly(process.env.VETTLY_API_KEY);// Block toxic content before it hits your DBconstdecision = await vettly.check({content: { text: "Hello world", type: "text" },user_id: "usr_123",policy_id: "pol_strict_v2"});if(decision.action === "block") {returnres.status(400).json({error: "Content violates community standards",reason: decision.flags[0]});}
Built for teams shipping UGC.
Define your content policy in plain English. Vettly enforces it across text, images, and video with decisions your team can trace, explain, and absolutely defend.

Social & Community
Chat, comments, and user profiles. Filter text and images before they appear, add report buttons, and let users block each other with a single integration.

Chat, comments, and user profiles. Filter text and images before they appear, add report buttons, and let users block each other with a single integration.
- Chat messages & comments
- User profiles & bios
- Photo & video sharing
See it in action
Edit the text, run Analyze, and see the real API response processing through our policy engine in milliseconds.
name: community-safeversion: "1.0"rules:- category: hate_speechthreshold: 0.6action: block- category: harassmentthreshold: 0.6action: flag- category: violencethreshold: 0.7action: warn- category: spamthreshold: 0.5action: flag
{"decisionId": "dec_xxxxxxxx","action": "allow","safe": true,"policyVersion": "demo@1.0","categories": [],"latency_ms": "---"}
Behind the Scenes
Simple, predictable pricing.
Start free. Upgrade when you need more volume, longer decision history, or advanced policy workflows.
Free
Enough for a 5,000-user app
- 15,000 decisions / month
- Text, images & video
- Starter policy templates
- Decision IDs & audit trail
- 24-hour decision history
Starter
Ship your MVP securely
- 100,000 decisions / month
- Everything in Free
- 1-year decision history
- Custom policy rules
- Decision webhooks
Growth
Ship publicly with protection
- 300,000 decisions / month
- Everything in Starter
- Spam & scam detection
- Advanced risk controls
- 3-year moderation logs
Pro
Custom rules, compliance
- 1,500,000 decisions / month
- Everything in Growth
- Custom moderation rules
- Priority processing
- Compliance & audit support
Enterprise
Custom infrastructure
- Everything in Pro
- Unlimited decisions
- Multi-provider routing
- Batch moderation API
- SLA guarantees
Pricing is simple: All plans include fully-searchable decision IDs, policy versioning, and our rigorous audit trail.
Overage pricing (all paid plans): text $0.0001/unit · image $0.001/unit · video $0.01/unit. Billed monthly.