In a way, bitcoin mining (and more generally, proof-of-work mining) is the process of “guessing” what the next block in the Bitcoin blockchain could be.
By combining random numbers (“nonces”) with all other content of a (potential) Bitcoin block, the resulting “block hash” may come out as valid, but this is a matter of trial and error. Specialized mining hardware is designed to make an enormous amount of guesses per second, but for each individual guess it’s very unlikely the result checks out.
Why Mine Bitcoin in a Pool?
The random nature of mining opens individual miners up to a lot of variance or “luck.” Even if a very large miner would control, say, 1 percent of all hash power on the Bitcoin network, that doesn’t guarantee they’ll consistently find one in every 100 blocks. Instead, they could get lucky on one day and find three blocks, but get unlucky over the next three days (or more) and find zero blocks.
Pooled mining is a way for individual miners to combine their hash power so that they can mine as if they are one big miner. The individual miners (in the context of pooled mining, these are also referred to as “hashers”) share in the reward of any blocks found by the combined pool, adjusted by their contributed share of the hash power. This guarantees that they will find blocks more regularly and thus smoothes out the earnings from mining rewards.
With pooled mining, miners can earn a relatively steady income, instead of a huge payday sporadically.
How Do Bitcoin Mining Pools Work?
There are different variants of mining pools, and from time to time new methods are proposed and introduced.
Most typically, however, a mining pool operator sets up a service for hashers to connect to. Over this connection, the mining pool operator will send “block templates” to the hashers. These block templates are, as the name suggests, templates for what the next Bitcoin block could look like, but without the required proof of work (the “guessing”) performed on it.
Using this block template, hashers start guessing what the next block is: They perform proof of work on it. If they guess correctly, they return the valid Bitcoin block to the mining pool, and the mining pool broadcasts the block to the Bitcoin network, earning the block reward. It then cuts the block reward into small pieces to pay all of the hashers in the pool, according to the ratio of their contributed hash power (though this method of operation accounts for a relatively small portion of the Bitcoin network).
Mining pools payout miners for their hash rate based on the expected value of the hash rate. To earn their revenue, the mining pool usually buys the hash rate at a discount (around 97 to 99 percent of the expected value). The expected hash rate is calculated differently across pools, but generally follows the formula of 1 / network difficulty x block reward + 24 hour average transaction fees.
Mining pools can instantly verify the work that is being submitted to them is valid by looking at the result of the hash and comparing it to the network target. Mining pools set a custom threshold, called the “share target” that allows miners to submit a share (hash) around every five seconds to them. If a hash is lower than the share target, it is considered valid and the miner is rewarded for their efforts. The more hash rate a miner has, the lower the share target will be and the miner is equivalently rewarded for the “harder” work.
It depends on what level of depth you want to go into here but a few more nuances. (1) you need a full node to mine which ASICs don’t come with, so miners can just mine to the network with an ASIC, whereas pools run full nodes (2) most miners want to receive consistent payouts regardless of mining luck so they sell directly to mining pools on the expected value of their hashrate. About 95% of the industry works this way (slush pool being the notable exception)
Some alternative designs for mining pools don’t rely on a mining pool operator (instead, the mining pool uses a sort of “mini-blockchain”) or let hashers create their own block templates (that still need to be approved by the mining pool).
Is Bitcoin Mining in a Pool More Profitable?
On average, no, bitcoin mining in a mining pool is not more profitable than bitcoin mining solo. But, in another sense, yes it is.
On a long enough timeline, the variance of solo mining should work itself out, and a solo miner should earn at least as much as they would in a mining pool. In fact, since the mining pool operators typically charge a fee for their services, mining solo would probably be more profitable.
However, “on a long enough timeline” could mean it would take longer than a lifetime for the variance to work itself out. Many miners prefer a more stable form of income, even if that means it costs them a small fee. Mining pools payout consistent reward not based on mining “luck,” which is extremely important for mining businesses or individual miners that have fixed costs (such as electricity). Even miners that produce 1 percent of the network’s hash rate can’t risk the revenue-cost mismatch of mining alone.
Additionally, there are a lot of technical challenges with the mining process, such as orphaning and rejected blocks, bad miner efficiency, etc. Mining pool operators have worked to perfect the mining process and can minimize these potential losses for participants.
How to Choose a Bitcoin Mining Pool
Choosing a Bitcoin pool can be difficult for miners. There are many options available and the pricing has historically been quite opaque. A pool may quote a potential miner for a certain fee, but it can be unclear what that fee is based on and how much the miner will actually make.
The best advice for choosing a mining pool is to try multiple options and do some of your own testing. That way, you can get a more educated opinion on the right pool for you.
Besides baseline profitability, you may also choose a pool based on things such as geographic location (and local governing laws), user experience, the performance statistics and data available and additional mining tools offered along with the service.
Are Bitcoin Mining Pools a Problem for the Bitcoin Network?
In the most common bitcoin mining pool setup, as explained above, the mining pool operator creates block templates for hashers to perform proof of work on. This means that the mining pool operator gets to decide which transactions are being mined in the block that the entire pool is working on. This is a form of mining centralization; all else being equal, an ecosystem where all bitcoin miners mine individually would be more decentralized than an ecosystem where they mine in mining pools.
This centralization gives some amount of power to the mining pool operator. They could, for example, decide not to include certain transactions (“censorship”) on behalf of the mining pool, and perhaps even try and perform 51 percent attacks (although this would be more difficult).
Whether or not this is a real problem, and how big this problem is, depends on many factors. For example, it depends on how big the mining pool is, and it depends on how hard or easy it is for hashers to switch to a different mining pool, or how hard or easy it is to start a new mining pool. So far, pooled mining has not caused very serious problems for Bitcoin.
Some Bitcoiners have expressed concern with the concentration of mining pools operated in China. With such a high concentration of the management of hash rate in a single country, there may be the potential for a state-sponsored attack.
On the flip side, the existence of mining pools probably allows more people to participate in bitcoin mining in the first place, which also contributes to the decentralization of the system. (Again, whether this type of decentralization is actually useful also depends on many other factors.)
Some alternative bitcoin mining pool designs (as mentioned above) seek to limit some of the risks of pooled mining, but tend to come with their own trade-offs and haven’t really caught on in a big way (yet). Stratum V2, developed by Braiins, is an innovative solution to pool centralization that allows miners to submit their own custom blocks, giving some power back to them. However, it is unclear whether the rest of the mining pools, mostly based in China, will adopt this technology.
Is Pooled Mining Part of the Bitcoin Protocol?
No, pooled mining is not a part of the Bitcoin protocol itself, and there is no reason to believe Satoshi Nakamoto intended mining to be done by pools.
Instead, pooled mining was invented in 2011 by Marek “Slush” Palatinus, who also founded Bitcoin’s first mining pool: Slush Pool. Mining pools use their own protocols, although some of these have become so standardized today that they might as well be considered to be part of the Bitcoin protocol.
Of course, while it wasn’t designed for it, the Bitcoin protocol does allow for bitcoin mining. (That’s why it can exist.)
How Do I Mine in a Bitcoin Mining Pool?
If you want to mine in a bitcoin mining pool, you simply connect your mining hardware to your mining pool of choice. (Mining without specialized hardware is not really an option anymore these days.) It is usually as simple as putting the pool’s Stratum configuration into your miner, and creating a worker name. The mining pool’s website should have more specific instructions on how to do this.