Where WordPress spam registrations come from
Spam user registration doesn't only happen on the WordPress registration page. On a shop, bots also open accounts through WooCommerce's My Account form and the checkout, and page-builder sign-up widgets are another way in. WP SecureGate covers all of them:
- WordPress registration;
- WooCommerce My Account and checkout;
- Essential Addons and Ultimate Addons sign-up widgets.
On by default. Being signed in doesn't get around it.
Limits per address and across the site
Each IP address may open at most 3 new accounts a day. You can change that to 1, 5, 10 or no limit. Across the whole site, no more than 60 accounts can be opened in an hour, which caps a burst spread over many addresses. An IPv6 /64 counts as one address, so a bot can't dodge the limit by stepping through the addresses in one IPv6 allocation.
A buyer opening an account at checkout is never limited, because many real customers can share one address. Accounts created by an admin, by WP-CLI, by cron jobs or by imports are never touched either.
On by default: 3 accounts per address per day, 60 an hour site-wide.
Block disposable email registration
Throwaway inboxes are refused at sign-up. The plugin ships with a list of about 90 disposable-mail domains, including Mailinator, YOPmail and 10 Minute Mail.
On WordPress and WooCommerce forms it also refuses addresses whose domain can't receive mail. Only a definite answer that the domain doesn't exist leads to a refusal. If the lookup fails or times out, the sign-up goes through, so a slow DNS server never locks out a real person.
On by default.
One email a day instead of one per sign-up
WordPress normally emails the admin about every new account, so a wave of bot sign-ups means a wave of mail. WP SecureGate replaces that with one daily summary. If you prefer, you can go back to one email per account, or switch the emails off. Accounts an admin creates are still emailed as before.
Daily summary by default. Choices: daily, each, off.
Is registration meant to be open?
WordPress's "Anyone can register" setting is what lets bots in through the WordPress form, and it is easy to leave on by accident. When it's on, WP SecureGate says so and offers to turn it off in one click. WooCommerce sign-up has its own setting, so a shop's customer accounts keep working.
It also warns when new accounts are given a role above Subscriber, a setting that would hand every bot more access than it should have.
The warning shows whenever open registration is on.
Find fake user accounts already on WordPress
Bots that got in before you installed protection leave accounts behind. The unused-accounts review lists subscriber and customer accounts with no sign-in on record and no posts, comments, orders, memberships or courses. Accounts with a throwaway email are flagged, and accounts opened in a burst are pointed out for you to judge.
Nothing is deleted automatically. You pick the accounts to remove and confirm how many before anything happens.
A review you open when you want. It never deletes on its own.
A CAPTCHA on the registration form
For sites that want a challenge as well, a CAPTCHA can be added to the WordPress and WooCommerce registration forms with Cloudflare Turnstile, hCaptcha, Google reCAPTCHA or a built-in math challenge. See WordPress CAPTCHA for the providers and the other forms it can cover.
Shops can read how sign-up protection fits with the checkout guards on the WooCommerce security plugin page, and how it pairs with the billing-email check on WooCommerce fake orders.
Off by default. Needs a CAPTCHA provider and the registration form ticked.
Part of WP SecureGate: WooCommerce security →