A CAPTCHA during initial registration is not too onerous. But if I'm asked to fill one out every time I want to log in to a site, it becomes a bigger issue. Sas123's list of situations in which to use a CAPTCHA is pretty reasonable, I'd say.
CAPTCHAs are not infallable, so some bots may still get through. On the other hand, they can frustrate some visitors, so you could be losing registrations or sales by requiring one.
The only ways to know whether your use of a CAPTCHA is appropriate and not too annoying is to ask your visitors or to test. To test, run some visitors through a sign up form that includes the CAPTCHA, and the rest through a form that does not include it. Check if the increase in human sign-ups offsets the increase in bots.
(For testing, you could use a free tool like Google Website Optimizer if you don't already have a testing tool or if your budget is tight.)
Diane Aull - NineYards.com
: Helping Businesses Do Business Online
Whether you think you can, or that you can't, you are usually right.