Actually, I had same problem. I started forum, and in a month I had so much spam on it and so much fake accounts I didn’t know what to do at first.
Then I changed settings, even though my customer wanted differently, and I turned on default captcha, registration through link AND i banned all visitors from “exotic countries”. My theory was, that since nobody will pay for advertising for people from pakistan or angola, or coite’d'ivory, Zimbabve and similar countries, I just used default possibility of EE forum and banned all users from such countries.
If your portal is for example local, then ban everybody from other countries ... advertisers know how many target visitors you have, you can have milion people from Zimbabve, but if your target visitors are from, for example, Norway, you can just ban everybody else, you will not get payed for rest of visitors, that visits will not count anywhere ... so why bother?