As we all know captchas can greatly reduce conversion rates for legitimate user generated content (UGC).
So how can we use User Experience Metrics, (i.e. clicks, scrolls, active time on site … like those gathered by freetale) in order to fight spam?
It may seem simplistic but if you are willing to make sure that the user has been active on the site for at least long enough to skim the content, and has clicked/scrolled enough to most likely be a real human, its probably reasonable to let them post to your UGC site.
Also, do you really want the content from people who have only interacted with your site for 20 seconds? Most likely not.
So add an input <input type="hidden" value="UGC_SCORE"> to you forms where the UGC_SCORE is updated via javascript. This can be part of your metrics for fighting spam.
If you are a coder and would like more info on how to implement this, then feel free to ask in the comments.


4 Comments
I’ll have to start implementing that… Another idea: is it possible to give people with UGC_SCORE<X a captcha? That way people that have been on the site for awhile don't need to solve one, and the people that went to your site with a specific purpose in mind (entering content) can still submit.
very interesting approach.
How would you implement it?
JavaScript – or are there better ways…
Yes, i would use javascript.
Check out
events property
@Andy – good idea – to catch false positives without losing comments.
I figured you’d use JS for this, but a lot of bots don’t even run javascript or they could purposely disable it, e.g. with Ubot you can disable javascript in IE.
How about storing info in the PHP session? you could time the different between page load and form submission as that’s a sure-fire way to detect comment spam.