Joomla Extension

BadBot Protection for Joomla

Stop scanners, scrapers, spam bots and fake Googlebots with a browser check that runs on your own server. Real visitors and good bots pass as usual. No account needed, and no visitor data leaves your website.

Last Update: 18 Oct 2026
Version: 5.0
Compatibility: Joomla 4.2, 4.x, 5 and 6 / PHP 7.2.5 and newer
Price: Free

Why bots matter

Most of the traffic of a typical website is not people. Vulnerability scanners look for holes in your extensions, scrapers copy your content and prices, spam bots fill your forms and password guessers try your login and administrator pages. They slow the site down for real visitors and put it at risk. BadBot Protection tells them apart from people and from the good bots you want, and stops them before they cost you server time.

What it does

  • Browser check on your own server. Visitors that do not look like a normal browser get a short check page. The browser solves a small calculation in about a second and gets a pass; bots stay outside. Smart mode checks only suspicious visitors, All visitors mode checks everyone once a day during an attack, and Log only mode shows what would be blocked.
  • Verified search engines. Google, Bing, Apple, DuckDuckGo, Yandex, Baidu and others are checked against their official address lists or by reverse DNS. Real crawlers pass; scrapers that only pretend to be Googlebot are blocked.
  • Bot categories. Allow, check or block search engines, link previews, uptime monitors, AI assistants, AI training crawlers, SEO tools, vulnerability scanners, HTTP libraries and unknown bots.
  • Block AI training crawlers with one click. GPTBot, ClaudeBot, Common Crawl, Bytespider and other training crawlers get blocked, while AI search assistants that send visitors stay allowed.
  • Traps for scanners. Requests for files no visitor ever opens (.env, .git, copies of configuration.php, database tools) and a hidden trap link ban the client for the time you choose.
  • Form protection. The login form and login module, registration, password reset and username reminder, contact forms and the administrator login accept posts only from a real browser. People notice nothing; spam bots and password guessers are refused.
  • Allow and block lists. IP addresses (IPv4, IPv6, CIDR), User-Agents, and URLs that never get the check.
  • Activity and statistics. Charts for 24 hours, 7 and 30 days, the top bots, addresses, pages and reasons, and a log of recent events.
  • Your check page. Your logo and texts, with a live preview.
  • Safe by design. Logged-in users are never checked; the Web Services API, AJAX requests (com_ajax) and feeds are not touched; the protection starts before the Joomla page cache, and the page cache never stores the check page; an emergency switch file turns everything off.

Screenshots

Private by design

Bot detection, the browser check and the statistics all run on your server. The extension does not send visitor data anywhere and needs no account or connection to an outside service.

Full website protection

BadBot Protection stops bad bots. SiteGuarding protects the whole website. Block unwanted bots is part of the SiteGuarding Premium and Business plans, together with:

  • Website Firewall (WAF): SQL injection, XSS and exploit blocking
  • Server-side antivirus and daily malware scanning
  • Hack repair by our experts
  • DDoS prevention
  • Brute force and card testing protection
  • GEO blocking
  • 24/7 monitoring, website backups and an SSL certificate

FAQ

Will it hurt my search ranking?

No. Google, Bing and other search engines are verified by their official addresses and never see the check. If a crawler cannot be verified, it gets a temporary "try later" answer, never a block.

What do real visitors see?

In Smart mode almost all of them see nothing. In All visitors mode each new visitor sees the check page for about a second, once per day by default.

Does it work with the page cache and Cloudflare?

Yes. The protection starts before the System - Page Cache plugin, and the check page is never cached. Cloudflare is detected automatically, and other proxies can be added in the settings.

Does it send data anywhere?

No. Everything runs on your server. Joomla only asks siteguarding.com for the number of the latest version, like any extension update check.

I have the older BadBot Protection 1.2. What happens?

On Joomla 4.2 and newer, version 5.0 appears in System, Update, Extensions. Click Update: 5.0 replaces 1.2 and works on its own, without an account; Smart mode starts automatically. Joomla 3 sites stay on 1.2.

I locked myself out. What now?

Create an empty file named sgbb-off.txt in the folder where Joomla is installed, with FTP or the file manager of your hosting. The protection stops at once. Delete the file to turn it back on.

Changelog

5.0
- Works on its own, without an account or the SiteGuarding dashboard.
- Browser check on your own server, with Smart, All visitors and Log only modes.
- Verified search engines by official addresses and reverse DNS; fake crawlers are blocked.
- Bot categories, including AI assistants and AI training crawlers.
- Traps for scanners, hidden trap link and bans.
- Protection for the login, registration, password reset, username reminder, contact and administrator login forms.
- Allow and block lists, excluded URLs, activity charts and log.
- One package for Joomla 4.2, 4.x, 5 and 6; updates from 1.2 through the Joomla update manager.
- Modern interface with a mobile layout.

Live Chat Support
Our website uses cookies, which help us to improve our site and enables us to deliver the best possible service and customer experience. See our policy Accept