Cloudflare · Spam & Bot Protection

Cloudflare Set Up to Stop Spam and Bots — Without Blocking Google

Most WordPress sites sitting behind Cloudflare are using about a tenth of it, and a fair number are quietly misconfigured in a way that breaks their own security plugins. We set the edge up properly: junk stopped before it reaches WordPress, real customers left alone, and search engines untouched.

Ask about your Cloudflare setup

Australian team

Based here, working your hours — not a timezone away

144+ projects delivered

Over 10+ years building and maintaining sites for Australian businesses

One developer, start to finish

The same person every time — no re-explaining your site

Straight answers, on your terms

We only take work we can finish. Ask us anything first — no obligation

This is configuration work with an end, not a subscription. If the site is already compromised, malware removal comes first and costs from $299 — ask and we will tell you which one you need. If you want somebody watching the site permanently afterwards, that is a care plan from $159/mo. And if your problem is one specific form rather than the whole site, the Gravity Forms and Contact Form 7 pages are the better read.

The misconfiguration almost every Cloudflare site has

Cloudflare is a proxy, so once it is switched on every request arrives at WordPress from a Cloudflare address rather than the visitor's. Unless the original address is restored, everything inside WordPress that makes a decision about an IP is now reading the wrong one — your security plugin, your comment spam filter, your login rate limiter, your analytics. This is why people find their login log showing thousands of attempts from a single address, and why blocking that address locks out every visitor at once. It is a ten-minute fix and it is the first thing we check, because every other rule you write is built on top of it.

Bot Fight Mode is blunter than it sounds

The free Bot Fight Mode is a single switch with no scope, and it will happily challenge things you depend on: payment webhooks from Stripe, uptime monitors, your own automation calling the REST API, a booking system's callbacks. The failures it causes are intermittent and arrive with no obvious cause, which makes them expensive to trace. The right shape is almost always narrow rules aimed at the paths that actually get abused, with the automated traffic you rely on allowed through deliberately rather than by luck.

Turnstile instead of reCAPTCHA, on the forms that need it

reCAPTCHA v3 scores every visitor, which means it loads Google's script on every page of the site whether or not there is a form on it — a real cost to your loading times, and a third-party request on pages that had no reason to make one. Cloudflare's Turnstile does the same job without the puzzle, without the sitewide script, and without sending your visitors to Google to be scored. It is free, and on most sites it removes more spam than the plugin that was there before it.

Rules worth having on a WordPress site specifically

WordPress has a small number of paths that attract almost all the automated abuse: the login screen, XML-RPC, the REST route that lists usernames, and admin-ajax when a plugin exposes something expensive there. Rate limiting the login and challenging the rest removes the bulk of the noise without touching a single ordinary visitor, because ordinary visitors do not request any of them. Country blocking, which is what people usually reach for first, is a much worse trade — it is easy to evade and it silently loses you real customers who happen to be travelling.

Caching rules are where Cloudflare breaks shops

Aggressive caching at the edge is the main reason to have a CDN and the main way a WooCommerce site gets hurt by one. Cart, checkout, account pages and anything that varies by logged-in cookie must be excluded, or two customers can be served the same cached page — which is not a performance problem, it is a data problem. We set the bypass rules before turning caching up, not after somebody reports something strange.

Nothing here is allowed to cost you search traffic

It is entirely possible to configure Cloudflare so that Googlebot gets challenged, and the site does not tell you — rankings simply decay over the following weeks. Verified search crawlers are allowlisted explicitly, robots.txt is checked after the change rather than assumed, and we confirm the sitemap still fetches cleanly from outside the network. A security configuration that quietly costs you the traffic it was protecting is a bad trade whatever it blocked.

AI crawlers are a business decision, not a security one

Cloudflare will offer to block AI crawlers as a group, and that single switch conflates two different things: bots that take your content to train a model, and bots that read your site so an assistant can cite it and send someone to you. Blocking the first costs you nothing. Blocking the second removes you from ChatGPT, Claude and Perplexity answers entirely. We separate them, tell you plainly which is which, and let you decide — rather than flipping one switch and calling it protection.

