All cacti have special requirements. Because cacti are very hardy, and very succulent, they are often able to withstand a lot of abuse, giving the false impression they are growing ok when in reality they are slowly dieing. Cacti foudn at big box stores are generally dieing. Bad soil, lighting and improper watering methods are the biggest cause. Researching the individual species you are intending on growing is your best tool in the success of growing *healthy* cacti. Here is some basic info on commonly used components of cacti soil mixes.
Coco coir is the byproduct from the coconut industry. All the left over shells from coconut harvesting are dried and ground into varying sizes. From chunks to fine powder. In general coco is not used in cacti growingm though the smaller grades can be used in mixes that are sheltered from rain/water. This medium holds water well, and is quite light.
Like coco, this is not meant for all cacti. Many huge stores that sell "assorted cacti" are grown in this medium. They do surprisingly well for short periods if watered properly. Peat eventually breaks down and becomes fairly acidic, which often isn't the best for cacti. Peat is only partly useful in large fast growing cacti that tolerate water well. In our experience, coco powder is better long term if this soil is to be used.
Pumice is a light rock (it floats) that is sold in the agriculture industry in smaller chunks. Before use with cacti, its best to rinse it as most bags have a lot of fine pumice dust which is not great for your mix. It is not great to breathe in either, so be careful. Pumice is an excellent choice for adding drainage and loosening mixes in plant mixes.
Perlite is fairly similar to pumice, but is more commonly found worldwide and cheaper It does not appear to be quite as porous as pumice, but most growers will accept substituting with it if pumice canoot be found.
Sand is the topic of much debate with cacti growers. In very wet, tropical countries, sand is the staple of cactus growing. There are MANY different kinds of sands, in all kinds of sizes. It is hard to speak so generally of sand without climate information, but you certainly do not want your sand to have a cement effect. All sand should be rinsed prior to use, thats the first step. After that put some sand in a pot and soak it. Let it dry completely and see if it acts somewhat like concrete in sticking together. If it binds together, it should not be used. Many sands are quite good for cacti, and we use sand in all water sensitive pots we have. That said we live in a very WET country and there is little choice! Larger grain sand, moves onto grit (below).
Even sand haters tend to accept, if not enjoy, grit. Grit is basically not quite rocks, but more coarse than sand. This is often achieved by sifting for size. The majority of cacti mixes we use have a majority of grit in them. Grit acts in much the same way as pumice or perlite, but is not as coarse so tends to add more weight with less air.
"Top soil" is such a vague term for so many soil types. Top soils should be only used with certain species, and often cut with a large % of rock based materials to aid in drainage. Top soils to avoid are ones that contain lots of organic debris, bugs & fungal smells.
Though compost can be quite good for nutrition with some species, only a little of very well composted material should be used. Avoid partially composted material which may invite rot to more sensitive species.
Suggested soils for specific plants
These mixes are intended for good drainage, and fast drying times. This is useful for species that are from dry areas, have large taproots, and are slow growing. Some examples: Ariocarpus, Astrophytum, Aztekium, Echinocactus, Lophophora, Obregonia, Turbinicarpus etc.
10-20% Coarse Sand
5% Slow Release/Pellet fertilizer (optional)
For Water tolerant species
For water tolerant species protected from the rain/uncontrolled water. useful for plants such as: Cereus, Echinopsis, Harrisia, Myrtillocactus, Neobuxbaumia, Opuntia, Polaskia, Rebutia, Stenocereus, Trichocereus etc.
30-50% Coco coir/Peat/Top soil
20-40% Grit & Sand
In our greenhouse we use a 60% Coir, 30% grit, 5% pumice & 5% organic pellet fertilzier for all columnar/water tolerant species. Keep in mind in a greenhouse, people control the water.
For Tropical species
This mix is useful for tropical species that tolerate, and even prefer moist/rich soils. Some examples: Acanthocereus, Hylocereus, Pereskia, Pereskiopsis, Rhipsalis, Selenicereus etc.