In my experience as a client, with an update rate of 20, my incoming data rate can be as high as 20 KB/s on average. For the server to be able to send that to 32 clients it needs an uprate of at least 640 KB/s. That's just over 5 Mb/s. You can use net_graph 1/2/3/4 to see connection data.
A connection with an uprate of 1 Mb/s will support five or six players, perhaps greater or fewer depending on the content. Note that this does not take the need to send custom files to clients into account (known as FastDL).
Contabo VPSs are around 5 Euro per month and their data rate is 200 Mb/s both ways. The problem with a VPS is that the processor is virtual, not physical, and the processing cycles are shared amongst multiple customers on the same machine. This is fine for stuff like web hosting where slight delays don't matter, but TF2 server is a demanding 'real-time' application where delays in processing game frames will result in lag. We were able to mitigate this by raising the server's minimum update rate to 66. I would not recommend it for serious long-term usage but for fun custom game modes it's not a problem. It's a cheap way to experiment, have some fun and to learn.