How to make your contact form spam-free without using Captcha?

Spam was, is and will be an issue that internet users unfortunately have to deal with. Spam emails are messages that typically come from companies who wants you to purchase their products one way or the other. They are sent in massive quantities by robots programmed to do just that.

To answer this, the Captcha (Completely Automated Public Turing test to tell Computers and Humans Apart) was invented to have user make an effort at deciphering it and prove that he is indeed a human user, not a fiendish robot who set his sight at blowing up our mailboxes with unwanted maleficent advertising. Captcha fields are random and could be anything from deformed text, mathematical equations to even games and videos, but all of it requires a human effort to read/decipher/solve so the spam bot will fail to pass it. Some companies even went further with it, like Google uses Captcha to decipher and authenticate the scanned text from old books or street addresses. This is a very useful system, which is making our world better and I really commend it. But should you really be using it?

Sure, the Captcha is an effective solution. However many users (including me) when presented with difficult to read Captcha's are becoming irritated and will opt-out on filling the form or even quit your site altogether because of it. And no-one wants to lose their website's visitors, right?

Many users are asking our support about using Captcha in contact form, and whether is it possible to avoid using it. Fortunately the answer is yes - indeed there are other ways than pestering users with impossible-to-read Captcha's to have a spam and flood-free contact form.

For example you can use a "Honeypot" solution, which is adding an hidden form field, so when bot fills it out, it produces an error and you can also add a Time difference of the form submission and form rendering, so when it is too low the form won't be submitted. There are also other methods like adding session-related information into the form, randomizing field names, using JavaScript injection at submission etc.

Our Perfect AJAX Popup Contact Form for Joomla has​ spam​ flood protection and​ a ​special JavaScript protection​,​ which allows to submit form only when JavaScript is enabled in the browser. Spam bot has disabled JavaScript and when it submits contact form, it will only reload site and no email will be sent.

All in all Captcha isn't the only way to achieve a spam-free contact form and we do not have to force users to use it.