This guide explains Bitcoin Core settings.json in plain English. It focuses on what the subject is, why it matters and what a beginner should remember.
TL;DR
- What it is: Bitcoin Core 0.21 used settings.json in the data directory to persist runtime settings, notably the list of wallets selected for automatic loading. GUI-created or loaded wallets could be added and unloaded wallets removed; createwallet, loadwallet and unloadwallet also gained load_on_startup controls.
- Why it matters: settings.json gave Core a supported place for persistent runtime choices such as wallet autoload. Reliable operations require effective-configuration checks, controlled writers and careful recovery rather than assuming the JSON file acts alone.
- Current position: Require a second reviewer and explicit rollback or expiry, and pause payments, signing or network-dependent services until post-change evidence is complete.
Bitcoin Core settings.json in simple English
Bitcoin Core settings.json: settings.json stores writable runtime settings in the network data directory. In 0.21 its visible operational role centred on wallet autoload.
Simple example
A node operator is checking Bitcoin Core settings.json. In 0.21 its visible operational role centred on wallet autoload. It is not a replacement for every bitcoin.conf option.
Key terms in plain English
- Bitcoin Core:
- Widely used software that validates Bitcoin and can provide wallet, network and operator tools.
- RPC:
- A command that software sends to a node to request information or a local action.
- Node:
- A computer running Bitcoin software that checks data and communicates with other peers.
Purpose
settings.json stores writable runtime settings in the network data directory. In 0.21 its visible operational role centred on wallet autoload; it is not a replacement for every bitcoin.conf option.
Precedence and merge
The wallet list augments command-line and bitcoin.conf wallet entries. Duplicate or conflicting sources complicate startup, so inventory the effective result from the running node.
Writers
GUI wallet actions and wallet RPC load_on_startup values can modify persistent state. Omitted RPC options leave the list unchanged, preserving backward compatibility.
File safety
Stop Core cleanly before offline backup or manual recovery. Protect directory and file permissions, avoid simultaneous writers and never hand-edit production state without a tested, version-matched procedure.
Drift monitoring
Compare approved wallet inventory with the effective loaded set after every restart. Alert on unplanned additions, removals, malformed JSON, ownership changes and network-directory confusion.
Failure recovery
Retain a known-good copy and logs, but do not overwrite a live file. If parsing or startup fails, stop Core, preserve evidence, validate JSON and restore only the smallest confirmed change.
Automation
Prefer supported RPC options over direct edits, serialise administrative actions and verify wallet identity, descriptor flag, database format and load-on-startup behaviour across restart. Build a revision-pinned evidence pack on an isolated node, wallet or protocol harness. Record source commit, binary hash, network, chain identity, configuration and dependencies.
Frequently asked questions
What is the main point of Bitcoin Core settings.json?
Bitcoin Core settings.json: settings.json stores writable runtime settings in the network data directory.
For Bitcoin Core settings.json, what should a beginner know about purpose?
settings.json stores writable runtime settings in the network data directory. In 0.21 its visible operational role centred on wallet autoload.
For Bitcoin Core settings.json, what should a beginner know about precedence and merge?
The wallet list augments command-line and bitcoin.conf wallet entries. Duplicate or conflicting sources complicate startup, so inventory the effective result from the running node.
For Bitcoin Core settings.json, what should a beginner know about writers?
GUI wallet actions and wallet RPC load_on_startup values can modify persistent state.
Conclusion
settings.json gave Core a supported place for persistent runtime choices such as wallet autoload. Reliable operations require effective-configuration checks, controlled writers and careful recovery rather than assuming the JSON file acts alone.
Primary sources
Check the current specification status and the documentation for the exact implementation you operate before moving production funds or changing a mining node.



Join the ASIC Mining Discussion
Members can read and join the discussion
Log in to read comments from other miners. Create a free account if you would like to ask a question or share your experience.
Membership helps us protect the discussion from spam and keep answers useful.