I've been putting some thought into Is spam in the "about me" field a reason to worry?, and particularly the statement at the top of the accepted answer:
The trick is finding these spam profile user accounts, really.
I agree, there doesn't seem to be any reliable metric unless you resort to regular expressions, sigh, which isn't ever going to work correctly.
My proposal is that all users that:
- Have never voted
- Have never posted
- Haven't visited in a year
- Have only ever visited on the day the created their account, and...
- Have filled something in the "About Me" or "Website" fields.
should get automatically deleted in the same way that old, unanswered, unloved questions do.. This seems a little harsh I know but bear with me.
As of the last data.SE refresh there were 6,521 users on Stack Overflow who fulfil these criteria. Obviously, not all of these are there only to a place for spam to reside and a glance at the "About Me" field seems to indicate that the majority of them are normal people.
However, they're certainly not doing anything useful and scrolling through also throws up a fair amount of "people" who are just a URL pointing to a company and a few "people" whose "About Me" field is pure spam.
I would almost be tempted to remove the condition about visiting on a single day, which raises the number to 16,073 users, but I'm not certain about it.
Removing these users will not affect the headline count, which is obviously important to Stack Exchange; but it will help with a clean-up of these users. Those people who are registered aren't going to miss their account and as there's a relatively low barrier to entry it isn't going to be difficult for them to re-register.
I'm not even sure that re-registering would be required; this could easily be implemented by not displaying / soft deleting users that fulfil this criteria but still enabling them to log in thereby "reactivating" the account.