What Are Stale and Rejected Shares?
A Miner's Troubleshooting Guide
Understanding the three types of mining shares, why some don't count, and how to maximize your effective hashrate and earnings.
Shares are proof of your mining work — they're how a pool measures your contribution. Stale shares arrived too late (the pool already moved to a new block), and rejected shares contain errors (bad hash, wrong algorithm, hardware fault). Both reduce your effective hashrate and earnings. A healthy miner should have >99% accepted, <1% stale, and <0.1% rejected shares.
Understanding Mining Shares
When you mine cryptocurrency, your GPU or ASIC is racing to find a hash that meets a very high difficulty target set by the network. If you are new to mining, our beginner's guide covers the fundamentals. Finding one of those is extremely rare — it could take your hardware days, weeks, or even months to find a full block solution on its own.
Mining pools solve this problem by giving you an easier target. Instead of requiring a hash that solves the entire block, the pool asks you to find hashes that meet a lower difficulty. Each time you find one, you submit it as a share. The pool uses these shares to track how much work you've contributed relative to everyone else.
A share is proof that your hardware is doing real mining work. The more shares you submit, the more the pool knows you've been working, and the larger your portion of the block reward when the pool finds a block.
Think of shares like punching a time card at work. Each share tells the pool "I was here, I was working." When payday comes (a block is found), your paycheck is proportional to how many time cards you punched. A stale share is like clocking in after your shift already ended — it doesn't count. A rejected share is like a time card the machine can't read — it gets tossed out.
The Three Types of Shares
Every share your miner submits to the pool ends up in one of three categories. Understanding the difference is the first step to diagnosing problems with your mining setup.
1. Accepted Shares
An accepted share is a valid hash that arrived at the pool on time and without errors. It meets the pool's difficulty target and corresponds to the current block being mined. This is the only type of share that counts toward your earnings.
Every accepted share increases your contribution percentage for the current round. When the pool finds a block, your payout is calculated based on how many accepted shares you submitted relative to all other miners.
2. Stale Shares
A stale share is a hash that was perfectly valid when your GPU computed it, but by the time it reached the pool server, the pool had already moved on to mining a new block. The share is correct but outdated — it's work for a job that no longer exists.
Stale shares are not your miner's fault in the computational sense. The hash was good. The problem is timing and network speed — the share simply didn't arrive before the pool transitioned to a new block template.
→ Share travels across the network to the pool (latency)
→ Meanwhile, pool moves to Block #1001
→ Share arrives — but it's for Block #1000
→ Result: STALE (valid hash, wrong block)
3. Rejected Shares
A rejected share contains an actual error. Unlike stale shares (which were valid but late), rejected shares are fundamentally wrong. The hash doesn't meet the difficulty target, was computed with incorrect parameters, or is a duplicate of a previously submitted share.
Rejected shares almost always indicate a problem with your hardware or software configuration. They should be extremely rare in a properly functioning mining setup.
Healthy Miner Benchmarks
Here's what a well-configured miner's share distribution should look like:
If your numbers deviate significantly from these benchmarks, the sections below will help you identify and fix the problem.
What Causes Stale Shares?
Stale shares are fundamentally a race condition. Your miner computed a valid hash, but the world changed before the answer arrived. Here are the most common causes:
High Network Latency
The most common cause. Our stratum latency analysis explores this in depth. The further you are from the pool server (both geographically and in terms of network hops), the longer it takes for new job notifications to reach you and for your shares to reach the pool. Every millisecond of delay is a window where the block could change.
Typical impact: A 300ms round-trip connection instead of 30ms adds roughly 270ms / block_time to your stale rate. For a 60-second block time coin, that's about 0.45% extra stale shares.
Short Block Times
Coins with faster block times naturally produce more stale shares because blocks change more frequently. If a coin produces a new block every 15 seconds, there are 4x more block transitions per minute than a 60-second coin — meaning 4x more opportunities for your share to arrive late.
Typical impact: Stale rates are roughly inversely proportional to block time. A coin with 15s blocks will have roughly 4x the stale rate of a coin with 60s blocks, all else being equal.
Slow Mining Software
When the pool sends a new job (because a new block was found), your mining software needs to stop working on the old job and switch to the new one as fast as possible. Older or poorly optimized miners may take several hundred milliseconds to process the job transition, during which they continue submitting shares for the old block.
Typical impact: Varies widely. Modern miners switch in under 10ms. Older software can take 200-500ms, significantly increasing stale rates.
WiFi Instead of Ethernet
WiFi introduces variable latency, packet loss, and periodic connection drops that wired Ethernet connections don't have. A WiFi connection might average 5ms latency but spike to 200ms+ during interference. Those spikes cause bursts of stale shares.
Typical impact: WiFi can add 0.5-2% stale shares compared to a wired connection, primarily due to latency spikes rather than average latency.
Pool Server Distance
Mining on a pool server on a different continent adds 100-300ms of round-trip latency due to the physical speed of light through fiber optic cables. While modern pools minimize this impact through efficient stratum implementations, it remains a contributing factor.
Typical impact: Cross-continent mining typically adds 0.1-0.5% stale shares depending on the coin's block time. For coins with block times over 60 seconds, this is usually negligible.
What Causes Rejected Shares?
Unlike stale shares (a timing issue), rejected shares indicate something is actually wrong with the hash your miner submitted. Here are the most common culprits:
Incorrect Mining Software Settings
Misconfigured miner software is the number one cause of rejected shares for new miners. Common mistakes include connecting to the wrong port (which may expect a different algorithm), incorrect worker name format, or using parameters meant for a different coin. Choosing the right mining hardware and software combination is essential.
How to identify: If you see a high rejection rate immediately after starting the miner, double-check your pool address, port, worker name, and algorithm settings against the pool's Getting Started page.
Unstable GPU Overclock
When you push your GPU's memory clock or core clock too high, the GPU can produce incorrect hash calculations. The math is wrong at the silicon level — bits flip, values corrupt, and the resulting hash is invalid. The miner doesn't know the hash is bad (it still looks like a hash), so it submits it to the pool, which immediately rejects it.
How to identify: If your rejected share rate increases after raising your overclock, your GPU is unstable at those settings. Reduce memory clock by 50-100 MHz and core clock by 25-50 MHz until rejections drop to zero.
Wrong Algorithm Configured
Each cryptocurrency uses a specific mining algorithm (SHA-256, Ethash, RandomX, Equihash, Groestl, etc.). If your miner is configured to compute hashes with the wrong algorithm, every single share will be rejected because the hashes are fundamentally incompatible.
How to identify: A 100% rejection rate from the moment you start mining is almost always an algorithm mismatch. Verify the correct algorithm on the pool's information page.
Duplicate Shares
If your miner submits the same share twice (same nonce, same job), the pool rejects the duplicate. This can happen with buggy mining software, or when running multiple miner instances that accidentally overlap their nonce ranges.
How to identify: The pool's rejection message will specifically mention "duplicate share." Ensure you're not running multiple miner instances pointed at the same worker, and update your mining software.
Hardware Errors (Memory and Thermal)
Failing GPU memory, overheating, or degraded thermal paste can cause sporadic computational errors. Unlike overclock instability (which is consistent), hardware failures tend to produce intermittent rejected shares that may worsen over time or increase with GPU temperature.
How to identify: Rejected shares that increase as the GPU warms up, or that appear on only one GPU in a multi-GPU rig, suggest hardware issues. Monitor temperatures and consider repasting or replacing the GPU.
Acceptable Share Rates
Use this table to diagnose the health of your mining setup. These benchmarks apply to most GPU-mined coins with block times of 30 seconds or more.
| Share Type | Acceptable | Concerning | Critical |
|---|---|---|---|
| Accepted | >99% | 97–99% | <97% |
| Stale | <1% | 1–3% | >3% |
| Rejected | <0.1% | 0.1–1% | >1% |
These thresholds are guidelines, not hard rules. A miner on the opposite side of the world from the pool server might see 1.5% stale shares — that's the cost of distance and is perfectly normal. But a miner on the same continent seeing 3% stale shares has a network problem worth investigating.
How to Fix High Stale and Rejected Rates
If your share rates fall outside the acceptable range, work through this troubleshooting checklist in order. Each step addresses the most common causes, starting with the easiest fixes.
Fixing High Stale Rates
- Use a wired Ethernet connection. Replace WiFi with a direct Ethernet cable to your router. This alone can cut stale shares by 50% or more by eliminating latency spikes and packet loss.
- Connect to the nearest pool server. Most pools offer multiple server locations. Choose the one closest to you geographically. Check the pool's server list and test ping times to each one.
- Update your mining software. Newer versions of miners like T-Rex, lolMiner, GMiner, and TeamRedMiner have faster job switching. Update to the latest stable release.
- Check your internet connection stability. Run a ping test to the pool server for several minutes. Look for packet loss or latency spikes. If your ISP connection is unreliable, stale shares will be higher.
- Close bandwidth-heavy applications. Streaming video, large downloads, or torrent clients competing for bandwidth can cause latency spikes. Pause or schedule them outside mining hours.
- Avoid VPN or proxy connections. Each extra network hop adds latency. Mine with a direct connection to the pool server unless you have a specific reason to use a VPN.
Fixing High Rejected Rates
- Reduce your GPU overclock. Lower memory clock by 50–100 MHz and core clock by 25–50 MHz. If rejected shares drop, your previous overclock was unstable. Gradually increase until you find the stable limit.
- Verify the correct algorithm. Check the pool's Getting Started page and confirm your miner is configured for the exact algorithm the pool expects. Even similar algorithm names (e.g., Ethash vs. Etchash) are not interchangeable.
- Check GPU temperatures. If your GPU consistently exceeds 85°C (core) or 100°C (memory junction on GDDR6X cards), thermal throttling and computation errors become likely. Improve cooling or reduce power limit.
- Ensure no duplicate miner instances. Verify you're not accidentally running two copies of your miner pointed at the same worker. Each worker should have exactly one miner process.
- Test GPUs individually. In a multi-GPU rig, if only one card produces rejected shares, that card likely has a hardware issue. Run each GPU solo to isolate the problem.
- Reinstall or switch mining software. If rejections persist after all other fixes, try a different mining program. Corrupted binaries or software bugs can cause persistent invalid shares.
How Shares Affect Your Earnings
Stale and rejected shares have a direct, measurable impact on your mining income. Your effective hashrate — the hashrate that actually earns you coins — is always lower than your reported hashrate because of shares that don't count.
The Effective Hashrate Formula
Effective Hashrate = Reported Hashrate × Accepted Rate
// Where Accepted Rate = Accepted Shares / Total Shares
Example: The Cost of 5% Invalid Shares
Let's calculate the real earnings impact for a miner with a 100 MH/s GPU that has a combined 5% stale + rejected rate:
Reported hashrate: 100 MH/s
Accepted share rate: 95% (3% stale + 2% rejected)
Effective hashrate: 100 × 0.95 = 95 MH/s
// Assume this miner earns $3.00/day at 100% efficiency
Daily earnings at 100%: $3.00
Daily earnings at 95%: $2.85
Daily loss: $0.15
Monthly loss: $4.50
Yearly loss: $54.75
That 5 MH/s difference is real computational work your GPU performed — it consumed electricity, generated heat, and wore down your hardware — but earned you nothing. Following good mining pool security practices and optimizing your connection helps minimize these losses. The electricity cost of computing those wasted shares is pure loss.
The numbers above are for a single GPU. If you run a 6-GPU rig, that yearly loss becomes $328.50. For a small farm with 10 rigs (60 GPUs), you'd lose $3,285 per year to a fixable 5% invalid share rate. Spending an hour to optimize your setup pays for itself many times over.
Imagine you work an 8-hour shift but 24 minutes of your work gets thrown away every day because you were filling out yesterday's forms (stale) or making calculation errors (rejected). You did the work, you got tired, you used the supplies — but you don't get paid for those 24 minutes. Over a year, that's 6 full working days of unpaid labor.
Bottom Line
Shares are your proof of work. They're how the pool measures your contribution and determines your payout. Only accepted shares count toward your earnings. Every stale or rejected share is wasted electricity and lost income.
Stale shares are a network problem. They mean your shares arrive too late because of latency between you and the pool. Fix them with a wired connection, a closer server, and updated mining software. A small stale rate (under 1%) is normal and unavoidable.
Rejected shares are a hardware or config problem. They mean something is wrong with the hash itself. The most common cause is an unstable GPU overclock. If you see rejected shares, reduce your overclock first, then verify your algorithm and temperature.
Target: >99% accepted, <1% stale, <0.1% rejected. If your numbers are worse than this, work through the troubleshooting checklist above. The time you spend optimizing will pay for itself in recovered earnings within days or weeks.