Title: HSArticle Math CAPTCHA for Forms
Author: hsarticle
Published: <strong>June 20, 2026</strong>
Last modified: June 20, 2026

---

Search plugins

![](https://ps.w.org/hsarticle-math-captcha-forms/assets/banner-772x250.png?rev=
3580100)

![](https://ps.w.org/hsarticle-math-captcha-forms/assets/icon-256x256.png?rev=3580100)

# HSArticle Math CAPTCHA for Forms

 By [hsarticle](https://profiles.wordpress.org/hsarticle/)

[Download](https://downloads.wordpress.org/plugin/hsarticle-math-captcha-forms.1.0.0.zip)

 * [Details](https://wordpress.org/plugins/hsarticle-math-captcha-forms/#description)
 * [Reviews](https://wordpress.org/plugins/hsarticle-math-captcha-forms/#reviews)
 *  [Installation](https://wordpress.org/plugins/hsarticle-math-captcha-forms/#installation)
 * [Development](https://wordpress.org/plugins/hsarticle-math-captcha-forms/#developers)

 [Support](https://wordpress.org/support/plugin/hsarticle-math-captcha-forms/)

## Description

HSArticle Math CAPTCHA for Forms adds a math CAPTCHA to any WordPress form. No API
keys. No third-party services. No configuration needed to get started.

**Features:**

 * Math CAPTCHA — addition, subtraction, multiplication with sensible number ranges
 * Two display modes: distorted canvas image (bot-resistant) or plain text (accessible)
 * Server-side validation — answer stored in PHP session with HMAC signature, never
   exposed to the client
 * Honeypot field — silent bot trap alongside the math challenge
 * Rate limiting — blocks IPs after 10 failed attempts per 10 minutes
 * Refresh button — generate a new question without reloading
 * WPForms auto inject — protect any WPForms (free or pro) without adding a shortcode
 * Registered as a CF7 form tag — no unknown tag warnings in the CF7 editor
 * Session only starts on pages that actually contain a form — no impact on page
   caching elsewhere
 * Clean admin page under its own menu — not buried under Settings

**Supported form plugins:**

 * Contact Form 7
 * WPForms (Free and Pro)
 * Any HTML form via the [hs_mcf_captcha] shortcode

## Installation

 1. Upload the plugin folder to /wp-content/plugins/
 2. Activate via the Plugins menu
 3. Go to Math CAPTCHA in the left admin menu
 4. Choose display mode and configure WPForms auto inject if needed

**Contact Form 7:** In the form editor add [hs_mcf_captcha] before [submit]

**WPForms Free:** Go to Math CAPTCHA settings and tick the forms you want to protect

**WPForms Pro:** Add an HTML field and paste [hs_mcf_captcha], or use auto inject

**Any HTML form:**

## FAQ

### Does this need an API key?

No. Fully self-hosted, no external services.

### Does it work with WPForms free?

Yes. Use the auto inject option in plugin settings — no HTML field required.

### Is it GDPR friendly?

Yes. No data is sent to third parties. The answer is stored in a server-side PHP
session only and cleared immediately after validation.

### Does it affect page caching?

The plugin only starts a PHP session on pages that actually render a form. Pages
without a form are not affected. For pages with forms, you should exclude them from
full-page caching in your caching plugin (WP Rocket, W3 Total Cache, LiteSpeed Cache,
etc.) to ensure the CAPTCHA field ID matches the session. This is standard practice
for any form page.

### What if PHP sessions are disabled on my host?

Most shared hosts have PHP sessions enabled. If CAPTCHA validation always fails,
ask your host to confirm sessions are available. Some managed hosts (such as WP 
Engine) restrict native PHP sessions — contact their support to enable session handling.

### Can bots bypass this?

Sophisticated bots that render JavaScript and solve math can bypass any math CAPTCHA.
This plugin stops the vast majority of spam bots which are simple automated form
fillers. Additional layers (honeypot field and IP rate limiting) are built in. For
high-security forms consider combining with Cloudflare Turnstile or hCaptcha.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“HSArticle Math CAPTCHA for Forms” is open source software. The following people
have contributed to this plugin.

Contributors

 *   [ hsarticle ](https://profiles.wordpress.org/hsarticle/)

[Translate “HSArticle Math CAPTCHA for Forms” into your language.](https://translate.wordpress.org/projects/wp-plugins/hsarticle-math-captcha-forms)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/hsarticle-math-captcha-forms/),
check out the [SVN repository](https://plugins.svn.wordpress.org/hsarticle-math-captcha-forms/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/hsarticle-math-captcha-forms/)
by [RSS](https://plugins.trac.wordpress.org/log/hsarticle-math-captcha-forms/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.0

 * Initial release

## Meta

 *  Version **1.0.0**
 *  Last updated **12 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.5 or higher **
 *  Tested up to **7.0**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [bot protection](https://wordpress.org/plugins/tags/bot-protection/)[captcha](https://wordpress.org/plugins/tags/captcha/)
   [contact form 7](https://wordpress.org/plugins/tags/contact-form-7/)[spam](https://wordpress.org/plugins/tags/spam/)
   [WPForms](https://wordpress.org/plugins/tags/wpforms/)
 *  [Advanced View](https://wordpress.org/plugins/hsarticle-math-captcha-forms/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/hsarticle-math-captcha-forms/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/hsarticle-math-captcha-forms/reviews/)

## Contributors

 *   [ hsarticle ](https://profiles.wordpress.org/hsarticle/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/hsarticle-math-captcha-forms/)