What this costs

A full configuration pass — real IP restored, WAF and rate limiting rules written, Turnstile placed on your forms, caching rules made safe, verified bots allowlisted and the result tested from outside — starts at $300 and is fixed-quoted once we have looked at the site. If you would rather we simply diagnosed what is wrong with the current setup and wrote it down, that is $249. Ongoing changes are $165 an hour or cheaper in a block: $750 for five hours, $1,400 for ten.

Care plans

Plans, and what each one actually includes.

Month to month, no lock-in — change or cancel any time. Prices in AUD.

Essential

$159 /mo AUD

Keeping a site secure, updated and online. No development time included.

What is covered

  • WordPress core, theme & plugin check
  • Weekly off-site backupsA full copy of your site and database taken every week and stored on separate infrastructure, not on your own server — so a failure, a hack or a bad update cannot take the backups with it., restorable on request
  • Uptime & SSL monitoringYour site is checked from outside every few minutes. If it goes down, or the security certificate is about to expire, the alert reaches us — you are not the monitoring system. — alerts come to us, not you
  • Malware checkFiles and database are scanned for injected code, so anything that has been planted is found rather than waiting to be noticed. maintained
  • Broken-link and 404 checks
  • Monthly report of site status
  • Email support included
Start with Essential

Billed monthly in AUD. Cancel any time — no lock-in.

Dev

$700 /mo AUD

Your site stays up, stays secure and stays current — and when something breaks, a developer fixes it rather than logging it.

What is covered

  • Critical security & performance checksThe checks that catch the things that actually take a site down: outdated core and plugins with known vulnerabilities, injected code, error rates, and pages that have become slow enough to lose visitors. every week
  • Uptime & SSL monitoringYour site is checked from outside every few minutes. If it goes down, or the security certificate is about to expire, the alert reaches us — you are not the monitoring system. — alerts come to us, not you
  • Weekly off-site backupsA full copy of your site and database taken every week and stored on separate infrastructure, not on your own server — so a failure, a hack or a bad update cannot take the backups with it., restorable on request
  • Your developer emails you every month with what changed and what needs attention
  • Staging site for development changesA private copy of your site where changes are built and checked before anyone else sees them. Updates, new sections and design work go there first, get looked at on phone, tablet and desktop widths, and only reach the live site once you have said so. It matters most on page-builder sites, where a bad update does not error — it re-renders, and the page looks subtly wrong on a screen size nobody checked. — nothing reaches the live site unapproved
  • 5 hours of developer time a month
  • Fixes and small changes — not a build. Content, layout and design edits, plugin and integration setup (included in dev hours)
  • 1 basic page built to match your existing design (included in dev hours)
  • Weekly WordPress core, theme & plugin updates (included in dev hours)
  • Weekly malware and virus check, and fix (included in dev hours)
  • Speed & Core Web VitalsCore Web Vitals are the three loading and stability measures Google uses as a ranking signal — how fast the main content appears, how quickly the page responds to a tap, and whether it jumps around while loading. We measure and fix all three. check and fix (included in dev hours)
  • Priority queue — a developer is assigned and contacts you within 48 hours
  • Urgent issues covered for 1 hour of immediate debugging — you are told what we found, while we work and once it is fixed
Choose Dev

Billed monthly in AUD. Cancel any time — no lock-in.

Most popular

Master

$1,300 /mo AUD

Where Dev fixes and maintains, Master builds — pages, integrations, and the email and domain problems nobody else will own.

