You can reduce bot abuse on WordPress without a CAPTCHA or web application firewall (WAF), but the right control depends on what the traffic is doing. Protect logins with strong passwords, administrator two-factor authentication and targeted rate limits; moderate or disable native comments where appropriate; and secure forms and specific API routes without blocking WordPress functionality wholesale.
First identify what the bots are targeting
Before changing settings, check your available server logs or bot analytics for the paths being requested and the kind of activity involved. Repeated requests to /wp-login.php, unwanted comments, repeated form submissions, API calls and general crawling are different problems. A rule aimed at the wrong surface can block legitimate visitors or integrations while leaving the actual abuse untouched.
As an Amazon Associate I earn from qualifying purchases.
- Login attempts: prioritize account security and rate limits on the login endpoint.
- Comment spam: use WordPress comment settings and moderation.
- Form abuse: apply controls to the particular form or endpoint.
- API or crawler traffic: identify the specific route and preserve legitimate WordPress, plugin and search-engine activity.
Cloudflare recommends reviewing bot traffic before changing bot settings and distinguishes general bot controls from endpoint-specific measures: Stop malicious bots while allowing legitimate traffic.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallOutdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchHow to stop WordPress login bots
Use a strong, unique password for every administrator account, store it in a password manager, and enable two-factor authentication (2FA) for administrators. Keep WordPress core, themes and plugins updated, and monitor failed-login patterns so you can tell whether the problem is continuing.
#1 Best Overall
Rate-limit repeated requests to /wp-login.php at the server or network edge if your hosting setup provides that option. This can reject excessive requests before WordPress processes them. A security plugin may also throttle login attempts when your host or edge service does not, but plugin code runs in PHP; under a heavy flood, those requests still consume server resources. WordPress documents these account and throttling considerations in its brute-force attack guidance.
Changing or hiding the login URL is not a substitute for authentication and rate limiting. Avoid broad country blocks as a default: WordPress notes that they can exclude legitimate users and be difficult to maintain.
Rank #2
Decide whether XML-RPC is needed
XML-RPC is an exposed WordPress route, but some services and applications rely on it. Check your site’s integrations before disabling access to xmlrpc.php.
- If nothing needs it: disabling XML-RPC can remove an endpoint you do not use.
- If an integration needs it: preserve the required traffic and use targeted restriction or rate limiting rather than a blanket block.
For example, Cloudflare documents a managed rule, WP0007, that protects Jetpack traffic using xmlrpc.php?for=jetpack. Its separate WP0002 rule completely disables access to xmlrpc.php when enabled. Confirm which integrations your site needs before using a rule that blocks the whole endpoint: Cloudflare’s WordPress managed rules.
Reduce spam in native WordPress comments
Turn comments off where discussion is unnecessary
Close comments on posts or pages that do not need them. WordPress’s comment-spam documentation puts the choice plainly: “If a page or post does not need comments, you may decide to turn comments off completely.” See Understanding comment spam.
Moderate comments before publication
Require review before comments appear publicly. This does not stop bots from submitting comments, but it prevents unapproved submissions from being published automatically. If you add a comment-management plugin, check that it is maintained, compatible with your WordPress version, documented and supported; WordPress recommends evaluating those factors.
Rank #4
Protect forms and high-volume endpoints
For repeated form submissions, target the form or request endpoint rather than disabling unrelated WordPress features. A server- or edge-level rate limit can restrict repeated requests to a form, login route or API endpoint. Cloudflare explains that endpoint rate limiting can also address direct POST requests that bypass a client-side form widget. Because this approach does not require a CAPTCHA, set limits to match normal visitor behavior and check that legitimate submissions still work.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
A form-specific control is preferable to a site-wide block when only one form is being abused. After applying a rule, test the form as a legitimate visitor and review logs for blocked requests that should have been allowed.
Best Value
Keep the REST API available unless a specific route is abused
Do not block the WordPress REST API globally just because bots make API requests. The API exposes WordPress resources and supports site and plugin functionality; an across-the-board restriction can break features that depend on it. If logs point to a particular endpoint or abusive request pattern, scope the control to that route, method or rate, then test affected plugins and integrations. WordPress explains the API’s role in its REST API handbook.
Choose controls by where they act and what they cover
When deciding between WordPress settings, a plugin, server rules or a hosted edge service, compare the control against the problem you actually observed.
| Consideration | Question to answer |
|---|---|
| Surface covered | Does it address logins, XML-RPC, comments, a particular form, an API route or general crawling? |
| Filtering point | Does it reject requests before they reach your server, at the web server, or after WordPress and PHP begin processing them? |
| Compatibility | Could it affect Jetpack, mobile apps, single sign-on, webhooks, plugins or verified search crawlers? |
| Visitor impact | Could it block a real login, form submission or other legitimate activity? |
| Maintenance and recovery | Can you review the logs, update the rule and recover quickly if it blocks expected traffic? |
WordPress cautions that server-level examples vary by environment and should be tested in staging. Cloudflare likewise recommends reviewing traffic and distinguishes broad bot settings from endpoint-specific controls. Make one change at a time where practical, then verify normal logins, comments, forms and integrations before tightening rules further.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemsQuick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




