Something that seems to seldom be mentioned in these discussions about Amazon is that most all major retailers also offer online sales. So, it’s not just a competition between Amazon online and all the brick and mortar retailers.
Amazon competitiors need to compete more effectively for online sales.
One time I tried to get a Best Buy store to match their own online price and they wouldn’t so I ordered the item right there in the store. The BB employee got the very same item I had returned to the shelf and had it waiting for me at the pick-up desk. Stupid. They did more work and risked losing a sale. Maybe price matching came out of the store’s budget while the online sale comes from corporate.