Everything in Dev Plan included +

  • Staging site for development changesA private copy of your site where changes are built and checked before anyone else sees them. Updates, new sections and design work go there first, get looked at on phone, tablet and desktop widths, and only reach the live site once you have said so. It matters most on page-builder sites, where a bad update does not error — it re-renders, and the page looks subtly wrong on a screen size nobody checked. — nothing reaches the live site unapproved
  • 10 hours of developer time a month
  • Everything in Dev — the same checks, monitoring, backups and monthly email
  • Up to 3 pages designed and built (included in dev hours)
  • CRM, accounting and API integrationsConnecting your site to the systems you already run — a CRM like HubSpot, accounting like Xero, or any service with an API — so data moves between them without anyone retyping it. (included in dev hours)
  • Email deliverability problemsWhen forms stop arriving, or your mail lands in spam. We work through the sending records — SPF, DKIM and DMARC — and the mail service itself, rather than telling you to check your junk folder. diagnosed and fixed (included in dev hours)
  • Domain and DNS issuesExpiring domains, records pointing at the wrong place, certificates that will not renew, a migration that left half the traffic behind. The infrastructure layer most agencies hand back to you. handled (included in dev hours)
  • Custom features and functionality (included in dev hours)
  • WooCommerce & payment gateway work (included in dev hours)
  • Same-day response on anything urgent — a developer will work outside business hours if needed
  • Quarterly performance and security checksEvery three months we re-run the full audit: load times and Core Web Vitals, plugin and PHP versions, user accounts and permissions, backup restores, and anything flagged since the last review. You get the findings in writing. (included in dev hours)
Choose Master

Billed monthly in AUD. Cancel any time — no lock-in.

Ultimate

Quoted scoped to the work

When the roadmap needs more than Master, or the work is better run as a project.

Get a quote

Everything in Master Plan included +

  • 20+ hours a month, or a fixed-price project
  • A standing slot in our schedule
  • Multi-site and white-label arrangementsWe look after several sites under one agreement, and — if you are an agency or consultancy — we can work under your brand, so your client only ever deals with you.
  • Architecture, infrastructure and hosting work
  • Direct access, no ticket queue
  • We will tell you honestly whether a retainer or a fixed quote costs you less
Why CloudyWP

Why the Edge Is the Right Place to Stop This

A request your server has to boot WordPress to reject has already cost you the thing you were trying to protect.

Stopped Before It Arrives

Junk traffic is turned away at Cloudflare rather than inside WordPress. A plugin cannot save a server from load it must start PHP to evaluate, which is why sites under real pressure need the filtering to happen one layer earlier.

Your Real Visitors Restored

Behind a proxy every request looks like it came from Cloudflare unless the original address is put back. Until that is fixed, every IP-based rule on your site is reading the wrong address — the most common Cloudflare fault there is.

Narrow Rules, Not Blunt Ones

Rules aim at the handful of paths that actually attract abuse. Ordinary visitors never request any of them, so the noise disappears without a single real customer meeting a challenge.

Turnstile Over reCAPTCHA

No puzzle for your visitors, no Google script loading on pages that have no form, and no sending your customers away to be scored. It is free, and it usually stops more than whatever it replaced.

Google Left Alone

Verified search crawlers are allowlisted deliberately and checked from outside afterwards. A configuration that quietly challenges Googlebot decays your rankings for weeks without reporting a single error.

Checkout Never Cached

Cart, checkout, account and anything varying by login are excluded before caching is turned up. Get that order wrong on a shop and two customers can be served the same page — a data problem wearing a performance costume.

What people ask before letting anyone near their DNS

We already pay for a security plugin. Is this instead of it?

Alongside, and the split matters. Cloudflare stops traffic before it reaches your server, which is the only thing that helps when the problem is volume — a plugin cannot save you from load it has to boot WordPress to evaluate. The plugin is still what watches file changes and users inside the site. What we usually remove is the overlap: two products rate-limiting the same login screen tend to produce confusing results rather than twice the protection.

Our contact form gets fifty spam messages a day. Will this fix it?

Yes, and usually within a day. The bulk of form spam is automated, and a Turnstile challenge stops nearly all of it without asking your visitors to identify traffic lights. What it will not stop is a human being paid to fill in forms, which is rarer than people think but does happen — and if that is what you have, the answer is different and we will say so rather than selling you the same fix twice.

Will you block real customers?

