Like the Insert key in older word processors, Clear buttons are usually accidents waiting to happen. For forms like registration forms, the user has almost no reason to ever use it. It’s not like they’re going to decide to register as someone entirely different. So users click Clear more often by accident than on purpose, resulting in the user blowing away a significant amount of work.
Long complex Advanced Search forms (e.g., with over five fields) are an exception. While users usually want to redo a search with only a small modification to the criteria, occasionally they need start over from scratch to conduct a completely unrelated search. Clear saves the user the effort of clearing each criterion one at a time, which can be a significant savings for a complex Search. Without Clear, users can accidentally forget to clear a criterion from the previous search (maybe it scrolled out of view), resulting in erroneous results. Users aware of this potential will spend extra time scanning and re-scanning the form before submission making sure they’ve cleared everything. A Clear button provides users a fast and guaranteed means to ensure they’ve a clean slate.
Nonetheless the risk of accidentally hitting Clear is still a concern for long Advanced Search forms. It’s still the case that users usually want to keep most of their criteria from a previous search. The risk of accidents can be reduced by the following:
Put the Clear button at the top of the form, not the bottom. Users don’t fill out a form then decide to clear it. That makes no sense. Users return to the form sometime later in the session to conduct a new search. Putting Clear at the top potentially saves users the effort of scanning and scrolling for Clear and, more importantly, saves them from having to distinguish the Clear from the Search buttons at the bottom after they complete the form.
Also provide an Undo feature, perhaps with the same button. When the user clicks Clear, re-label it “Undo” (or “Reverse Clear”?) and make a second click bring back the criteria. This would also be handy for power users that want to toggle back to their original search criteria after searching on a completely different criteria.
The button should be labeled “Clear” or maybe “Clear All.” Some web apps use “Reset” but “Reset” means reverting the form to the last used values, not wiping out all the fields.
Note that the value of a Clear button depends not only on the raw number of fields on the form but on the number of fields users typically use. You may have 10 fields in Advanced Search, but if they're functionally exclusive (users almost always use only one), then you've little need for Clear.