You need to specialize, to master one thing before trying to become everything to everyone. If your business/company is mediocre at ten things, but not great at anything, the only time people will choose you is if it is convenient. Otherwise they will go to the specialist.
For example, say your best attribute is that your price is low. It’s low, but not the lowest (maybe it’s the third lowest in town). For those customers who only care about price, they’re not going to go to you. They will go to the lowest price in town. There is minimal benefit to being the third lowest competitor in town. Instead, what you’ve done by trying to out-Walmart Walmart is cut your prices to the point that you have no profit and no margin for error.
Choose to specialize. Once you become a master of one thing and you’re known for it, you can more easily retain customers looking for that and then slowly expand and try to capture another specialized market. But remember, when you expand, choose only one area at a time to grow towards and master that next area. You can never become everything to everyone, so don’t try to be.