The standard answer is 1 LB per each gallon, of water in the tank....
but
It really depends on what stock, and if you want live plants.
Some fish just require a thin layer, yet others, such as Geophagines, and other earth eaters species, might do best with a few inches.
If you want plants, do you want a terrace effect where plants on the back wall , and may need more sand behind a rock work .
and If you want live plants, you may want to set the tank up, with just plants, before adding fish to give them a chance to establish root sysyems.
I like to set up a tank (because I keep cichlids) a month or so before added the fish, to give plants a chance to get strong rootwork, before cichlids start digging.

Above is a 6 ft tank with only 50 lbs of sand.
Below a Planted smaller tank, but with more substrate to accomadate a thicker root system.

.