I like to overestimate how much each client will use in RAM at about 1k/client.
My script only uses 300-400 Ram per client but I made my script very efficient. I would say the average SDN script can range from 700-1k especially with loading webwalker.
For 20 bots, you can probably go with 24GB ram but I would recommend 32GB Ram to be on the safe side unless you know what you're doing.