Glossary

Solo Mining

Solo mining is the practice of mining cryptocurrency independently without joining a pool, earning the full block reward if a block is found.

Key Takeaways

  • Solo mining means mining Bitcoin independently without joining a mining pool: the miner runs a full node, constructs their own block templates, and receives the entire block reward (currently 3.125 BTC plus fees) if they find a valid block.
  • The tradeoff is extreme variance: with network hashrate exceeding 1 ZH/s, a single modern ASIC would statistically need decades or centuries to find a block, making solo mining a high-reward lottery rather than a reliable income source.
  • Solo mining contributes to network decentralization by allowing miners to select their own transactions and construct independent block templates, avoiding the centralization risks inherent in large pool operators.

What Is Solo Mining?

Solo mining is the practice of mining Bitcoin independently, without pooling hashrate with other miners. A solo miner runs their own full node, assembles candidate blocks from unconfirmed transactions in the mempool, and attempts to find a valid proof of work entirely on their own. If successful, the miner claims the full block reward: the block subsidy plus all transaction fees in the block, with no pool fees deducted.

In Bitcoin's earliest years, solo mining was the only option. Satoshi Nakamoto mined the genesis block and thousands of subsequent blocks using a standard CPU. As network difficulty grew, solo mining became increasingly impractical for individual participants, leading to the creation of the first mining pools in 2010. Today, solo mining with commodity hardware is essentially a lottery: the probability of finding a block is astronomically low, but the payout when it happens is the full reward with zero fees.

How It Works

Solo mining follows the same fundamental process as pool mining, but with the miner performing every step independently:

  1. The miner runs a Bitcoin Core full node (or compatible implementation) that maintains a complete copy of the blockchain and validates all transactions
  2. The node selects transactions from the mempool and constructs a block template, including a coinbase transaction that pays the reward directly to the miner's address
  3. The miner's ASIC hardware iterates through nonce values, hashing the block header with double SHA-256 and checking whether the result falls below the difficulty target
  4. If a valid hash is found, the node broadcasts the completed block to the Bitcoin network for validation by other nodes
  5. Once accepted, the miner receives the full block reward, subject to the 100-block coinbase maturity period before it can be spent

Block Template Construction

A key distinction of solo mining is that the miner has complete control over block template construction. In pool mining, the pool operator typically selects which transactions to include (though Stratum V2 is changing this). A solo miner makes all template decisions independently:

  • Which transactions to include from the mempool (and which to exclude)
  • How to order transactions to maximize fee revenue
  • What data to include in the coinbase field (up to 100 bytes of arbitrary data)

Bitcoin Core provides the getblocktemplate RPC call that generates a candidate block for mining software to work on:

# Request a block template from Bitcoin Core
bitcoin-cli getblocktemplate '{"rules": ["segwit"]}'

# Returns JSON with:
# - transactions to include (with fee and weight data)
# - previous block hash
# - current difficulty target (bits)
# - coinbase value (subsidy + fees)
# - height for the new block

The Probability Math

A solo miner's chance of finding any given block is simply their share of the total network hashrate. The expected number of blocks per unit time follows this formula:

Expected blocks per day = (miner hashrate / network hashrate) * 144

Example with a single Antminer S21 Pro (627 TH/s):
Network hashrate: ~1,000 EH/s = 1,000,000,000 TH/s

Probability per block = 627 / 1,000,000,000 = 0.000000627
Expected blocks per day = 0.000000627 * 144 = 0.0000903
Expected days between blocks = 1 / 0.0000903 = ~11,074 days (~30 years)

This means a single top-of-the-line ASIC would statistically wait about 30 years between blocks. Even a small mining farm with 100 such machines (62.7 PH/s total) would expect one block roughly every 110 days. The math illustrates why solo mining is only viable for operations with substantial hashrate or for those willing to accept lottery-like odds.

Solo Mining Software

Several software options exist for solo miners:

  • Bitcoin Core with getblocktemplate: the most direct approach, where the miner's full node generates block templates and mining software (such as CGMiner or BFGMiner) connects locally to hash them
  • Solo CKPool: a lightweight solo mining proxy created by Con Kolivas that connects to a Bitcoin Core node and presents a Stratum-compatible interface for ASIC miners. It handles template generation and share tracking without pool fees
  • Self-hosted Stratum server: miners can run their own Stratum V1 or V2 server pointed at their full node, giving ASICs a familiar protocol interface while maintaining full template control

Notable Solo Mining Events

Despite the overwhelming odds, solo miners occasionally find blocks, making headlines in the Bitcoin community. These events demonstrate that solo mining, while improbable, remains possible:

