Preventing Web to Lead Spam


Web-to-Lead Spam
A client recently had a problem that I know others will undoubtedly share. I’m talking about the dreaded web-to-lead spam of course! Just doing a quick google search illustrates the scale of the problem that many of us face. I won’t go into the whole “why aren’t salesforce doing something about this” argument right now – but if you do feel strongly I suggest you head over to the Idea Exchange

Not only is it annoying, and time consuming sifting through all the records trying to find the one genuine lead… but it is also eating away at your precious data storage (not to mention the daily limits). So, how do you get around this? Well, although there are probably several methods, I found that a simple validation rule does the trick. Admittedly it won’t catch every single item, but it certainly eliminated around 80-90% for us.
Like with traditional email spam, there are generally keywords which you can pick up on – and therefore we can write a validation rule to exploit this:

ISPICKVAL(LeadSource, "Web"),
CONTAINS( Enquiry__c, "viagra"),
CONTAINS(Enquiry__c, "calis"),
CONTAINS(Enquiry__c, "freemoney")

This will prevent any lead created via web-to-lead (or with a lead source of “Web”) and with a Enquiry__c value (this field can be changed to suit your environment) of “viagra”, “calis” etc. You can set your error message to whatever you like.

Sadly this will not defeat all spammers out there but it will significantly reduce the amount of spam hitting your org. Until salesforce come up with a better way of tackling this problem I hope this will do the trick!