TeachMeBitcoin

The Complete bitcoin.conf Reference Dictionary (Advanced Edition)

From TeachMeBitcoin, the free encyclopedia Reading time: 3 min

The Complete bitcoin.conf Reference Dictionary (Advanced Edition)

In this final section, we provide a detailed dictionary of the most powerful and often misunderstood configuration flags available in Bitcoin Core. This serves as your "Field Manual" for advanced tuning.

Section 1: Performance and Resource Management

  1. dbcache: (Default: 450) Sets the size of the database cache in MiB. For IBD, use at least 4000. For steady-state, 1000 is usually enough.

  2. par: (Default: 0) Number of script verification threads. Setting this to 0 auto-detects your CPU. Positive numbers set a specific thread count. Negative numbers leave that many cores free.

  3. maxsigcachesize: (Default: 32) Sets the maximum size of the signature verification cache in MiB. Increasing this can speed up block processing on busy nodes.

  4. maxscriptcachesize: (Default: 32) Similar to sigcache, but for script execution results.

  5. dbbatchsize: (Default: 16MB) The size of the database write batch. Larger values can improve disk efficiency during IBD.

Section 2: Network and Connectivity

  1. listen: (Default: 1) Whether to accept incoming connections. Turn this off for "Stealth" nodes.

  2. discover: (Default: 1) Whether to try to discover your own public IP address.

  3. upnp: (Default: 0/1) Uses Universal Plug and Play to open a port on your router. Recommended for beginners, discouraged for privacy-conscious users.

  4. natpmp: Similar to UPnP but for Apple/modern routers.

  5. maxconnections: (Default: 125) Maximum number of peers. Lower this on Raspberry Pis.

  6. maxuploadtarget: (Default: 0) Sets a daily limit (in MiB) on how much data you serve to other nodes. Perfect for users with ISP data caps.

  7. onion: (Default: 127.0.0.1:9050) The address of your Tor proxy.

  8. externalip: Manually specify your public IP if the auto-discovery fails.

  9. v2transport: (BIP 324) Enables the new encrypted P2P transport protocol. Highly recommended for modern nodes.

Section 3: Wallet and Security

  1. disablewallet: (Default: 0) Disables the wallet sub-system. Essential for security on public servers.

  2. wallet: (Default: "") Specify the name of the wallet to load. You can load multiple wallets by repeating this flag.

  3. avoidpartialspends: (Default: 0) Advanced privacy feature to prevent "Coin Linking."

  4. discardfee: (Default: 0.0001) Fees below this rate are considered "Dust" and will be discarded.

  5. keypool: (Default: 1000) Number of spare keys to maintain for legacy backups.

  6. rescan: (Default: 0) Forces the node to scan the blockchain for missing transactions when a wallet is loaded.

Section 4: Debugging and Logging

  1. debug: Specify categories to log (e.g., debug=net, debug=mempool, debug=rpc). Use debug=1 to log everything (very verbose!).

  2. logips: (Default: 0) Include the IP addresses of peers in the log file. Helpful for debugging but bad for privacy.

  3. logtimestamps: (Default: 1) Include timestamps in every log line.

  4. printtoconsole: (Default: 0) Instead of writing to a file, print the logs to your terminal window.

  5. shrinkdebugfile: (Default: 1) Deletes the log file on every restart to save space.

Section 5: The Mempool and Transaction Policy

  1. minrelaytxfee: (Default: 0.00001) The minimum fee rate for a transaction to be accepted into your mempool and broadcast to others.

  2. incrementalrelayfee: The minimum fee increase for a transaction to "Replace" another (RBF).

  3. mempoolexpiry: (Default: 336 hours) How long a transaction stays in your mempool before being forgotten.

  4. persistmempool: (Default: 1) Saves the mempool to a file (mempool.dat) on shutdown so it doesn't have to be rebuilt on restart.


☕ Help support TeachMeBitcoin

TeachMeBitcoin is an ad-free, open-source educational repository curated by a passionate team of Bitcoin researchers and educators for public benefit. If you found our articles helpful, please consider supporting our hosting and ongoing content updates with a clean donation:

Ethereum: 0x578417C51783663D8A6A811B3544E1f779D39A85
Bitcoin: bc1q77k9e95rn669kpzyjr8ke9w95zhk7pa5s63qzz
Solana: 4ycT2ayqeMucixj3wS8Ay8Tq9NRDYRPKYbj3UGESyQ4J
Address copied to clipboard!