Mining pools allow cryptocurrency miners to combine their computing power and work together when searching for new blocks. Instead of each miner competing independently, thousands of mining devices can connect to the same pool, receive coordinated mining jobs, and share the rewards.
This approach makes mining income more predictable.
A small miner may have enough hash rate to participate in a proof-of-work network but not enough to discover blocks regularly. By joining a mining pool, that miner contributes computing power to a larger group and receives a portion of the rewards based on the amount of work performed.
To understand how mining pools work, it is necessary to look at the entire process: how miners connect, how jobs are created, how shares are measured, how blocks are discovered, and how rewards are calculated.
What Does a Mining Pool Do?
A mining pool acts as a coordinator between individual miners and the blockchain network.
The pool does not usually perform most of the hashing itself. Instead, it operates servers that organize the work of connected mining devices.
The main responsibilities of a mining pool include:
creating candidate block templates;
distributing mining jobs to connected workers;
assigning share difficulty;
recording valid and invalid shares;
detecting valid block solutions;
submitting blocks to the network;
calculating miner contributions;
distributing mining rewards.
Without a pool, an individual miner must perform many of these tasks independently. The miner needs to run or connect to a blockchain node, create candidate blocks, monitor the network, and submit valid blocks directly.
A pool provides this infrastructure for many miners at once.
Step 1: A Miner Connects to the Pool
The mining process begins when a miner configures an ASIC, GPU miner, or mining application to connect to a pool server.
The miner usually enters several settings:
pool server address;
connection port;
wallet address or account name;
worker name;
optional password.
A worker is a mining device or mining software instance identified by the pool.
For example, a miner operating five ASICs may create the following workers:
farm01.asic1;
farm01.asic2;
farm01.asic3;
farm01.asic4;
farm01.asic5.
Separate worker names make it easier to monitor each device. If one ASIC stops submitting shares, the pool dashboard can show exactly which worker is offline.
Most modern mining pools use a communication protocol based on Stratum. This protocol allows mining hardware and pool servers to exchange jobs, share submissions, difficulty updates, and other information efficiently.
Step 2: The Pool Builds a Candidate Block
Before miners can begin hashing, the pool needs to prepare a candidate block.
A candidate block is a possible new block that may be added to the blockchain if a miner finds a valid proof-of-work solution.
To build it, the pool collects information such as:
the hash of the previous block;
pending transactions;
the current block version;
the timestamp;
the network difficulty target;
the coinbase transaction;
transaction-related data used to calculate the Merkle root.
The coinbase transaction is a special transaction that creates the block subsidy and assigns the reward to an address controlled by the pool.
The pool usually selects transactions from the network’s mempool. It may prioritize transactions with higher fees because transaction fees can become part of the total mining reward.
After preparing the candidate block, the pool converts the necessary information into mining jobs and sends them to connected workers.
Step 3: The Pool Distributes Mining Jobs
A mining job contains the data that a mining device needs to begin searching for a valid block hash.
The pool does not normally send every miner an identical task with no variation. If all devices calculated exactly the same values, they would duplicate one another’s work.
Instead, the pool provides miners with data that allows them to search different parts of the possible solution space.
Mining hardware repeatedly changes values such as:
the nonce;
the extra nonce;
the timestamp;
parts of the coinbase transaction.
Each change creates a different block header. The miner then hashes that header using the cryptocurrency’s mining algorithm.
For Bitcoin, miners perform SHA-256 hashing. Other proof-of-work cryptocurrencies may use different algorithms, such as Scrypt, Equihash, KHeavyHash, or Blake variants.
The goal is to generate a hash that is numerically lower than the target established by the network.
Step 4: Mining Devices Perform Hash Calculations
Once a worker receives a job, it begins generating hashes as quickly as possible.
A hash is a fixed-length output produced from input data by a cryptographic hash function. Even a very small change in the input creates a completely different result.
Mining hardware cannot calculate the correct solution directly. It must perform repeated attempts.
A modern ASIC can make trillions of hash attempts every second. However, only an extremely small percentage of those attempts satisfy the network target.
The total number of hash attempts performed per second is called hash rate.
Hash rate may be measured in:
kilohashes per second;
megahashes per second;
gigahashes per second;
terahashes per second;
petahashes per second;
exahashes per second.
The pool’s total hash rate is the combined effective hash rate of all connected miners.
The more hash rate the pool controls, the more attempts it can make and the higher its statistical probability of finding a valid block.
Step 5: Miners Submit Shares
The pool must determine how much work each participant contributes.
It cannot rely only on a miner’s reported hash rate because that value could be inaccurate or manipulated. Instead, the pool measures work through shares.
A share is a hash that satisfies a target established by the mining pool.
The pool target is easier than the actual blockchain network target. This allows miners to find and submit shares frequently.
For example, a device may submit several valid shares every minute even though the entire pool finds a valid network block only occasionally.
Most shares are not valid blocks. They serve as statistical evidence that the miner is performing real computational work.
Over time, the number and difficulty of submitted shares provide a reliable estimate of the miner’s contributed hash rate.
Pool Difficulty vs. Network Difficulty
Mining pools work with two related difficulty levels:
Difficulty type | Established by | Main purpose |
Network difficulty | Blockchain protocol | Determines whether a hash creates a valid block |
Share difficulty | Mining pool | Measures work performed by individual miners |
A hash may meet the pool’s share difficulty without meeting the network difficulty. In this case, it is recorded as a valid share but does not create a block.
If a hash meets both targets, it becomes a valid block solution.
The pool then submits the completed block to the blockchain network.
How Variable Share Difficulty Works
Different miners may have very different levels of hash rate.
A small miner could operate one older device, while an industrial mining farm could operate thousands of modern ASICs. Using the same share difficulty for both would be inefficient.
If the share difficulty were too high, the smaller miner might submit shares very rarely. The pool would have limited data for estimating its performance.
If the difficulty were too low, the large farm could send an excessive number of shares, creating unnecessary server traffic.
Many pools solve this problem using variable difficulty, often called VarDiff.
VarDiff automatically adjusts the share difficulty for each worker. The goal is to maintain a suitable share submission rate regardless of the worker’s hash rate.
Higher-hash-rate workers receive more difficult share targets. Lower-hash-rate workers receive easier targets.
A higher-difficulty share represents more computational work than a lower-difficulty share, so the pool takes share difficulty into account when calculating contributions.
Step 6: The Pool Verifies Submitted Shares
When a miner finds a share, the mining device sends it to the pool server.
The pool checks whether the share:
matches the current mining job;
contains valid data;
satisfies the assigned share target;
was submitted on time;
has not already been submitted;
follows the required mining protocol.
If the share passes these checks, the pool marks it as accepted.
If it does not pass, the share may be marked as rejected, stale, duplicate, or invalid.
Accepted shares
Accepted shares are valid proofs of completed work. They are included when the pool estimates the miner’s contribution.
Stale shares
A stale share is usually based on an outdated mining job.
This can happen when another block is found before the share reaches the pool. The pool has already moved on to a new candidate block, so the old share can no longer contribute to the current mining round.
High network latency can increase the stale-share rate.
Invalid shares
Invalid shares do not meet the required target or contain incorrect data.
A small number of invalid shares may occur because of unstable overclocking, hardware errors, software issues, or network corruption. A consistently high invalid-share rate may indicate a serious configuration problem.
Duplicate shares
A duplicate share is the same result submitted more than once.
Pools reject duplicate shares because repeated submissions do not represent additional work.
Step 7: One Share Becomes a Valid Block
Most shares only satisfy the easier pool target. Occasionally, a miner produces a hash that also satisfies the much harder network target.
This is a valid block solution.
The device sends the result to the pool just like any other share. The pool server recognizes that the hash meets network difficulty and immediately submits the completed block to the blockchain network.
It does not matter whether the solution came from the largest mining farm or the smallest worker in the pool. Every hash attempt has the same basic probability of producing a valid result.
A more powerful miner simply performs more attempts and therefore has more opportunities to find one.
The individual worker that discovers the block does not usually receive the entire block reward. The reward is distributed according to the pool’s payout rules.
Some pools may provide an additional block finder bonus, but this depends on the operator.
Step 8: The Blockchain Network Verifies the Block
After the pool submits the block, blockchain nodes verify it independently.
They check that:
the proof of work is valid;
the block references the correct previous block;
all transactions follow protocol rules;
no coins are spent twice;
the block size or weight is valid;
the coinbase reward is not too large;
the Merkle root matches the included transactions.
If the block follows the network’s consensus rules, nodes accept it and add it to their copy of the blockchain.
The next block is then built on top of it.
In some cases, two miners may produce valid blocks at nearly the same time. Only one branch will eventually become part of the main chain. A valid block that is not included in the final chain may be called a stale, orphaned, or uncle block, depending on the cryptocurrency.
Pools may wait for a certain number of confirmations before treating the reward as fully available for distribution.
Step 9: The Pool Calculates Rewards
Once a block is accepted, the pool calculates payments for participating miners.
The reward may include:
the block subsidy;
transaction fees;
other protocol-specific mining rewards.
The pool normally deducts its operating fee before or during distribution.
The exact calculation depends on the payout model.
Pay Per Share
Under Pay Per Share, or PPS, miners receive a fixed payment for accepted shares.
The pool pays miners according to expected mining revenue, even if it has not recently found a block. This creates stable payouts but places more financial risk on the pool operator.
Full Pay Per Share
Full Pay Per Share, or FPPS, generally includes both the expected block subsidy and an estimated share of transaction fees.
It offers predictable earnings, although the exact calculation can vary between pools.
Pay Per Last N Shares
Pay Per Last N Shares, or PPLNS, distributes a mined block’s reward among miners who submitted shares during a defined window.
Payments depend on the pool actually finding blocks. Earnings can therefore change significantly from one period to another.
Proportional rewards
In a proportional system, each mining round begins after one block is found and ends when the next block is discovered.
The reward is divided according to the percentage of valid work each miner contributed during that round.
Mining Pool Reward Example
Suppose a pool receives a total distributable reward of 3.2 coins after fees.
During the relevant payout period, four miners contributed the following portions of accepted work:
Miner | Share of pool work | Estimated reward |
Miner A | 50% | 1.60 coins |
Miner B | 25% | 0.80 coins |
Miner C | 15% | 0.48 coins |
Miner D | 10% | 0.32 coins |
This is a simplified proportional example.
In a real pool, the calculation may also depend on share difficulty, payout windows, transaction fees, confirmation requirements, rejected shares, and the chosen payment model.
Step 10: The Pool Sends Miner Payouts
After calculating balances, the pool credits each miner’s account.
Some pools send payments automatically when the miner reaches a minimum payout threshold. Others allow miners to request a withdrawal manually.
A payout policy may specify:
minimum withdrawal amount;
payment schedule;
network transaction fee;
supported payout addresses;
confirmation requirements;
account verification rules.
A miner with limited hash rate may need several days or weeks to reach the minimum threshold.
This is why beginners should check the payout limit before choosing a pool.
What Happens When a New Block Appears?
Mining pools must react quickly whenever the blockchain changes.
When a new block is detected, the pool usually:
stops work on the previous candidate block;
updates the previous block hash;
refreshes the transaction set;
creates a new candidate block;
distributes a new job to miners.
Mining hardware then begins hashing the new job.
This update must happen quickly. Devices that continue working on the previous block may generate stale shares.
Fast pool servers, reliable connections, and low latency help reduce wasted work.
How Pools Estimate a Miner’s Hash Rate
The pool does not directly observe every hash calculation performed by a mining device.
Instead, it estimates hash rate from the shares submitted over time.
If a worker consistently submits valid shares at the expected frequency, the pool can estimate how many total hashes it is likely performing.
This creates two common hash rate measurements:
Reported hash rate
Reported hash rate is sent by the mining device or displayed by its local software.
It shows what the hardware claims to be producing.
Effective hash rate
Effective hash rate is calculated by the pool from accepted shares.
This is often more important for earnings because it represents work that the pool actually received and verified.
Short-term effective hash rate may fluctuate significantly because share discovery is probabilistic. Longer averaging periods usually provide a more accurate measurement.
Why Mining Pool Earnings Fluctuate
Mining pool payments are not always identical from day to day.
Earnings can change because of:
network difficulty adjustments;
cryptocurrency price changes;
transaction fee activity;
pool luck;
hardware downtime;
rejected shares;
changes in network hash rate;
payout model;
pool fees.
Pool luck describes the difference between the number of blocks a pool statistically expects to find and the number it actually finds.
A pool may experience a lucky period and discover blocks faster than expected. It may also experience an unlucky period with long gaps between blocks.
PPS pools reduce the effect of pool luck on individual miners. PPLNS and proportional pools pass more of this short-term variation to participants.
How Mining Pools Prevent Cheating
Mining pools verify submitted work rather than trusting miners.
A participant cannot simply report a false hash rate and receive additional rewards. The miner must provide valid shares that can be checked cryptographically.
Pools may also monitor:
unusual share patterns;
duplicate submissions;
invalid share rates;
unauthorized accounts;
manipulated mining software;
suspicious connection behavior.
However, miners must also protect themselves. They should verify pool addresses, secure account credentials, enable available security features, and avoid untrusted firmware.
A malicious program could redirect mining work to another wallet or pool without the owner noticing.
Conclusion
Mining pools work by coordinating the computing power of many individual miners.
The pool creates candidate blocks, distributes mining jobs, assigns share difficulty, verifies submitted work, and monitors each miner’s contribution. Mining devices perform hash calculations and submit shares as evidence of completed work.
When one of those shares also satisfies the blockchain network’s target, the pool submits a valid block. If the network accepts it, the pool calculates and distributes rewards according to its payout system.
The central idea is simple: miners contribute hash rate, the pool measures that contribution through shares, and rewards are divided according to verified work.
This system allows smaller miners to receive more frequent payments than they would normally receive through solo mining, although they must pay pool fees and depend on the pool’s infrastructure.