That is the failure mode we design against, which is why we prefer narrow rules over broad ones and challenges over outright blocks. A challenge that a real person passes in a second costs you almost nothing; a block costs you the customer with no way to know it happened. Everything goes on in log-only mode first where the rule type supports it, so we can see what a rule would have caught before it catches anything.

Do we need a paid Cloudflare plan?

Usually not. The free plan includes the WAF rules, Turnstile, the caching rules and the verified-bot handling that this work is mostly made of. Paid plans buy you more rules, finer bot controls and better analytics, and there are sites that genuinely need them — a shop under sustained attack, for instance. We will tell you if yours is one, and we have no interest in you upgrading if it is not.

Does putting the site behind Cloudflare hurt our Google rankings?

Correctly configured, it helps — the site gets faster for visitors further away, and speed is something Google measures. Incorrectly configured it can hurt badly, by challenging Googlebot or caching a redirect it should not have. That is not an argument against Cloudflare, it is an argument for checking afterwards, which is part of this work rather than an extra.

Our host has their own CDN. Do these conflict?

Sometimes, and it is worth finding out before rather than after. Two caching layers in front of each other are not twice as fast; they are twice as hard to clear, and a stale page can survive a purge of the layer you thought was responsible. Some hosts also object to proxying in their terms. We check what is already in front of the site and either integrate with it or recommend turning one of them off, with a reason.

Can you do this without taking the site down?

Yes. The DNS change itself is not a downtime event, and the rules go on afterwards one at a time rather than as a single configuration dump. The part that needs care is the SSL mode — set wrong during a move it produces a redirect loop, which is the one failure people associate with Cloudflare migrations. We set it to match how your origin actually serves the site rather than to whatever is fastest to click.

Who owns the Cloudflare account at the end?

You do. We would rather be added to your account than create one you have to prise out of us later, and if the site is already in an old agency's account we will help you move it. The same applies to the DNS records: you get a copy of what they were before we touched anything, which matters more than it sounds when your email stops working and everyone is guessing.

Something is crawling our site hard enough that our host complained.

That is the clearest case for this work, and it is usually resolved the same day. The first step is identifying what it actually is, because roughly half the time it turns out to be a legitimate crawler on a site that generates a near-infinite number of URLs — faceted filters and calendars are the usual culprits — in which case rate limiting is treating the symptom and the real fix is upstream. The other half is scrapers, and those simply get stopped.

We are on WooCommerce. Is any of this risky for the shop?

The risk is entirely in the caching rules, and it is real: cache the wrong thing and you can serve one customer a page built for another. That is why bypasses for cart, checkout, account and the logged-in cookie go on before caching is turned up, and why we test with a real order rather than declaring it done. Handled in that order it is one of the better things you can do for a shop, because it takes load off the server for exactly the pages that do not need it.

Ask about your Cloudflare setup

A short call, a fixed quote, and no obligation either way.

Get a fixed quote

Why CloudyWP

Spam and bot traffic stopped before it reaches WordPress. WAF rules, Turnstile and safe caching — set up without blocking Google. Melbourne-based, from $300.

Get a fixed quote

02 — How we work

From first call to live — four steps, no surprises.

Every CloudyWP project runs the same way, whether it is a one-page site or a store with a thousand SKUs. Here is exactly what happens.

01

We map what you actually need.

A single scoping call, then a written plan: what gets built, what it costs, and when it ships. No discovery-phase invoices, no moving targets.

Typically 48 hours

02

We design and build it properly.

Custom WordPress or Shopify on clean code you own outright. Every build ships fast, passes Core Web Vitals, and is handed over documented.

2–6 weeks typical

03

We automate the busywork.

Your site talks to the tools you already run — CRM, invoicing, email, stock. The repetitive admin stops being someone's job and starts running itself.

Average 15 hrs saved weekly

Scope A fixed quote, in writing

Deliverables, price and dates agreed before a line of code is written.

  • Free scoping call
  • Written scope document
  • Fixed price, no hourly creep

48 hrs to your quote

Get a quote