Developer Blog · Benchmarks

How Much Monero Can an Android Phone Actually Mine? We Benchmarked Two.

Short answer: about a penny a day, and the most profitable thing a phone can mine on MoneroOcean is — perhaps surprisingly — plain Monero (RandomX) itself.

We build VoltMiner, an open-source, non-custodial Monero miner for Android, so we wanted hard numbers instead of vibes. We pushed the bundled XMRig binary to two real phones over adb and measured. No estimates, no marketing math — just --bench, the MoneroOcean algorithm calibration, and a live mining session. Everything below is reproducible; the exact commands are at the bottom so you can run it on your own device and tell us what you get.

A note on honesty, because mining apps have earned their bad reputation: phone mining earns cents, not dollars. If a number below looks small, that's because it is. We'd rather you see the real figure here than feel cheated later.


The two phones

Redmi PadLG V60 ThinQ
SoCMediaTek Helio G99Qualcomm Snapdragon 865
Cores2× Cortex-A76 + 6× Cortex-A554× Cortex-A77 + 4× Cortex-A55
Classbudget (2022)flagship (2020)
RAM6 GB8 GB

One cheap chip, one old flagship — a fair spread of what a real "mine on your phone" audience actually owns. Both are ARM64 Android. Neither can use huge pages (Android doesn't grant them to apps), which matters for RandomX and is reflected in the numbers. Miner: the MoneroOcean XMRig fork v6.25.0-mo1 (ARM64), the same binary VoltMiner ships.


Finding 1 — Raw RandomX hashrate

Pure RandomX (rx/0, the Monero algorithm), all cores, no huge pages:

PhoneRandomX hashrate
Redmi Pad (Helio G99)~420 H/s
LG V60 (Snapdragon 865)~750 H/s

For context, that's roughly 150–230 H/s per big core. The flagship is ~1.75× the budget chip — both still tiny next to a desktop CPU (a Ryzen does tens of thousands of H/s).

What that earns: at the current Monero network hashrate (~a few GH/s) and XMR price, ~420 H/s works out to roughly 0.00006 XMR/day — on the order of one US cent per day. The flagship maybe two cents. Plug your own device's hashrate into any Monero mining calculator to confirm; the point is the order of magnitude, and the order of magnitude is cents.


Finding 2 — More threads is not more hashrate (the little cores can hurt)

Modern phones are big.LITTLE: a few fast "big" cores and several slow "little" cores. RandomX is memory-bandwidth-bound, so we tested how hashrate scales with thread count.

Redmi Pad — Helio G99 (2 big + 6 little)

ThreadsH/s% of max
2 (big cores only)32877%
438591%
8 (all)424100%

LG V60 — Snapdragon 865 (4 big + 4 little)

ThreadsH/s
2466
4 (all big cores)748← peak
8 (all)684−9%

Look at that last row. On the Snapdragon 865, running all 8 threads is slower than running 4 — by 9%. Waking up the four little A55 cores makes them fight the fast A77 cores for memory bandwidth, dragging the whole chip down. You burn more battery and produce more heat to mine less.

On the budget G99, 8 threads is technically the max, but the last four little cores add only ~9% for a lot of extra heat — 4 threads already gets you 91%.

Takeaway: for RandomX on a phone, the sweet spot is roughly the number of big cores. Cranking to 100% is usually wasted heat, and sometimes an outright loss. (This is why VoltMiner exposes a CPU-load control — and why we're revisiting our defaults after seeing this.)


Finding 3 — MoneroOcean mines Monero on your phone (we checked)

Here's the part that surprised us. MoneroOcean is a profit-switching pool: it benchmarks every algorithm your hardware can run, then points you at whichever coin is most profitable right now and auto-converts the proceeds to XMR. The popular assumption is that phones get routed to lightweight CryptoNight coins.

So we ran MoneroOcean's full algorithm calibration on the Redmi Pad. By raw hashrate, the lightweight algorithms crush RandomX:

AlgorithmCoinH/svs RandomX
rx/arqArQmA3031
cn-picoTurtleCoin1802
pantheraScala689
rx/0Monero3391× (baseline)

If speed were everything, the phone should mine ArQmA. But raw hashrate isn't profit. Those coins are worth a tiny fraction of Monero per hash. MoneroOcean weights each algorithm by price ÷ difficulty and picks the real winner.

So we stopped guessing and pointed both phones directly at the pool. After full calibration, the verdict on both devices was identical:

ALGO PERFORMANCE CALIBRATION COMPLETE
new job from gulf.moneroocean.stream  algo rx/0   ← RandomX / Monero

MoneroOcean assigned RandomX — i.e. Monero itself — on both phones, and held it stable. At today's coin economics, the most profitable thing your phone can mine is Monero. (It's a snapshot; if some altcoin spikes, the pool could switch. But the common case for this hardware is plain Monero.)

A useful corollary for anyone weighing a backup pool: a standard RandomX-only pool mines exactly what MoneroOcean already mines here, so falling back to one costs essentially nothing in yield.


What this means if you're thinking about phone mining

  • It will earn cents. Treat it as putting idle/charging time to use, not as income. Anyone promising "passive income" from phone mining is selling something.
  • Heat and battery are the real costs, and you can cut both dramatically by not maxing your threads — you often lose little or no hashrate.
  • You don't need exotic coins. On MoneroOcean, your phone earns the most by mining Monero.
  • Verify everything. The whole exercise above is something you can run. Don't trust a mining app's dashboard — trust the pool's.

Run it yourself (and send us your numbers)

If you've got an Android phone, adb, and an ARM64 XMRig build (or MoneroOcean's fork), you can reproduce all of this in ~15 minutes. We'd love to build a public table of device → hashrate across lots of chips.

