How joulemath calculates
Every number on joulemath is your input, live from a public API, or linked to where it came from. Here is exactly how the calculators work.
Live data
- Difficulty and network hashrate: mempool.space /api/v1/mining/hashrate/3d.
- Reward per block: total reward (subsidy plus fees) averaged over the last 144 blocks, from mempool.space /api/v1/mining/reward-stats/144. If that call fails we fall back to the 3.125 BTC subsidy alone and say so.
- BTC price (USD and EUR): mempool.space /api/v1/prices, with CoinGecko as a fallback.
All requests run in your browser when the page loads. Nothing you type is sent to us or anyone else.
Formulas
- BTC per TH/s per day = 1012 × 86,400 ÷ (difficulty × 232) × reward per block (Bitcoin Wiki: Difficulty).
- Hashprice = BTC per TH/s per day × BTC price.
- Mining revenue per day = TH/s × BTC per TH/s per day × (1 − pool fee) × BTC price.
- Power cost per day = watts ÷ 1,000 × 24 × price per kWh.
- Breakeven power price = daily revenue ÷ daily kWh.
- Hardware payback = hardware cost ÷ daily profit, assuming today's difficulty and price stay flat.
Per-kW comparison
The home calculator works per 1 kW of facility power. With PUE p, 1 kW at the meter leaves 1/p kW for IT load. Mining TH/s per kW = 1,000 ÷ p ÷ J/TH. GPUs per kW = 1,000 ÷ p ÷ watts per GPU. GPU revenue per kW per day = GPUs per kW × rate per GPU-hour × 24 × utilization × (1 − platform overhead). EUR conversion of USD rental rates uses the BTC EUR/USD price ratio.
Full-cost comparison
Per day: net = revenue − power − hardware − hosting. Power = kW × 24 × $/kWh. Hosting = kW × $/kW-month × 12 ÷ 365 (optional, default 0). The home page also shows a "Full numbers" table with these dollar totals.
Scale-free numbers
Mining and GPU setups cost very different amounts for the same power, so raw dollar totals are hard to compare. The headline uses ratios instead:
- Net / month per $1k invested = net per day × 30.4 ÷ capex × 1,000. In rent mode the base is the rent you pay per month instead of capex.
- Net margin = net ÷ revenue.
- Net per kW per day = net per day ÷ facility kW used by that side.
Payback and lifetime return
Payback months = capex ÷ ((revenue − power − hosting) × 30.4). Lifetime return per $1 = net per day × 365 × useful life ÷ capex, after hardware is fully paid off. Both assume today's difficulty, BTC price and rental rate stay flat.
Same power vs same budget
Same power (kW): both sides get the same facility kW. With PUE p, TH/s = kW ÷ p × 1,000 ÷ J/TH, and GPUs = kW ÷ p × 1,000 ÷ watts per GPU, rounded down.
Same budget ($): each side spends the same dollars. Buying: TH/s = budget ÷ $/TH, GPUs = budget ÷ price per GPU, rounded down. Renting: the budget is monthly rent spend, so TH/s = budget ÷ (hashprice × (1 + premium) × 30.4) and GPUs = budget ÷ (lease $/hr × 24 × 30.4). The kW each side then uses = TH/s × J/TH ÷ 1,000 × PUE, or GPUs × watts ÷ 1,000 × PUE. "S21 XP" counts assume 270 TH/s per machine.
Buy vs rent
Buy. Mining capex = TH/s × $/TH. GPU capex = GPUs × price per deployed GPU. Hardware per day = capex ÷ (useful life × 365). Useful life defaults (ASIC 3 years, GPU 4 years) are our assumptions.
Rent. Mining: you buy hashrate on a market, so cost per day = hashprice × TH/s × (1 + market premium), and the seller pays power and hosting. Renting hashrate costs more than it mines, so a renter nets below zero. GPUs: you lease GPUs wholesale for every hour and resell them at the rental rate, so cost per day = GPUs × lease $/hr × 24, paid whether or not they are booked, while revenue only comes in at your utilization. Lease at the on-demand price you resell at and you earn about zero or less.
Break-even power price
The power price where mining's net per $1k invested equals the GPU side's, with every other input as you set it. We search $0 to $1/kWh. Below the line, mining earns more per dollar put in; above it, GPUs do. Power is a much bigger share of mining's costs, so mining gains the most from cheap power. Not shown in rent mode, where you pay no power.
Mining uptime
Share of hours the miners run. Revenue and power cost both scale with it. Default 100%. Hardware cost does not, so idle hours still cost you depreciation.
Scenarios
Each button resets the inputs below to the defaults, then changes only what is listed. The URL gets ?scenario= so you can share it. Everything else (live hashprice, GPU prices, PUE) stays the same.
- Default (
?scenario=default): the defaults listed under sources. - Cheap power (
cheap-power): $0.028/kWh. Riot reported an all-in power cost of 2.8c/kWh for July 2025, net of power credits (source). Industrial hydro in Paraguay runs about $0.037 to $0.050/kWh (Hashrate Index). Power goes for the GPU side too. - Used ASICs (
used-asics): used Antminer S19 XP (141 TH/s, 21.5 J/TH) at $2.11/TH. That is the $298 median of 34 used eBay sales, May 15 to Aug 14, 2026 (ING Mining). The used S21 (200 TH/s) median was $1,005, about $5.03/TH, on 15 sales (same source). Efficiency is Bitmain's spec as quoted there. Life stays at our 3-year assumption. - Curtailment (
curtailment): mining uptime 85% and power $0.028/kWh. In July 2025 Riot ran 30.2 EH/s on average out of 35.5 EH/s deployed (85%), while taking part in ERCOT's 4CP and demand response programs, and its all-in power cost after credits was 2.8c/kWh (source). Not all of the gap is curtailment; Riot also cites summer heat. We do not add credits as revenue, they are already in that power price. - Low GPU utilization (
low-gpu-util): 50%. Data from Alibaba, SenseTime and Microsoft puts production GPU cluster utilization at 25% to 50% (ACM Computing Surveys). Bitdeer reported 41% for its GPU cloud in Jan 2026 (cited by Luminix), which also puts debt-financed breakeven near 70%.
Who can actually do this
Renting GPUs to AI needs a site that tenants accept: redundant power, low-latency fiber, cooling for dense racks (H100 SXM runs up to 700 W per GPU, NVIDIA) and people to keep uptime high. You also need customers. Revenue only comes in when GPUs are booked, which is why utilization moves the result so much.
Mining needs power, airflow or immersion, and an internet link. There are no customers: a pool pays you for hashrate, and the network pays a block reward about every 10 minutes. Miners can switch off on short notice, which is why they can sell flexibility to the grid (see the Riot example above). That flexibility is hard for a GPU host with SLAs.
Taxes (optional)
Tax per day = your rate × max(0, revenue − power − hosting − depreciation). Straight-line spreads depreciation over the useful life. Year-1 expensing (US Section 179 or bonus depreciation style) deducts the whole price up front, which cuts the effective price by your rate; lifetime tax is the same, payback is shorter. We assume you have income to use the deduction. You enter your own rate; we publish none.
Hardware is depreciated much the same way for ASICs and GPUs: straight-line over its life, or in the US possibly expensed up front (IRS Pub 946). Mined coins are income at their market value when you receive them, and selling them later can be a capital gain or loss (IRS Notice 2014-21, IRS virtual currency FAQ). GPU rental is ordinary business income. UK: see HMRC Cryptoassets Manual. Sources accessed Oct 21, 2026. Not tax advice. Rules vary by country; check with an adviser.
Risks
GPU rental prices have been falling as supply grows, and a drop in rate or utilization hits a big fixed hardware bill. Utilization is our assumption; mining runs every hour you have power, rentals only pay when booked. Mining revenue falls as network difficulty rises and moves with the BTC price. Hardware resale value and downtime are not included.
Default inputs and sources
All accessed Oct 21, 2026.
Mining
- ASIC price $15.81/TH: Antminer S21 XP (270 TH/s) at $4,267.88 on bitmainshop.us (a reseller; its price list shows $4,590.88, $17.00/TH). Endless Mining's lowest S21 XP listing was $3,428 ($12.70/TH) (source). Range: $12.70 to $17.00/TH.
- Efficiency 13.5 J/TH: Bitmain's S21 XP spec (source).
- Hashrate premium 16.4%: Braiins Hashpower's cheapest ask was $37.87/PH/day vs $32.54/PH/day hashprice (source, using Braiins Hashpower market data).
- Pool fee 2%, ASIC life 3 years, mining uptime 100%: our assumptions.
- Scenario figures: sourced in Scenarios.
GPU
- Rental rate $2.69/GPU-hr: RunPod's H100 SXM Community Cloud price ($3.99 Secure), page updated Oct 8, 2026 (source). Vast.ai's single-GPU H100 SXM median was $2.20/hr on Oct 21, 2026 at 20:13 CEST (details). That is what renters pay a marketplace, not what a host nets. Rate is in USD.
- Price $36,125/GPU: an 8x H100 SXM HGX server (Supermicro SYS-821GE-TNHR) listed at $289,000 by Vipera on Oct 13, 2026, per GYGO. Other sources: $250,000 to $320,000, about $285,000 typical (Mercatus); $295,000 to $320,000 posted Oct 18, 2026 (Gatewell). Range: $31,250 to $40,000 per GPU.
- Lease $1.80/GPU-hr: top of Mercatus's long-tail 3-year reserved range for 8x H100 ($10.40 to $14.40 per server-hr, source).
- Power 1,000 W per GPU: our assumption, incl. its server share. NVIDIA lists the H100 SXM at up to 700 W TDP (source).
- Utilization 70%, GPU life 4 years: our assumptions (life 4 to 5 years).
What we leave out
Downtime (except the mining uptime input), curtailment credits as a separate line, hardware resale value, financing costs, tax rules beyond the simple model above and future changes in difficulty or price. GPU power and rental rates are left for you to enter because they vary a lot by server build and platform. Reference prices we quote are what renters pay a marketplace, not what a host nets.
See it in action in the calculators, or read the worked example in our profitability guide.
Source code
The site code is open source on GitHub. Spot a data error? Open an issue.