Eliminating Web-to-Lead Spam using Daddy Analytics

I’ve written elsewhere about Web to Lead Spam, but a few Daddy Analytics users have asked me exactly how we eliminate Web-to-Lead Spam, so I wanted to write up a technical answer.

We don’t have a problem with this as we use a WordPress plugin called WordPress-to-Lead for Salesforce CRM, but based on how we setup one of our sister companies who use the standard Salesforce Web-to-Lead plugin, this is what we recommend.

At the high level, most spam leads come from bots that don’t process JavaScript. As we require JavaScript for Daddy Analytics to work, any Lead that comes from a bot will have an empty DA Token field. All Leads are assigned a user or queue at creation, so we assign any Lead without a DA Token to a Spam queue. This catches almost all the spam and very few genuine leads.

To capture Spam Leads as we have, first create a Lead Queue. You can do this from Setup, under Manage Users > Queues. Create a queue on the Lead object called Spam.

Then, edit (or create) your Lead Assignment rule, found under Customize > Lead > Assignment Rules. Create a rule that says if “Lead: DA Token EQUALS null” then assign to the Spam queue. You don’t write null; instead set the DA Token to Equal a an empty field.

Preventing Web to Lead Spam - DA Token set to Null

Now, if this is the only time you mass import Leads, the above will work fine. But, if you ever Mass-Import and auto-assign Leads, then just leaving this as the only rule will mean that EVERY lead that is imported and auto-assigned will be assigned to the Spam Queue. You’ll want to add a few more qualifiers, such as setting the Lead: Created By ID equal to the Default Web-to-Lead Creator (who this is can be found in Settings under Customize > Leads > Web-to-Lead)

Stop Web-to-Lead Spam - Lead Created By ID

You may need to add a few more rules in there to make sure you don’t catch anything else.

A few more steps and you’re done!

Next, create a View in Leads that shows only the Spam leads.

Viewing Spam Leads in Salesforce - Creating a View

When you view that Queue, the only Leads that should be in there are spam Leads. But this won’t be perfect – some good Leads will end up here, so check it daily.

If you want to mass-delete all the users in this View, you can delete them using the Mass Delete Records > Mass Delete Leads, and search for Leads with the Lead Owner Alias equal to Spam.

Or, if you want a deletion method a bit more convenient, you can install the app Mass Delete (though this may open up the ability for an untrained or malicious user to delete records en-masse, so be careful) and add this button to the Lead view, and delete spam Leads directly from the Spam Lead view.

That’s it! Your org should now be segmenting Spam Leads into a Queue, you should be able to easily check that Queue through a View, and you can delete them through native Admin functionality or add an app to let non-admins mass delete.


Leave a Reply