-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfees.html
More file actions
142 lines (127 loc) · 11.4 KB
/
Copy pathfees.html
File metadata and controls
142 lines (127 loc) · 11.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
<!DOCTYPE html>
<!-- SPDX-License-Identifier: AGPL-3.0-or-later | TestnetHub © 2026 Tech1k -->
<html lang="en" data-theme="dark">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>How transaction fees work · TestnetHub</title>
<meta name="description" content="Why blockchain transactions pay fees, how fee rates and mempools decide what gets mined next, and how fees behave on testnet.">
<link rel="canonical" href="https://testnethub.com/fees">
<meta name="robots" content="index, follow">
<meta name="referrer" content="no-referrer">
<meta name="theme-color" content="#14161b">
<meta name="author" content="Tech1k">
<meta property="og:type" content="article">
<meta property="og:site_name" content="TestnetHub">
<meta property="og:title" content="How transaction fees work · TestnetHub">
<meta property="og:description" content="Why blockchain transactions pay fees, how fee rates and mempools decide what gets mined next, and how fees behave on testnet.">
<meta property="og:url" content="https://testnethub.com/fees">
<meta property="og:image" content="https://testnethub.com/assets/og.png?v=2">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta property="og:image:alt" content="TestnetHub: learn crypto with fake coins and real protocols">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="How transaction fees work · TestnetHub">
<meta name="twitter:description" content="Why blockchain transactions pay fees, how fee rates and mempools decide what gets mined next, and how fees behave on testnet.">
<meta name="twitter:image" content="https://testnethub.com/assets/og.png?v=2">
<link rel="icon" href="/favicon.svg" type="image/svg+xml">
<link rel="apple-touch-icon" href="/assets/icon-192.png">
<link rel="manifest" href="/manifest.webmanifest">
<meta http-equiv="Content-Security-Policy" content="default-src 'none'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; font-src 'self'; connect-src 'self'; manifest-src 'self'; object-src 'none'; base-uri 'none'; form-action 'none'">
<script src="/assets/theme-init.js?v=1"></script>
<link rel="stylesheet" href="/assets/style.css?v=5">
<script type="application/ld+json">{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://testnethub.com/#org","name":"TestnetHub","url":"https://testnethub.com/","logo":"https://testnethub.com/favicon.svg"},{"@type":"WebSite","@id":"https://testnethub.com/#website","name":"TestnetHub","url":"https://testnethub.com/","publisher":{"@id":"https://testnethub.com/#org"},"description":"Learn the Bitcoin, Litecoin, and Monero testnets with free coins and real protocols."}]}</script>
<script type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://testnethub.com/"},{"@type":"ListItem","position":2,"name":"Guides","item":"https://testnethub.com/guides"},{"@type":"ListItem","position":3,"name":"How fees work","item":"https://testnethub.com/fees"}]}</script>
<script type="application/ld+json">{"@context":"https://schema.org","@type":"TechArticle","headline":"How fees work","description":"Why blockchain transactions pay fees, how fee rates and mempools decide what gets mined next, and how fees behave on testnet.","inLanguage":"en","isPartOf":{"@id":"https://testnethub.com/#website"},"publisher":{"@id":"https://testnethub.com/#org"},"author":{"@id":"https://testnethub.com/#org"},"dateModified":"2026-08-07","mainEntityOfPage":"https://testnethub.com/fees"}</script>
</head>
<body>
<a class="skip-link" href="#main">Skip to content</a>
<span id="copy-status" role="status" class="visually-hidden"></span>
<nav class="navbar">
<a href="/" class="brand" aria-label="TestnetHub home">
<svg class="brand-logo" viewBox="0 0 64 64" width="26" height="26" aria-hidden="true"><rect class="mark-bg" width="64" height="64" rx="14"/><g stroke="currentColor" stroke-width="3.4" stroke-linecap="round"><line x1="32" y1="32" x2="19" y2="19"/><line x1="32" y1="32" x2="45" y2="19"/><line x1="32" y1="32" x2="19" y2="45"/><line x1="32" y1="32" x2="45" y2="45"/></g><g fill="currentColor"><circle cx="19" cy="19" r="5"/><circle cx="45" cy="19" r="5"/><circle cx="19" cy="45" r="5"/><circle cx="45" cy="45" r="5"/><circle cx="32" cy="32" r="6.5"/></g></svg>
<span class="brand-name">Testnet<b>Hub</b></span>
</a>
<input type="checkbox" class="menu-toggle" id="menu-toggle" aria-label="Open the navigation menu" aria-controls="nav-links">
<label for="menu-toggle" class="hamburger"><div></div><div></div><div></div></label>
<div class="nav-links" id="nav-links">
<a href="/">Home</a>
<a href="/testnets">Testnets</a>
<a href="/guides">Guides</a>
<a href="/tools">Tools</a>
<a href="/status">Status</a>
<a href="/donate">Donate</a>
<button class="theme-toggle" id="theme-toggle" type="button" aria-label="Toggle light / dark theme" title="Toggle theme"><svg class="ico ico-sun" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg><svg class="ico ico-moon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"/></svg></button>
</div>
</nav>
<main id="main" class="filled" tabindex="-1">
<p class="crumb"><a href="/guides">Guides</a> / How fees work</p>
<div class="card hero">
<div class="card-body">
<h1><span class="grad">How transaction fees work</span></h1>
<p class="lede">Every transaction pays a small fee to the miner who includes it. The fee is what decides how quickly you confirm, and on testnet you can experiment with it for free.</p>
</div>
</div>
<div class="toc">
<p class="toc-title">On this page</p>
<ul>
<li><a href="#what">What a fee is</a></li>
<li><a href="#rate">Fee rate vs total fee</a></li>
<li><a href="#mempool">The mempool</a></li>
<li><a href="#estimate">Fee estimation</a></li>
<li><a href="#testnet">Fees on testnet</a></li>
<li><a href="#monero">Monero fees</a></li>
</ul>
</div>
<div class="card"><div class="card-body prose">
<h2 id="what">What a fee is <a class="anchor" tabindex="-1" href="#what" aria-hidden="true">#</a></h2>
<p>A fee pays the miner to include your transaction in a block, and it discourages spam. On UTXO chains like Bitcoin and Litecoin there's no separate "fee" field. The fee is whatever's left over: <strong>inputs − outputs</strong>. Anything you don't assign to an output goes to the miner. (This is why understanding <a href="/utxos">UTXOs</a> helps.)</p>
<h2 id="rate">Fee rate vs total fee <a class="anchor" tabindex="-1" href="#rate" aria-hidden="true">#</a></h2>
<p>Miners care about the <strong>fee rate</strong>, the fee per unit of transaction size, priced in satoshis per virtual byte (<strong>sat/vB</strong>) on Bitcoin and Litecoin. Your <em>total</em> fee is the rate times your transaction's size. A transaction that spends many small inputs is bigger, so it costs more to send at the same rate.</p>
<h2 id="mempool">The mempool <a class="anchor" tabindex="-1" href="#mempool" aria-hidden="true">#</a></h2>
<p>Broadcast transactions wait in the <strong>mempool</strong>, a holding area of unconfirmed transactions. When a miner builds a block, it picks the highest fee rates first because they earn the most. If the network is busy, low-fee transactions wait; when it's quiet, even a low fee confirms quickly.</p>
<h2 id="estimate">Fee estimation <a class="anchor" tabindex="-1" href="#estimate" aria-hidden="true">#</a></h2>
<p>Wallets estimate a fee rate to hit a target confirmation time by looking at what's currently in the mempool. Pay more to confirm sooner, less to save money and wait longer. See <a href="/confirmations">how confirmations work</a>.</p>
<h2 id="testnet">Fees on testnet <a class="anchor" tabindex="-1" href="#testnet" aria-hidden="true">#</a></h2>
<p>Testnet transactions follow the same fee rules, but since the coins are free, it costs nothing to experiment. Send the same payment at a high and a low fee rate and watch how much sooner one confirms. It's the cheapest way to build real intuition.</p>
<h2 id="monero">Monero fees <a class="anchor" tabindex="-1" href="#monero" aria-hidden="true">#</a></h2>
<p>Monero handles fees a bit differently: rather than a sat/vB market, you choose a <strong>priority level</strong> and the protocol sets a dynamic fee. Higher priority pays more for faster inclusion. See the <a href="/monero">Monero guide</a>.</p>
<div class="callout warn"><p class="co-title">Underpaid and stuck?</p><p>If you set the fee too low, your transaction can sit unconfirmed for a long time. See <a href="/debug-stuck-tx">debugging a stuck transaction</a> for how to rescue it with RBF or CPFP.</p></div>
</div></div>
<div class="warnbox">
<span class="wb-ico" aria-hidden="true">⚠️</span>
<div class="wb-body">
<h3>Testnet coins are fake money</h3>
<ul>
<li>They have no market value, so never buy or sell them.</li>
<li>Never use a real seed phrase or import a real wallet on testnet.</li>
<li>Never send mainnet BTC, LTC, or XMR to a testnet address.</li>
</ul>
</div>
</div>
<div class="pagenav">
<a href="/confirmations"><div class="pn-dir">← Previous</div><div class="pn-t">How confirmations work</div></a>
<a class="pn-next" href="/utxos"><div class="pn-dir">Next →</div><div class="pn-t">Understanding UTXOs</div></a>
</div>
</main>
<footer>
<div class="foot-inner">
<a class="ext" href="https://cypherfaucet.com" target="_blank" rel="noopener">Faucet</a>
<a class="ext" href="https://testnetpool.com" target="_blank" rel="noopener">Pool</a>
<a class="ext" href="https://testnetwallet.net" target="_blank" rel="noopener">Wallet</a>
<a class="ext" href="https://testnetscan.com" target="_blank" rel="noopener">Explorer</a>
<a class="ext" href="https://testnetswap.com" target="_blank" rel="noopener">Swap</a>
<a href="/guides">Guides</a>
<a href="/status">Status</a>
<a href="/donate">Donate</a>
<span class="faint">·</span>
<span>Part of the <a class="ext" href="https://tech1k.com" target="_blank" rel="noopener">Tech1k</a> testnet ecosystem</span>
<span class="faint">·</span>
<a class="ext" href="https://github.com/Tech1k/testnethub.com" target="_blank" rel="noopener">Source</a>
<a class="ext" href="https://github.com/Tech1k/testnethub.com/blob/HEAD/LICENSE" target="_blank" rel="noopener">Code AGPL-3.0</a>
<a class="ext" href="https://github.com/Tech1k/testnethub.com/blob/HEAD/LICENSE-CONTENT" target="_blank" rel="noopener">Content CC-BY-SA-4.0</a>
<span class="faint">· testnet only · coins have no value</span>
</div>
</footer>
</body>
</html>