I buy from amazon for their low prices - sure, they aren't always the lowest, but they're the lowest often enough that I can safely shop at amazon without shopping around. I don't want to price check five different stores before I buy something, the convenience of knowing that amazon almost always is selling something for reasonably close to the lowest price is valuable to me.
A part of me would pay a certain premium to keep records of all the things I've purchased online in as many different places as possible, rather than providing one company with a fairly good profile of what my interests are.