Best Practice and general rule of thumb is 30%. Keep in mind that may need to be adjusted depending on the size of the database and your maintenance window time frame. SQLFool (Michelle Ufford) has an awesome script you might want to look at that can help with that tasking.
I'm going to buck the trend and suggest you completely toss reorganize and only rebuild the index based on a combination of the fragmentation and it's size. The standard rule of thumb for size is 1000 pages, but I would generally go a little lower, between 200 & 500 pages. But, for indexes less than about 10,000 or so pages, I wouldn't defrag until it got about 60% or so. The number of pages is just too small to sweat. After that, I'd probably go with the standard 30% everyone else is suggesting.
others have given you thresholds pertaining to the fragmentation and I wouldnt argue against any of them. What you do need to is to control when you do the defrag (to refer to rebuild or reorganise). if you blindly see an index has reached 30% (or whatever you choose as your 'tipping point') and instantly defrag it you will potentially bring your system to its knees until the defrag is complete. Schedule you scans for fragmentation for out of hours so that the defrag can take care of your indexes when other users are not pounding the data.