Unfortunately, if you send or receive email, gather email addresses or have anything to do with email at all, then you know about spam. Spam is a consistently frustrating issue, particularly for business owners and email marketers.
Likely you're interested in consistently gaining more subscribers or contacts to help your business grow and one way to do this effectively is to have a signup form on your website. If you don't have a form you should definitely make sure you add one for gathering information about people interested in your product or service. However, you should be prepared for fake or spam sign-ups as well - which may complicate your campaigns.
The challenge is to secure your forms without adding unnecessary complexity, allowing regular users to submit their information smoothly. Below are some strategies to prevent bot sign-ups while ensuring your forms remain accessible to trusted contacts.
What is a spambot?
To clarify, a spambot is a malicious program designed to harvest email addresses and other information from online sources such as web forms or websites. The collected data is typically used to create large email lists for sending unsolicited messages - commonly known as spam.
Spambots can not only flood your contact lists with fake or invalid addresses but also damage your email deliverability and sender reputation. Implementing preventive measures helps maintain a clean and engaged subscriber base while ensuring your emails reach legitimate recipients.
Use a CAPTCHA
You've almost certainly already encountered a CAPTCHA. If you've had to try and interpret some distorted letters or numbers and submit them then you've filled out a CAPTCHA. You'll still find some forms that require this, but fortunately, this step has been simplified a lot to make it easier on humans. Basically, you're putting intelligent programming in place to allow people to check a box that confirms they are a living breathing person. This is easy for humans, but difficult for bots to do. You can implement this protective step for free, as this service is provided by reCAPTCHA.
Use a double opt-in form
Along with your CAPTCHA, or certainly, if you have no other means for protecting your form, and as a generally good way to build a solid list of quality email, you'll want to be using a double opt-in process for confirming sign-ups. This means that when someone enters an email address into your form, you're sending an automatic confirmation link to that email address. The user needs to go to their inbox, open the email and click the link to verify that their email is real and so are they. A bot is very unlikely to do this step and any signups that don't complete this should not be added to your list.
Add a test question to your form
Elastic Email provides you with a double opt-in web form you can easily add to your website or landing pages for gathering new sign-ups. You have an option to customize this form in a variety of ways and this includes adding additional HTML which you'll copy and paste into your website page.
You may consider adding a simple question to the form that all humans will know the answer to but that will be difficult for bots. Here is an example:
<form>
Email address: <input id=email><br>
A panda is black and <br>
<input type=submit>
</form>
This way you know it's a bot if the input is not the word "white" and can delete the submission. Of course, you need to consider carefully the question you use, it needs to be something everyone will know the answer to in order to avoid any frustration for your potential subscribers.
Add an unseen extra field or honey-pot
A honey-pot in terms of form submissions means that you're setting up an extra field that bots will see and fill out, but your real human users won't. It's basically a behind the scenes filtering step that protects your forms without adding any additional steps for the real people trying to join your lists.
You can implement this by adding HTML and specifically styling it out using CSS. It's true that some sophisticated bots can now read CSS and Javascript, but this is still an effective method and worth considering if you've got some basic programming skills. Here is a simple example:
CSS
.dispnon{display: none}
HTML
<input class="dispnon" name="field_name" type="text">
This gives you a basic idea - you'll want to ensure that the field you've implemented as a honeypot is not visible on your actual form. If you receive data containing hidden information, you can identify it as a bot sign-up. There are various ways to achieve this, and the code can range from simple to more complex.
Block Comment Spam
There are a few ways to specifically block comment spam and they can include changing the file names of standard URLs or moving your form pages from time to time. Another easy service to implement is Akismet. This service is designed to filter out comment spam and is implemented by using an API to activate their plugin.
Spam signups can mess up your lists
If you're unsure about the importance of preventing spambot sign-ups or concerned that adding an extra step to your form might discourage users from subscribing, consider the alternative.
Failing to filter out spam sign-ups can compromise the integrity of your entire email marketing program. A contact list filled with both legitimate and fake email addresses can lead to frustrating results when sending your next campaign. Not only could this harm your sender reputation by increasing the number of invalid emails, but it may also make it more difficult for your messages to reach genuine subscribers. Recipient servers tend to filter or reject emails from domains that frequently send to invalid addresses.
Protect your forms
Spam (sadly) is not going anywhere anytime soon, so take the time to implement one or more of these ideas and you'll save time and effort in the long run. A combination of different methods will be the most powerful, but even a single reCAPTACHA checkbox can help you prevent spambots without complicating your sign up process.
We’re always here to help. If you need any additional clarification, feel free to reach out to our Customer Support Team, available 24/7 - we’ll be happy to assist you!