Raptcha

Description

Raptcha is an innovative CAPTCHA alternative that challenges users to count animals in a dynamic image, promoting accessibility and user engagement. Unlike text-based CAPTCHAs, it uses engaging visuals (cats, dogs, birds) with randomized placements and scales for enhanced security.

Key features:

  • Animal Counting Challenges: Randomized images with 1-10 animals, ensuring varied difficulty.
  • Bot Detection Heuristics: Advanced checks (drag time, mouse distance, focus duration) to prevent automated submissions.
  • Form Integrations: Native support for WordPress comments, login forms, and popular plugins (Contact Form 7, Kadence Forms, Ninja Forms).
  • Shortcode Integration: Easily embed with [raptcha] for custom forms.
  • Fully Secured: Nonce verification, transients for challenge storage, and sanitization throughout.

This plugin prioritizes privacy, security and usability, making it a in-house, private, modern alternative to traditional CAPTCHAs.

Screenshots

  • CAPTCHA challenge showing randomized animals with drag-and-drop number selection
  • Settings page available from the main admin menu
  • Core Form Protection, Plugin Form Protection, Powered-by-Raptcha Toggle
  • Example placement in Contact Form 7
  • The same form placed on a public page
  • In-plugin FAQ for easy reference

Installation

  1. Upload the raptcha folder to the /wp-content/plugins/ directory.
  2. Activate the plugin through the ‘Plugins’ menu in WordPress.
  3. Enable integration in settings area.
  4. Embed the CAPTCHA in custom forms using the shortcode: [raptcha ...] for some forms. Automaticaally inserts for others.

FAQ

How does Raptcha work?

Raptcha shows users an image with multiple animals and asks them to count a specific type (cats, dogs, or birds). Users drag and drop the correct number to verify they’re human. This challenge is simple for humans but difficult for bots, and includes behavioral detection to catch automated solvers.

What forms does Raptcha protect?

WordPress Core (Automatic):
Login forms and comment forms – just enable in settings.

Contact Form 7 (Per-Form Control):
Add [raptcha] tag to any form you want to protect.

WPForms (All Forms – Automatic):
When enabled, CAPTCHA appears on all WPForms automatically. Works with both WPForms Lite and Pro. No manual field addition needed.

Kadence Forms (Per-Form Control):
Add paragraph block with [raptcha integration=”kadence”] shortcode to specific forms. Dual-layer validation (client + server) for maximum security.

Fluent Forms (Per-Form Control):
Add HTML field with [raptcha integration=”fluentforms”] to specific forms. Works in both Gutenberg block and [fluentform id=”X”] shortcode embedding modes.

Ninja Forms (All Forms – Automatic):
CAPTCHA automatically appears on all Ninja Forms when enabled. No manual field addition needed.

Forminator (All Forms – Automatic):
CAPTCHA automatically appears on all Forminator forms when enabled. Works with both Forminator Free and Pro. No manual field addition needed.

Formidable Forms (Per-Form Control):
Add HTML field with [raptcha integration=”formidable”] to specific forms.

Advanced Forms for ACF (All Forms – Automatic):
CAPTCHA automatically appears on all Advanced Forms when enabled. Requires ACF Pro. No manual field addition needed.

How do I add Raptcha to my custom form?

Use the [raptcha] shortcode anywhere in your form. The CAPTCHA will generate dynamically when the page loads. Your form must submit via POST and include the hidden raptcha_validation_token field for validation.

For custom validation, use the Raptcha_Challenge_Manager::verify_validation_token() method in your form processing code.

Is Raptcha accessible?

Yes! Raptcha uses clear visual elements with proper ARIA labels and keyboard navigation support. Counting animals is more intuitive than distorted text, making it easier for users with cognitive or visual differences. The drag-and-drop interface works with both mouse and keyboard.

Does Raptcha slow down my site?

No. Raptcha is self-hosted with no external dependencies or tracking. Images are generated on-demand and cached temporarily. There are no third-party API calls that could slow down your forms or compromise user privacy.

Can I disable the “Powered by Raptcha” link?

Yes. The link is optional and can be disabled at any time in the Raptcha settings. Raptcha is free, private, and operates without third-party services. Leaving the link visible helps support ongoing development and allows others to discover a privacy-focused alternative to paid CAPTCHA solutions.

Why is it called Raptcha?

Raptcha is a play on CAPTCHA and rapture. Bots arrive, face a brief evaluation, and are peacefully ascended to bot heaven before they can make their move.

Reviews

19. jaan 2026 2 replies
It works as advertised. That said I would love 2 extra features to be added: 1. For at least the Comments form, or any form to that matter the Raptcha should not appear for logged in users. 2. We need support for the Log in/out core block when the block is configured to be displayed as a form and not as just a link. It would be great for the themes that use the Log in/out block in their footers. At this point, the Raptcha does not appear and even if you have entered the correct credentials it loads the actual WP login page and you have to go through the login process again. Great job and thank you for this plugin.
Read all 1 review

Contributors & Developers

“Raptcha” is open source software. The following people have contributed to this plugin.

Contributors

Translate “Raptcha” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.4.1

  • Added: Advanced Forms integration (automatic – AFC Pro Only)

1.4.0

  • Added: Forminator integration (automatic)
  • Added: Formidable Forms integration (per form with shortcode)
  • Fixed: Core Login/Out block now shows the challenge.
  • Enhanced: 3 Core and 7 major form plugin integrations now fully working and tested
  • Refactored: JavaScript architecture for integration isolation

1.3.0

  • Added: “Skip for Logged-In Users” toggle in Form Protection Settings
  • Feature: Allow logged-in users to bypass CAPTCHA verification on comments and forms
  • Security: Login form always requires CAPTCHA regardless of bypass setting
  • Enhancement: Per-integration bypass control with graceful handling for all form types

1.2.1

  • Revised README.txt FAQ

1.2.0

  • Added: Optional “Powered by Raptcha” attribution footer with admin toggle
  • Redesigned: Admin settings page with card-based layout and modern pill toggles
  • Enhanced: Save button with visual feedback (spinner during save, success notification)
  • Added: Two new FAQ items about attribution and plugin naming
  • Improved: Settings default handling for better upgrade experience

1.0.0

  • Initial release: Animal-based CAPTCHA with core integrations, bot detection, and WordPress form support.