In my experience a good realtor will either save you 3% when buying or get you an extra 3% when selling by knowing the area, knowing the right improvements to make, home staging, and negotiating.
Have you ever worked with a realtor? The fee may seem exorbitant because you pay it in a lump sum. But if you were to try and calculate their hourly fee, you'll see even the mediocre ones who are only moderately attentive to their clients are often making only a few dollars an hour.
Exactly. I worked with a buyer's agent for 2+ years, and during that time saw over 100 houses and submitted about 30 written offers. None of the offers were accepted, so he made $0 from me. I felt kind of bad, but the money he makes from his successful transactions probably makes it worth it. Not my problem.
I don't know if they deserve a % of the purchase price, but they definitely ought to at least charge by the hour.