Antibot Email Shield
Shows your email to people, not bots. A free WordPress plugin that keeps email addresses out of your pages and reveals them only after a Cloudflare Turnstile check.
1. Overview
Spam bots visit websites and copy any email address they find, which is how inboxes fill up with junk mail. Antibot Email Shield stops that. Instead of showing your email on the page, it shows a Show email address button. When a real person clicks it and passes a quick check, the email appears, and it hides again after a few seconds.
Setting it up takes about 10 minutes. Follow the steps in order, starting with Requirements.
2. Requirements
Before you start, make sure you have:
- A WordPress website where you can install plugins (WordPress 6.0 or newer).
- A free Cloudflare account. You’ll create one in step 4 if you don’t have one. It costs nothing, and you don’t need to move your website to Cloudflare.
- The email addresses you want to protect, such as
support@yourdomain.com.
3. Install the plugin
- Sign in to your WordPress dashboard (usually
yourdomain.com/wp-admin). - In the left menu, go to Plugins → Add New, then click Upload Plugin at the top.
- Click Choose File, select
antibot-email-shield.zip, and click Install Now. - When it finishes, click Activate.
Updating from an earlier version? Upload the new zip the same way and choose Replace current with uploaded. Your keys and emails are kept. Don’t delete the old plugin first, because deleting it removes your saved settings.
You’ll now see Antibot Email Shield on your Plugins page, with a Settings link under its name. You can also find the settings any time under Settings → Antibot Email Shield.
4. Get your Turnstile keys
Cloudflare Turnstile is the free check that tells people from bots. Most visitors never see a puzzle: it usually finishes on its own in a second or two. To use it, you need two keys from Cloudflare: a Site Key and a Secret Key.
A. Create a free Cloudflare account
Skip this if you already have one.
- Go to dash.cloudflare.com/sign-up (opens in new tab).
- Enter your email address and choose a password, then click Sign up.
- Open the email Cloudflare sends you and click the link to verify your address.
B. Create a Turnstile widget
- Sign in at dash.cloudflare.com (opens in new tab).
- In the left menu, go to Protect & Connect → Application security → Turnstile.
- Click Add widget.
- Widget name: type any name you’ll recognize, such as your website’s name.
- Hostnames: click Add hostnames and type your website’s domain without
https://, for exampleyourdomain.com. If your website address starts withwww, also addwww.yourdomain.com. - Widget mode: choose Managed. This is the recommended mode: Cloudflare only shows a checkbox when it isn’t sure the visitor is human.
- Pre-clearance: choose No.
- Click Create.
C. Copy your keys
Cloudflare now shows your Site Key and Secret Key. Each has a copy button next to it. Keep this page open: you’ll paste both keys into WordPress in the next step.
Want more detail? Cloudflare’s own guide: Get started with Turnstile (opens in new tab).
5. Add your keys
- In WordPress, go to Settings → Antibot Email Shield.
- Paste your Site Key into the Turnstile site key box.
- Paste your Secret Key into the Turnstile secret key box.
- Click Save Changes at the bottom of the page.
6. Add your emails
- On the same settings page, find the Protected emails box.
- Type each email you want to protect, one per line.
- Click Save Changes.
support@yourdomain.com
admin@yourdomain.comThe plugin gives each email a short name, called an id. The id is the part of the email before the @:
| Email you saved | Its id |
|---|---|
support@yourdomain.com | support |
admin@yourdomain.com | admin |
After saving, the settings page shows a Saved: list with each id next to its email, so you can check the ids before moving on.
help: support@yourdomain.com gives that email the id help.
7. Add the shortcode to a page
A shortcode is a short piece of text in square brackets. When you add it to a page, WordPress replaces it with the Show email address button.
[email_shield id="support"]Change the id to match your email. The part inside the quotes must be the id of an email you saved in step 6:
| To show this email | Use this shortcode |
|---|---|
support@yourdomain.com | [email_shield id="support"] |
admin@yourdomain.com | [email_shield id="admin"] |
Only change the word inside the quotes. Keep the brackets, email_shield, id= and the quotes exactly as they are.
In the WordPress block editor
- Open the page, click the + button, and search for Shortcode.
- Add the Shortcode block and paste your shortcode into it.
- Click Update (or Publish).
In Elementor
- Open the page with Edit with Elementor.
- In the left panel, search for Shortcode and drag the widget onto the page.
- Paste your shortcode into the widget’s box and click Update.
Now view the page. You’ll see the Show email address button where you placed the shortcode. Click it to try it out.
8. Customize
These settings are optional. The defaults work well for most websites.
| Setting | Default | What it does |
|---|---|---|
| Hide again after | 25 seconds | How long the email stays visible. Set it to 0 to keep it visible. |
| Button label | Show email address | The text on every button. |
| Rate limit | 10 | How many times one visitor can reveal emails in 10 minutes. |
To change the text of just one button, add label to its shortcode:
[email_shield id="support" label="Email our support team"]
9. Add a note to your privacy policy
When a visitor clicks the button, Cloudflare Turnstile checks their browser to confirm they’re human. It’s good practice, and required in some countries, to tell your visitors. Copy this text into your privacy policy and adjust it if needed:
To protect email addresses on this site from spam bots, we use Cloudflare Turnstile.
When you choose to reveal an email address, Turnstile processes technical
information from your browser (such as your IP address and browser details)
to confirm you are a human. See Cloudflare's Turnstile privacy addendum:
https://www.cloudflare.com/turnstile-privacy-policy/10. Support
Antibot Email Shield is a free plugin, developed by Ahmed MC.
Troubleshooting
- The button looks plain or does nothing, but works when you’re logged in. Update to version 1.2.1. If you’re on an older version, go to Elementor → Settings → Performance, set Element Caching to Disable, then clear your site cache.
- The button doesn’t appear. Check that the id in the shortcode matches an email saved in step 6. Visitors see nothing for an unknown id; when you’re logged in as an administrator you’ll see a short message instead.
- The check keeps failing. Re-check both keys in step 5, and make sure your domain is listed under Hostnames in the Turnstile widget.
Report a bug or issue
If something doesn’t work as expected, please let us know so it can be fixed. Click the button to see the email address:
To help fix it quickly, include:
- What happened, and what you expected to happen
- The steps to make it happen again
- Your WordPress version and the plugin version (shown on the Plugins page)
- A screenshot, if you can