What programming language is Bitcoin Core primarily written in?

The story behind the answer

Bitcoin Core is primarily written in C++. It began as Satoshi Nakamoto’s original Bitcoin software and remains the reference implementation used to validate transactions, verify blocks, and participate as a full node on the Bitcoin network.

C++ was a practical choice for this kind of system software. It offers high performance, precise control over memory and resources, and mature libraries for networking, cryptography, concurrency, and file handling. Those qualities matter for software that may need to process and store the entire transaction history while communicating reliably with peers.

Bitcoin Core is not a single-language project in every sense. Its codebase also includes scripts, test tooling, documentation, and auxiliary components written in other languages. That does not change the standard answer: the core application itself is primarily a C++ codebase.

A common mix-up is confusing Bitcoin Core with Bitcoin Script. Bitcoin Script is a deliberately limited language used inside transaction conditions; it is not the programming language used to implement the node software. Rust, Java, and Python may appear in related tools or alternative implementations, but they are not Bitcoin Core’s primary language.

Source: Wikipedia · fact-checked Sept. 2026

Add question to a list

Choose a list to keep this question in: