The CleanTalk alternative for spam from clean addresses
CleanTalk is very cheap and covers many CMS plugins, using blacklists and bot-behaviour tests. Its weak spot is a first-time human pitch from a clean IP and a valid email. That's the one Doorman is built to read.
Free for 1,000 checks a month. Paid plans from $12. No card required.
Example: Doorman screening contact form, each judged in under half a second and delivered or kept out with the reason.
Sound familiar?
First-time senders get through
A new agency, a new address, a clean IP: blacklists have nothing to match.
Built around CMS plugins
Custom stacks call its API; the experience is shaped by WordPress, Joomla and Drupal.
Borderline goes one way or the other
There's no hold lane for the messages nobody could call.
Doorman and CleanTalk, side by side
| Question | Doorman | CleanTalk |
|---|---|---|
| What it checks | What the submission asks for, against what you sell | IP and email blacklists, the message, and bot tests such as submit speed |
| A first-time human pitch | Kept out, with the line that gave it away | Often passes: nothing to match on a blacklist |
| Why something was blocked | The exact sentence | Reason codes and a comment, plus dashboard logs |
| Unsure submissions | Held and forwarded to you | Allowed or blocked |
| Where it works | Any stack; coding agents set it up (MCP, llms.txt) | CMS plugins, plus an API |
| Price | Free for 1,000 checks a month; Pro $12 for 25,000 | $12 a year for 1 site, up to $200 a year for 40; $27 a month unlimited |
Their plans and behaviour as published on their own sites, checked 29 September 2026. Sources: cleantalk.org/price, cleantalk.org/help/api-check-message.
Which one is right for you?
Choose Doorman if
- Your spam is human-written pitches from addresses nobody has blacklisted
- You're on a custom stack, Webflow, Framer or Next.js
- You want borderline cases held for you
- You want your coding agent to set it up
Choose CleanTalk if
- You manage many WordPress, Joomla or Drupal sites and want the cheapest unlimited plugin
- Blacklist-style bot spam is your main problem
- You want malware scanning and uptime checks from the same vendor
Switch in two minutes
- From your server: replace the CleanTalk call with one doorman.check call; act on deliver, hold or drop.
- Or no code: point the form's action at your Doorman URL and it forwards the real ones to you.
- Or ask your agent: copy one prompt into Claude Code, Codex or Cursor and it does the swap.
- Start safely: watch mode delivers everything for a week and tags what it would have dropped.
const r = await doorman.check({ form: "f_yourForm", email, name, message });
// r.action: "deliver" | "hold" | "drop"
// r.evidence: "We can fix your local SEO in 30 days, guaranteed."Checked, not guessed
Every decision comes from Doorman's models reading the submission, in milliseconds, with the reason attached.
Labelled test set: 104 invented but labelled contact-form and checkout submissions, judged live; latency is the median of those checks. Questions were not tuned to the set.
Questions
Is Doorman more expensive than CleanTalk?
Per site, CleanTalk is cheaper. Doorman is priced by checks (free for 1,000 a month, $12 for 25,000) and catches the human pitches blacklists miss.
Can I use both?
Yes. Keep CleanTalk's plugin for bots and send submissions to Doorman to read what gets through.
Does Doorman use blacklists?
It uses allow and block lists you set, but it judges each message on what it says, so a new sender isn't a blind spot.
How much does it cost?
Free for 1,000 checks a month. Pro is $12 a month for 25,000 and Business is $49 a month for 250,000. Every plan gets the same models. See pricing.
Try it on your own forms
Free for your first 1,000 checks every month. Start in watch mode and see every call before you trust it.