How to prepare proper aquatic planting soil, also known as Heavy Loam
Loam is part sand, silt and clay
Heavy Loam has more clay than regular loam, clay is important, as it holds and binds nutrients in the soil and does not allow the soil to float out of the container
Top soill-$2.00 a bag at your local Lowe's or Home Depot (buy the least expensive topsoil available)
Play Sand-$3.00 a bag at your local Lowe's or Home Depot
Clay Kitty Litter-$1.00-6.00 a bag at your local grocery store or pet store (make sure it is 100% clay, no fragrance or other additives) OR you may use a drying agent for garage spills from the auto parts stores (again, make sure it is 100% clay)
Use equal parts, 50% topsoil and 50% kitty litter and mix together, add 1 cup of play sand to your topsoil and kitty litter mixture, mixing until it is well combined. Add 1 cup of water and mix well. At this point, you should have a nice "clumping" quality to your aquatic potting soil. This "clumping" quality will allow the soil to anchor your plants in the pots and keep the soil from floating out of the pots.
NEVER use compost materials or potting soil for your water garden plants as you will foul your water and the potting soil will float right out of the pots!