How fast is Bitcoin Core shipping code — and where is the effort going?

Scope: Core (bitcoin/bitcoin, gui, secp256k1) and Ecosystem (guix.sigs, HWI, qa-assets).

Data refreshed: -
Contributors
-
Core: - Eco: -
Maintainers
-
Total / Active
PRs Merged
-
in last 30 days
Total Commits
-
Core: - Eco: -
BIPs
-
Active / Discussed recently

Unique Commits by Area (Current Snapshot)

Shows the distribution of engineering effort across the codebase right now. Useful for identifying which subsystems are currently receiving the most active development.

The Engagement Pyramid (Authored Commits)

Categorizes contributors by their lifetime commit volume. Highlights the project's reliance on core maintainers versus the broader long-tail of casual contributors.

Codebase Anatomy

Explore the architecture and size of the codebase across different programming languages and functional areas.

Total Volume
-
Lines of Code (LOC)
File Count
-
Source Files
Tech Stack
-
Active Languages
Functional Footprint (File Count)

Shows how the codebase is structured by functional area, based on the sheer number of source files. Highlights architectural breadth.

Code Volume by Category (LOC)

Measures the size of each functional area by lines of code. Reveals where the heaviest logic and complexity reside.

Polyglot Composition (File Count)

Breaks down the file count by programming language. Useful for understanding the variety of tooling and scripting used.

Tech Stack Dominance (LOC)

Displays the dominant programming languages by lines of code. Emphasizes the project's heavy reliance on core languages like C++ and Python.

⚠️ Data Normalization Notice
Historical line-of-code trends are mathematically scaled to match the current static codebase size (0.9M LOC).
Discrepancies between historical net churn (adds - deletes) and actual on-disk size have been normalized to reflect realistic growth patterns.

Evolution of Functional Areas (Authored Commits)

Tracks how development focus shifts over time. Shows the historical velocity of code authored in different subsystems, revealing evolving technical priorities.


Longitudinal Tech Evolution (Lines of Code 2009-2025)

Tracks the growth of different programming languages over time. Shows historical shifts in technology choices and testing infrastructure.


Longitudinal Category Evolution (Lines of Code 2009-2025)

Visualizes the historical expansion of functional areas. Illustrates when specific subsystems (e.g., wallet, consensus) experienced rapid development.

Recruitment Velocity

Measures the onboarding rate of new developers making their first commit. Indicates the ecosystem's ability to attract and integrate fresh talent over time.

Engineering Efficiency: Historical Churn vs. Net Change

Tracks the ratio of code added/deleted against the net change in repository size. Highlighting weeks where net LOC went down but churn was high reveals periods of intense refactoring and high-quality engineering.

How to Analyze this Data

Total Effort (Churn Intensity)
The grey bars represent the total volume of activity (adds + deletes). Large bars mean the code was heavily modified, even if the final size didn't change much.
Footprint (Net Change)
The solid line shows system growth or shrinkage. If the line dips below zero while churn is high, it indicates a "Refactoring Week" where code was improved and simplified.
Refactoring Discipline
High churn paired with negative net change is the hallmark of engineering discipline. These "Net-Negative" sprints prove that developers are simplifying the system rather than just adding complexity