1. Raw RandomX benchmark:

adb push xmrig /data/local/tmp/xmrig && adb shell chmod 755 /data/local/tmp/xmrig
adb shell 'cd /data/local/tmp && ./xmrig --bench=1M'
# read the steady "speed ... H/s" line

2. Thread-scaling (find your sweet spot):

adb shell 'cd /data/local/tmp && ./xmrig --bench=1M --threads=2'   # try 2, 4, 8…

3. What does MoneroOcean assign your device? Put this in /data/local/tmp/config.json (note: most prebuilt phone binaries have no TLS — use the cleartext pool port 10032, not the TLS 20032):

{ "cpu": { "huge-pages": false },
  "pools": [ { "url": "gulf.moneroocean.stream:10032",
               "user": "YOUR_XMR_ADDRESS", "tls": false, "coin": "monero" } ] }
adb shell 'cd /data/local/tmp && ./xmrig -c config.json'
# watch for: "new job ... algo XYZ"  — that's the pool's profit verdict for your chip

Send us your results — chip, core layout, RandomX H/s at 2/4/8 threads, and which algo MoneroOcean assigned. We'll compile a community device table and credit contributors. Submit on GitHub →

⚠️ Mine responsibly: phones aren't built for sustained 100% CPU. Use thermal limits, prefer charging + Wi-Fi, and don't cook your daily driver.

We're VoltMiner — an open-source, non-custodial Monero miner for Android. We don't hold your coins: you paste your own XMR address and MoneroOcean pays you directly. Our total take is ~2.6% (a 1.64% dev time-slice plus the ~1% minimum baked into the MoneroOcean XMRig fork), disclosed in-app before you mine. You can read the source, match the APK hash, and verify your own hashrate on MoneroOcean's dashboard in ten minutes — which, honestly, you should.

Numbers measured 2026-06-22 on the two devices above. Single-run benchmarks with light thermal throttling; treat them as ballpark, not lab-grade. Earnings figures depend on XMR price and network difficulty at time of reading.

← Back to the blog