Spam from contact forms located on websites is a huge problem, and the only way to solve this issue it used to be putting a CAPTCHA. However, this solution has a very bad impact on conversion rate. There are studies which show that the company could lose out on 3.2% of all their conversions when using CAPTCHA. But there is a good news – there are other better solution than CAPTCHA.
Javascript alternative to CAPTCHA
Much more simpler approach is to use a hidden and required text field that is generated with Javascript. The idea behind this solution is very simple – spambots cannot fill in the field because they are not able to interact with objects in client-side JavaScript. The only minus of this problem solution is that it relies on JavaScript to work.
Honeypot Captcha
Another solution is Honeypot Captcha approach. You create a honeypot form field that should be left blank and hide it by using CSS techniques. When the form is submitted, your script checks if the value of that form field is blank. If it is not blank that means it was submitted by a spam bot (the form is invisible for user).