DateBlock HeightDetails
January 2022718,124Solo miner using Solo CKPool found a block with an estimated hashrate of about 126 TH/s, earning 6.25 BTC plus fees
June 2024849,286Solo miner found a block shortly after the April 2024 halving, earning 3.169 BTC (3.125 BTC subsidy plus 0.044 BTC in fees) via Solo CKPool
July 2024853,742Another solo miner won a block through Solo CKPool, reinforcing that small-scale miners can still occasionally beat the odds

Solo CKPool, maintained by developer Con Kolivas, has been the most common platform for these wins. The service operates as a publicly accessible solo mining proxy: miners connect their ASICs, and if they find a block, they receive the full reward minus a small 2% fee. As of 2025, Solo CKPool had facilitated over 300 solo-mined blocks since its launch.

Why It Matters

Solo mining plays an important role in Bitcoin's decentralization, even though it accounts for a tiny fraction of total network hashrate. When miners operate independently, they make their own decisions about transaction selection, which provides a check against censorship by large pool operators. For deeper context on centralization dynamics, see the research on mining centralization and pool risks.

The Stratum V2 protocol partially addresses the centralization concern by letting pool miners construct their own block templates, but solo mining remains the purest form of independent participation in proof of work consensus.

For the broader Bitcoin ecosystem, including Layer 2 solutions like Spark, the health of the mining layer is foundational. A diverse set of miners constructing independent block templates strengthens the censorship resistance that all higher layers inherit from the base chain.

Solo Mining vs. Pool Mining

The choice between solo mining and pool mining comes down to variance tolerance and scale:

FactorSolo MiningPool Mining
Reward per blockFull reward (3.125 BTC + fees)Proportional share minus pool fee
Income varianceExtreme: months to decades between payoutsLow: regular payouts (hourly to daily)
FeesNone (or minimal proxy fee)0 to 4% of rewards
Template controlFull control over transaction selectionPool operator controls (unless using Stratum V2)
InfrastructureMust run full node and mining softwareOnly needs ASIC and internet connection
Minimum viable hashrateNo minimum, but impractical below ~10 PH/sAny amount of hashrate can contribute
Custodial riskNone: rewards go directly to miner's addressPool holds rewards until payout threshold

Use Cases

Solo mining appeals to specific types of participants in the Bitcoin ecosystem:

  • Large mining operations: companies with tens or hundreds of petahashes of capacity may find the expected time between blocks acceptable (days to weeks), while avoiding pool fees and retaining full template control
  • Privacy-focused miners: solo mining avoids sharing any operational data with pool operators, including hashrate, IP addresses, and payout addresses
  • Decentralization advocates: miners who prioritize network health by constructing independent block templates and resisting potential censorship pressure from pool operators
  • Lottery miners: individuals who run one or a few ASICs with the understanding that finding a block is extremely unlikely but would deliver a substantial windfall
  • Educational and experimental purposes: developers and researchers running solo mining on testnet or signet to understand the mining process firsthand

Risks and Considerations

Extreme Income Variance

The most significant risk of solo mining is the possibility of earning nothing for extended periods. Unlike pool mining, where payouts arrive regularly, a solo miner may run hardware for years without finding a single block. Electricity and hardware costs continue regardless of whether blocks are found, meaning a solo miner can operate at a sustained loss indefinitely. For most small-scale operations, the expected revenue over any reasonable time horizon is likely to be zero.

Infrastructure Requirements

Solo mining requires running a fully synced Bitcoin node with sufficient storage (currently over 600 GB for a non-pruned node), reliable internet connectivity, and mining software configured to generate and submit block templates. A pool handles all of this on behalf of its miners. Any downtime on the solo miner's node means the ASIC sits idle, wasting electricity without hashing.

Block Propagation Disadvantage

Large pools maintain optimized network connections and use compact block relay to propagate found blocks quickly. A solo miner on a residential connection may experience slower propagation, slightly increasing the risk of their block being orphaned in a race condition with another miner who found a valid block at nearly the same time.

No Protection Against Luck Variance

Pool mining smooths variance through the law of large numbers: the pool finds many blocks and distributes rewards proportionally. Solo mining offers no such protection. The difficulty adjustment ensures that finding a block is always statistically proportional to hashrate over long periods, but for any individual miner, long streaks of bad luck are not just possible: they are probable.

Opportunity Cost

The same hardware connected to a pool would generate predictable daily income. Running it solo means forgoing that steady revenue stream in exchange for a small chance at the full block reward. For most miners, the expected value is identical (minus pool fees), but the risk profile is dramatically different. Unless the miner can absorb potentially years of operating costs without any income, pool mining is the financially prudent choice.

This glossary entry is for informational purposes only and does not constitute financial or investment advice. Always do your own research before using any protocol or technology.