Open-Source Wikis

/

Prometheus

/

By the numbers

prometheus/prometheus

By the numbers

Data collected on 2026-04-30, against commit 16034ecf3b7cc5da96a1f0c324d0eed927267877 of the main branch.

Size

The repository is dominated by Go source code, with a sizeable React/TypeScript UI on the side.

xychart-beta horizontal
    title "Source files by extension (top languages)"
    x-axis ["Go", "yml", "tsx", "ts", "md", "yaml", "js", "sh", "proto", "y"]
    y-axis "Files" 0 --> 800
    bar [704, 299, 135, 98, 68, 52, 11, 16, 4, 1]
Type Count
Total Go files 704
Go source files (excluding _test.go) 439
Go test files 265
Lines of Go source (excluding tests) ~159,000
Lines of Go tests ~184,000
Lines of TypeScript / TSX (UI, excluding node_modules) ~43,000
Markdown files 68
YAML files 351 (yml: 299, yaml: 52)
Protobuf definitions 4
GoYACC grammar 1 (promql/parser/generated_parser.y)

The single largest non-test file is promql/engine.go at 4,700 lines. The largest test files are tsdb/db_test.go (9,700), tsdb/head_test.go (8,300), and tsdb/db_append_v2_test.go (7,700). The two binaries' main packages are concentrated in two files: cmd/prometheus/main.go (2,200 lines) and cmd/promtool/main.go (1,500 lines).

Top-level area sizes

xychart-beta horizontal
    title "Approximate Go source LOC per top-level area"
    x-axis ["tsdb", "promql", "discovery", "scrape", "storage", "web", "rules", "model", "config", "notifier", "util", "tracing"]
    y-axis "kLOC" 0 --> 80
    bar [60, 30, 25, 18, 16, 16, 8, 14, 5, 4, 22, 1]

The tsdb/ tree is the largest area by line count and the most complex by surface area (block format, WAL, head, agent variant). promql/, scrape/, and discovery/ are the next largest.

Activity

The repository has been active continuously since 2012-11-24. Commits per calendar year:

xychart-beta horizontal
    title "Commits per year (2013–2026)"
    x-axis ["2013", "2014", "2015", "2016", "2017", "2018", "2019", "2020", "2021", "2022", "2023", "2024", "2025", "2026 (YTD)"]
    y-axis "Commits" 0 --> 3000
    bar [841, 332, 1219, 1293, 1602, 1035, 1017, 1038, 1365, 970, 1379, 2768, 1788, 798]
Window Commits
All-time 17,472
Last 90 days 592
Last 30 days 156
Last 7 days 14

2024 has the highest commit count on record (2,768) — coinciding with the v3.0 release cycle. 2025 stayed elevated. The 2026 figure is partial (year-to-date as of April).

Files most actively changed in the last 90 days

File Changes
go.mod 32
go.sum 30
promql/engine.go 27
cmd/prometheus/main.go 25
docs/configuration/configuration.md 21
tsdb/head_test.go 19
promql/promqltest/testdata/native_histograms.test 18
.github/workflows/ci.yml 18
tsdb/head.go 14
tsdb/db.go 14
Makefile.common 14
web/ui/package-lock.json 13
cmd/promtool/main.go 12
storage/remote/queue_manager_test.go 11
promql/functions.go 11

The TSDB head and PromQL engine remain the hottest source files — that has been true for years.

Bot-attributed commits

A lower bound (signatures only):

Source Count
Authored by *[bot]@ or noreply@ 2,750 (~16% of all-time commits)
With any Co-authored-by: trailer 864
With a Co-authored-by: mentioning a bot 486

Renovate is the dominant non-human contributor (renovate[bot]); the Prometheus team runs Renovate aggressively for npm and Go dependency upkeep. Inline AI-assist (Copilot etc.) leaves no trace in git history, so the real share of AI-assisted work is necessarily higher than this number.

Releases

Release cadence is fixed: a feature minor every six weeks. Recent tags (newest first):

v3.11.3v3.11.2v3.11.1v3.11.0v3.10.0v3.10.0-rc.1v3.10.0-rc.0v3.9.1v3.9.0v3.8.0

Each user-visible major (e.g. v3.11.0) is mirrored by an internal v0.311.0 tag for Go-module consumers; the mapping rule is documented in README.md.

Maintainership signal

  • 6 general maintainers listed in MAINTAINERS.md.
  • 25+ area maintainers across cmd/promtool, discovery/<sd>, tsdb, tsdb/agent, web/ui, promql, storage/remote, etc.
  • Top recent committers (90 days): Julien Pivotto, Bartlomiej Plotka, Julius Volz, Ganesh Vernekar, Bryan Boreham, György Krajcsovits.

See Maintainers for the per-subsystem ownership table.

Test-to-code ratio

Roughly 1.16:1 — the test corpus is larger than the production code. The TSDB and PromQL areas drive this; nearly every behaviour is exercised by a combination of _test.go files, PromQL .test cases, and OpenAPI golden tests.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

By the numbers – Prometheus wiki | Factory