<p>I'm trying to reduce the form spam on our website. (It's actually pretty recent).</p>

<p>I seem to remember reading somewhere that the spammers aren't executing the Javascript on the site.</p>

<p>Is that true?
And if so, then could you simply check for javascript being disabled and then figure it's <em>likely</em> that it's spam?</p>

[{'answer_id': 52380, 'author': 'Ryan Lanciaux', 'author_id': 1385358, 'author_profile': 'https://Stackoverflow.com/users/1385358', 'pm_score': 0, 'selected': False, 'text': "<p>I can't remember where I've seen this method but spam bots like to fill out forms. Have you considered putting a form field that is hidden with javascript (and says don't fill this field if the user doesn't have JavaScript). This way if something fills in this field you can ignore it as spam.</p>\n"}, {'answer_id': 52382, 'author': 'Jason Bunting', 'author_id': 1790, 'author_profile': 'https://Stackoverflow.com/users/1790', 'pm_score': 1, 'selected': False, 'text': "<p>You could check - have JavaScript that populates a hidden form field with a specific value <em>after</em> the page loads. Then, when the page posts back to the server, check that hidden form field the expected value. If it is not there, that means the JavaScript didn't execute.</p>\n\n<p>As to whether you should assume it is spam is another story altogether, and one that has no certain answer, really. You could simply have a <code>&lt;noscript&gt;</code> tag and have it indicate to the user that their submission will not take unless they enable JavaScript.</p>\n\n<p>Once you have JavaScript running, however, the spammers will just use another workaround for that. :)</p>\n"}, {'answer_id': 52392, 'author': 'Jason Navarrete', 'author_id': 3920, 'author_profile': 'https://Stackoverflow.com/users/3920', 'pm_score': 4, 'selected': True, 'text': '<p>There are still a large number of people that run with Javascript turned off.</p>\n\n<p>Alternatively, I have had decent success with stopping form spam using CSS.  Basically, include an input field and label that is hidden using CSS (<code>display: none;</code>) and once submitted, check if anything has been entered in the field.  </p>\n\n<p>I generally label the field as a spam filter with an instruction to <em>not</em> put anything in the field, but all newer browsers will properly hide the block.</p>\n\n<ul>\n<li>More: <a href="http://www.modernblue.com/web-design-blog/fighting-spam-with-css/" rel="nofollow noreferrer">Fighting Spam with CSS</a></li>\n</ul>\n\n<p><a href="http://recaptcha.net/" rel="nofollow noreferrer">reCAPTCHA</a> is also surprisingly easy to implement.</p>\n'}, {'answer_id': 52394, 'author': 'Dave Ward', 'author_id': 60, 'author_profile': 'https://Stackoverflow.com/users/60', 'pm_score': 1, 'selected': False, 'text': '<p>In the same vein, adding a dummy field and then using CSS to hide it is a good way to trick the bots.  If the field is submitted, you know a non-human probably completed the form.</p>\n\n<p>Especially effective if you label/name the field something along the lines of <strong>URL</strong> or <strong>website</strong>.</p>\n'}, {'answer_id': 171854, 'author': 'James', 'author_id': 25251, 'author_profile': 'https://Stackoverflow.com/users/25251', 'pm_score': 2, 'selected': False, 'text': '<p>check <a href="http://kahi.cz/wordpress/ravens-antispam-plugin/" rel="nofollow noreferrer">http://kahi.cz/wordpress/ravens-antispam-plugin/</a> for a nice answer</p>\n\n<p>if puts in </p>\n\n<pre><code>&lt;noscript&gt;&lt;p&gt;&lt;label for="websiteurl99f"&gt;Please type "e73053": &lt;/label&gt;&lt;input type="text" name="websiteurl99f" id="websiteurl99f" /&gt;&lt;/p&gt;&lt;/noscript&gt;\n        &lt;script type="text/javascript"&gt;/* &lt;![CDATA[ */ document.write(\'&lt;div&gt;&lt;input type="hidden" name="websiteurl99f" value="e\' + \'73053" \\/&gt;&lt;\\/div&gt;\'); /* ]]&gt; */&lt;/script&gt;\n</code></pre>\n\n<p>so javascript users see nothing, non js users just type in a word</p>\n\n<p>if a spammer targets you specifically it won\'t take them long to code round it but for drive by spammers it should be good</p>\n'}, {'answer_id': 1326692, 'author': 'Jacob Rask', 'author_id': 114168, 'author_profile': 'https://Stackoverflow.com/users/114168', 'pm_score': 0, 'selected': False, 'text': "<p>Did you have any luck with this? I think some text based browsers have implemented basic JavaScript support, so maybe spam bots have as well?</p>\n\n<p>Otherwise I'm considering using a captcha for users without JavaScript and some automatic JavaScript check for other users.</p>\n"}]
['https://Stackoverflow.com/questions/52359', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/4906/']