In April 2008, I bought a Canon BP-511A 1390 mAh equivalent battery from SuperMart for $5.23 + $6 shipping (USD). It held a decent charge for a year before decreasing in charge capacity, with no damage to my camera.
Now, I’m going to try buying from SterlingTek. I would’ve gotten the two-pack, but I don’t need that many batteries yet. At the moment, their Canon BP-511A e2000 mAh equivalent battery is $11.99.[1. For comparison, Canon’s BP-511A battery pack costs $49.95 at Samy’s Camera.]
The difference is that SterlingTek has a 1-year warranty, a phone number and good feedback. SuperMart has a 6-month warranty and a PriceGrabber storefront.
Side note: If you’re interested in getting the most out of your batteries, head to Battery University.