Bitcoin Core

Configuration Reference

List of Bitcoin Core configuration options by category. Options can be applied in the bitcoin.conf file or with a command line flag during startup.

Option Types

Miscellaneous Options

Pre-generate Key Pairs

# Pre-generate this many public/private key pairs
keypool=100

Blockchain Pruning

# default option
prune=0 (default)

# minimum is 550 MiB (~577 MB)
prune=550

Network Options

Testnet

# default option
testnet=0

# testnet mode
testnet=1

Run on the test network instead of the actual bitcoin network.

Regtest

# default option
regtest=0

# regtest mode
regtest=1

Run a regression test network with a new empty blockchain.

Listening

#default option
listen=1

Listening mode, enabled by default except when ‘connect’ is being used.

Port

# default option
port=8333

Port on which to listen for connections (default: 8333, testnet: 18333, regtest: 18444).

Max Connections

# set the maximum node connections
maxconnections=8

Maximum number of inbound plus outbound connections.

SOCKS5 Proxy

# set a proxy
proxy=127.0.0.1:9050

Connect via a SOCKS5 proxy.

Add a Node

# add IP of a node to your addnode list
addnode=69.164.218.197
addnode=10.0.0.2:8333

Use as many addnode= settings as you like to connect to specific peers.

Connect to a Node

  • connect=69.164.218.197
  • connect=10.0.0.1:8333

Alternatively use as many connect= settings as you like to connect ONLY to specific peers

Bind Address

# bind an IP address
bind=<addr>

Bind to given address and always listen on it. Use [host]:port notation for IPv6.

Bind Address and Add Permissions

# bind an IP address and add permissions
whitebind=perm@<addr>

Bind to given address and add permission flags to peers connecting to it. Use [host]:port notation for IPv6

JSON RPC Options

Server

# default option
server=0

# server mode
server=1

Setting server=1 tells Bitcoin-Qt and bitcoind to accept JSON-RPC commands.

Bind RPC Address

# bind an RPC address
rpcbind=<addr>

Bind to given address to listen for JSON-RPC connections.

RPC User

# RPC username
rpcuser=yourusername

Required along with RPC Password to use the JSON RPC API.

RPC Password

# RPC password
rpcpassword=yourpassword

Required along with RPC User to use the JSON RPC API.

RPC Timeout

# RPC timeout in minutes
rpcclienttimeout=30

Specify how many seconds bitcoin will wait for a complete RPC HTTP request.

RPC Allow IP

# allow specific RPC IP addresses
rpcallowip=10.1.1.34/255.255.255.0
rpcallowip=1.2.3.4/24
rpcallowip=2001:db8:85a3:0:0:8a2e:370:7334/96

Allows outside hosts to connect via RPC. NOT RECOMMENDED as rpcpassword is transmitted unencrypted.

RPC Port

# default option
rpcport=8332

Listen for RPC connections on this TCP port:

RPC Connect

# connect to a remote RPC host
rpcconnect=127.0.0.1

Allows user to send bitcoin commands from a separate host/node.

Wallet Options

Wallet Path

# specify a wallet path
wallet=</path/to/dir>

Specify where to find wallet, lockfile and logs. If not present, those files will be created as new.

TX Confirm Target

# default option
txconfirmtarget=6

Create transactions that have enough fees so they are likely to begin confirmation within n blocks (default: 6). This setting is over-ridden by the -paytxfee option.

Default Fee

# set a default transaction fee
paytxfee=0.00001000

Pay a transaction fee every time you send bitcoins.

User Interface Options

Minimized

# default option
min=0

# minimized mode
min=1

Start Bitcoin minimized

Minimize to system tray

# default option
minimizetotray=0

# minimized to tray mode
minimizetotray=1

Minimize to the system tray