Whether you are growing vegetable, herbs, flowers or house plants, having a good soil in your containers is a key element to success. So what determines a good soil mix? A good mix can be defined by what is in it and how well it drains. Some soils will just have the basics such as peat moss, vermiculite, perlite and possibly some bark. Other mixes will add in sources of fertilizers and ph adjusters. Knowing what your plant likes will be a big part in choosing what soil you will pick as well as if you are going to want to add fertilizers to the mix or use the natural or non-natural fertilizers already in the mix. For example, a geranium plant would be very happy in a basic peat, vermiculite, perlite mix with fertilizers added from time to time. By contrast, a tomato plant, though it could grow in this mix, would do better in a mix that has natural fertilizer in it and has some ph controls added such as dolomite lime. There are also specific plant soils such as Cactus soil, Orchid soil and African Violet soil. These have already been formulated to provide the specific plant what it needs.
In most cases, potting soils found at chain stores will not provide good drainage or adequate fertilizer amounts. Purchasing more high end soils will result in greater success.