The proof-of-work algorithm used by current Monero mining. It is designed around workloads suited to general-purpose CPUs, including memory-intensive execution.
What miners compute
RandomX turns candidate block data into a proof-of-work result. Miners repeatedly vary permitted input data and compute results, looking for one that satisfies the network difficulty target. A validating node checks the result when it receives the proposed block.
The algorithm executes generated programs and uses memory-intensive operations. Its design aims to use capabilities already present in general-purpose CPUs rather than making a small specialized circuit the obvious choice.
References: RandomX specification · RandomX algorithm specification
Mining and checking use the same rules
A miner may use an optimized program such as XMRig, while a node verifies the result through Monero's implementation. Optimization can change speed without changing which results count as valid proof of work.
RandomX supports different memory and computation trade-offs for executing the same algorithm. A faster mining configuration can need more memory. A slower verification path must still produce the same result for the same input and key.
References: RandomX specification · RandomX algorithm specification
A CPU mining example
Consider two computers using the same mining software and pool. Equal advertised CPU clock speeds do not imply equal hash rates. Cache capacity, memory behavior, instruction support, cooling and the software configuration can all affect execution.
Compare sustained measurements from your own setup rather than treating a short peak as its normal rate. A pool share is evidence of work at the pool's target, not proof that the miner found a Monero block.
References: RandomX specification · RandomX algorithm specification
Hardware efficiency and mining costs
CPU-oriented does not mean every CPU mines equally efficiently or that specialized hardware is mathematically impossible. It also does not promise a profit. Electricity use, hardware costs, pool terms and network difficulty remain separate considerations.
RandomX establishes work for consensus. It does not encrypt payments, choose ring members or provide wallet key storage. Running a node does not require you to mine.
References: RandomX specification · Monero source: cryptonote_config.h
Related glossary terms
Practical guides
Technical baseline: v0.18.5.4. Reviewed 2026-11-08 UTC.