Tips to Minimize Form Spam in Drupal

High Score Labs News   •   Nov 23, 2020

Any website owner with a public form on their website has to deal with an enormous amount of form spam. Spambots do things like fill forms and create fake users on your website. If you thought spam was harmless, you’ve got another thing coming. The action of spambots on your website will slow it down, waste your bandwidth, and clog your email queues. Therefore, you need to protect your site from these malicious elements. The following list contains helpful solutions to help combat form spam in Drupal.

Captcha

Captcha used to be the most common authentication module used on websites. The Captcha module presents the web user with a challenge to prove they are human. You can choose from an assortment of challenge types and you can install more from other modules that provide more options. Captcha is no longer the most popular spam control module for the simple reason that it peeves users who struggle to figure out the challenge. Even the audio challenges can be quite stressful sometimes. That’s not to say everyone has a problem using Captcha, however, and it’s still a solid choice if you decide to go that route.

Mollom

Mollom is a very efficient alternative to Captcha. Using machine learning, Mollom stops posts and contents that are potential spam from being entered in your forms. Its block/allow decision is based, not only on the entered content but also on the user’s past activities and reputation. If spam is suspected or detected, Mollom presents a captcha. Mollom is especially notable for its “Blacklist Words” feature which protects your forms from profanity and offensive words. What’s more? Mollom supports about 75 languages, so it blocks profanity in 75 different languages! 

Webform Validation Module

This module is exclusively for Webforms. It’s an add-on that extends Webforms with additional validation options such as verifying that a field is alphanumeric, meets the minimum or maximum lengths, or does not contain blacklist words, etc. You can also create more complex filters such as area-code and phone number formats. 

Custom Hooks

Creating your own form validation module is another way to go in the fight against spammers. You can add the validation function to your forms if you created your own forms using Drupal’s Forms API. If you are using a built-in form of any other type, you can simply use the HOOK_form_filter() hook to add your validation callback to the existing forms.

And here’s our favorite – and most other website owners’;

Honeypot

The Honeypot module works behind the scenes without any added complexity to forms for users. Once it has been activated and the forms to be protected are selected, the module lies in wait until a hidden field is filled or the form is submitted too quickly, in which case it stops the submission (only Spambots can fill the hidden field or fill out the form too quickly). More often than not, the Honeypot module will catch all spam, but you can support it with a second layer of protection.

It’s almost impossible to completely stop form spam. With the simple solutions highlighted above, however, you can greatly minimize the frequency and enjoy your Drupal website.