Actual bandwidth is usually a non-issue. Any broadband or 3G mobile connection should be sufficient.
Mining stratum payloads/jobs are usually very small. It depends on the blocktime and network activity for the blockchain your are mining.
For instance, Siacoin has a 10-minute blocktime. I ran 4 Siacoin ASICs off of a 4G LTE mobile hotspot, and over the course of the month, their combined bandwidth consumption was only about 1.2 GB. Conversely, Ethereum has an average block time of about 13 seconds. Running a single Ethereum rig will pull around 3.1 GB of bandwidth over a month.
Instead, latency is the biggest concern. Latency in getting your shares back to the pool will cause them to be marked as stale or invalid if a new block has been found before your share has been received or if transaction data have changed since you mined the share. This directly costs you your earnings, since you do not get credit for those shares. Latency has as much to do with your ISP as it does with the pool you’re using. If the pool is geographically distant or if the pool’s server resources are underprovisioned, then latency will be higher.
You can open a command-prompt and use the
ping command on any OS to check your latency to the pool. For instance, in Windows, you hold the
R keys to open a Run dialog, then type
cmd and press
ENTER to get a command-prompt. Type
ping eth.2miners.com to see your latency to the 2Miners Ethereum PPLNS pool: