reCaptcha for WooCommerce
Stop spam orders, fake registrations, and carding attacks on your WooCommerce store. 5 CAPTCHA providers, built-in rate limiting, IP blocklist, and automatic PayPal Payments compatibility. The most complete CAPTCHA plugin for WooCommerce.Features

Your WooCommerce order list is full of garbage. Fake names, gibberish addresses, dozens of "Failed" orders from bots testing stolen credit cards against your checkout. Every fake order wastes your time, messes up your analytics, and every successful carding attempt triggers chargebacks that cost $20–100 each.
reCaptcha for WooCommerce stops this. Five CAPTCHA providers, built-in rate limiting, IP blocklist, and automatic WooCommerce PayPal Payments compatibility. One plugin, every form protected, no conflicts.
Why store owners choose this plugin
Who is this for?
Choose your CAPTCHA provider
Five providers, each suited to different needs:
| Provider | Best for | Privacy | User experience |
|---|---|---|---|
| Cloudflare Turnstile | Most stores | Privacy-focused | Usually invisible |
| Google reCAPTCHA v3 | High-traffic sites | Standard | Invisible (score-based) |
| Google reCAPTCHA v2 | Maximum visible security | Standard | Checkbox challenge |
| hCaptcha | Privacy-conscious stores | Privacy-focused | Challenge-based |
| Self-Hosted Honeypot | GDPR strict compliance | No external data | Completely invisible |
All 13 protected forms
WordPress core (4 forms)
WooCommerce (6 forms)
WooCommerce extensions (3 forms)
All extension forms load conditionally. If you don't use Product Vendors, Subscriptions, or Memberships, those hooks never fire.
Beyond CAPTCHA: layered security
CAPTCHA is the first line of defense. This plugin adds three more:
Rate limiting
Bots don't try once. They try hundreds of times. Rate limiting blocks IPs after a configurable number of failed attempts.
Even if a bot passes CAPTCHA (using human-solving services), it can't brute-force your forms.
IP blocklist and whitelist
Block known bad actors before they even see your CAPTCHA:
192.168.1.0/24 or IPv6 ranges.192.168.1.*.# for organization.Role-based skip rules
Your team shouldn't solve CAPTCHAs on their own site:
Smart payment gateway handling
Payment gateway conflicts are the #1 reason CAPTCHA plugins break WooCommerce checkouts. This plugin handles it properly.
WooCommerce PayPal Payments auto-detection
The WooCommerce PayPal Payments plugin has its own built-in reCAPTCHA that protects PayPal's payment endpoints. Most CAPTCHA plugins don't know this. They add a second CAPTCHA on top, causing double verification that breaks the checkout.
This plugin reads PayPal Payments' reCAPTCHA settings directly from the database. When PayPal's reCAPTCHA is active, it automatically skips CAPTCHA for:
No manual configuration. An admin notice on the settings page confirms the detection.
Express payment handling
Express payment methods have their own fraud protection built in. Adding CAPTCHA on top just breaks them. This plugin automatically detects and skips:
12+ payment method IDs are recognized, plus pattern matching catches any variation. Developers can extend the list via the cfwc_express_payment_methods filter.
Dashboard security widget
See your protection stats at a glance from the WordPress admin dashboard:
No need to dig through logs. Open your dashboard and see if bots are hitting your store.
The honeypot: not a hidden field
Most honeypot implementations add a hidden form field and call it a day. Bots figured that out years ago. Ours uses seven verification layers:
a * b + c) encoded in base-36. Proves a real browser executed the JavaScript.Each WordPress installation gets a unique, randomly generated field name. If a field name is ever compromised, it can be regenerated.
Failsafe mode
What happens when Cloudflare, Google, or hCaptcha has an outage?
The honeypot requires no API keys and no external services. It's always available as a fallback.
Settings export and import
Moving from staging to production? Migrating to a new site? Export your settings as JSON and import them on the new site. The export automatically strips your API secret key for security. The import merges with existing settings, preserving any secret key already configured.
Setup takes 2 minutes
Scripts only load on pages with protected forms. Your other pages stay fast.
Getting your free API keys
Each provider offers free API keys:
For developers
19 filters and actions for deep customization:
cfwc_skip_verification — skip CAPTCHA based on custom conditionscfwc_skip_for_payment_method — skip for specific payment methodscfwc_supported_forms — register custom forms for protectioncfwc_register_providers — add custom CAPTCHA providerscfwc_express_payment_methods — extend the express payment detection listcfwc_paypal_protected_methods — modify which PayPal methods are skippedcfwc_error_message — customize error messages per providercfwc_blocked_ip_message — customize the blocked IP rejection messagecfwc_honeypot_min_time — adjust minimum form submission timecfwc_recaptcha_v3_threshold — adjust the reCAPTCHA v3 score thresholdcfwc_should_load_assets — force-load CAPTCHA assets on specific pagescfwc_before_render, cfwc_after_render — hook around the CAPTCHA widgetcfwc_before_verify, cfwc_verified, cfwc_failed — hook into verification lifecycleAll CAPTCHA widgets include proper accessibility attributes: role="group", aria-labelledby, and screen-reader text.
Privacy and compliance
Important for GDPR/CCPA compliance: When using external providers (Turnstile, reCAPTCHA, hCaptcha), user data including IP addresses is transmitted to third-party servers. You should:
All debug logs are stored locally using WooCommerce's logging system. Nothing is transmitted externally. Clean uninstall removes all plugin data from your database when you choose to.
Frequently asked questions
Will this slow down my checkout?
No. Scripts only load on pages with protected forms. Modern providers like Cloudflare Turnstile run in the background without visible delay. Your product pages, category pages, and homepage are never affected.
Does it work with the new WooCommerce Block Checkout?
Yes. The plugin has a dedicated Block Checkout integration using WooCommerce's Store API. It's not a hack on top of Classic Checkout. Both checkout types are supported as first-class citizens.
Does it work with WooCommerce PayPal Payments?
Yes. The plugin auto-detects when PayPal Payments has its own reCAPTCHA enabled and skips CAPTCHA for PayPal payment methods. You'll see a confirmation notice on the settings page. No manual configuration needed.
What if a real customer fails the CAPTCHA?
With providers like Turnstile or reCAPTCHA v3, most legitimate users never see a challenge. If someone does fail, they can retry immediately. The error messages are clear and helpful.
Is this compatible with caching plugins?
Yes. CAPTCHA verification happens server-side after form submission, so page caching works normally.
Can I protect custom forms?
Yes. Developers can use the cfwc_supported_forms and cfwc_register_providers filters to add CAPTCHA protection to any custom form.
Do I need coding skills to use this?
Not at all. Choose your provider, paste in your free API keys, select which forms to protect, and save. Most store owners are protected within 2 minutes.
What's the difference between this and free CAPTCHA plugins?
Free CAPTCHA plugins typically offer one provider, cover basic WordPress forms, and treat WooCommerce as an afterthought. Here's what this plugin does differently:
Is there a free trial?
We offer a 30-day money-back guarantee. Try it risk-free. If it doesn't stop your spam problem, get a full refund.
What about WooCommerce Subscriptions?
Yes. We protect Subscriptions checkout, early renewal forms, and plan switch forms. Not just the initial signup.
How is the rate limiter different from KoalaApps' checkout rate limiter?
Our rate limiter works across all 13 protected form types, not just checkout. It blocks IPs after configurable failed CAPTCHA attempts with adjustable thresholds (3–50 attempts), lockout duration (5 min–24 hours), and tracking window (5 min–24 hours). Whitelisted IPs are never rate-limited. Combined with the IP blocklist, it provides layered protection that goes well beyond checkout-only rate limiting.
Technical details
Ready to stop spam bots and carding attacks? Get reCaptcha for WooCommerce today. $29/year, 30-day money-back guarantee.