# Argo CD vs Flux: source lines of code compared

The Argo CD vs Flux comparison on OctoCounts shows side-by-side source line counts for argoproj/argo-cd and fluxcd/flux2, counted with the same engine and analysis options on the dates shown in the methodology line: files, total lines, code lines, comment lines, blank lines, and per-language totals, pinned to the exact commits listed below.

As of 2026-09-08, argoproj/argo-cd contains 929,688 total lines (843,536 code) across 4,372 files, while fluxcd/flux2 contains 51,067 total lines (35,469 code) across 548 files as of 2026-09-16. argoproj/argo-cd is about 24x the size of fluxcd/flux2 by code lines. Code size is not code quality: a larger count only means more source material, not a better or worse project.

| Metric | [argoproj/argo-cd](https://octocounts.com/github/argoproj/argo-cd) | [fluxcd/flux2](https://octocounts.com/github/fluxcd/flux2) |
| --- | ---: | ---: |
| Files | 4,372 | 548 |
| Total lines | 929,688 | 51,067 |
| Code lines | 843,536 | 35,469 |
| Comment lines | 36,905 | 9,089 |
| Blank lines | 49,247 | 6,509 |
| Languages counted | 12 | 9 |

Top languages in argoproj/argo-cd: Go (49.0% of code), YAML (40.8% of code), TSX (3.7% of code). Top languages in fluxcd/flux2: Go (83.8% of code), YAML (14.9% of code), Shell (0.6% of code). Go, YAML, JSON appear in both top language lists; TSX, Lua appear only in argoproj/argo-cd's top languages; Shell, Makefile appear only in fluxcd/flux2's top languages.

Methodology: both counts come from cached OctoCounts reports generated with tokei. argoproj/argo-cd was counted at ref b079641e62e979aae012503ba98bbc683423492a (commit b079641e62e9) on 2026-09-08; fluxcd/flux2 was counted at ref dede56a8fdcd1e0edca28630a979a51415bb56f8 (commit dede56a8fdcd) on 2026-09-16. See the [counting methodology](https://octocounts.com/docs/methodology) for ignored directories and analysis options.
## About this comparison

argoproj/argo-cd counts the Argo CD repository — the declarative GitOps continuous-delivery tool for Kubernetes, written in Go with a web UI layer in TypeScript. fluxcd/flux2 counts the Flux repository — the GitOps toolkit's CLI and controllers, written in Go. Both counts are Kubernetes GitOps tool source trees, counted on the dates in the methodology line above.

The per-language tables show Go dominating both trees, as expected for Kubernetes ecosystem tools whose controllers run against the Kubernetes API; Argo CD's table additionally carries a visible TypeScript share from its bundled web interface.

Both repositories package their CLI and their cluster-side components in one tree, so each total measures a complete operator-style tool — client and controllers together — rather than a single binary.

_Line counts do not measure GitOps correctness or which tool fits a delivery pipeline: that depends on each tool's declared configuration model, how a team structures environments, and operational practices — not on repository size._

Sources: [argoproj/argo-cd repository](https://github.com/argoproj/argo-cd) · [fluxcd/flux2 repository](https://github.com/fluxcd/flux2). Statements verified 2026-09-16.

Evidence and next steps:

- [argoproj/argo-cd SLOC report](https://octocounts.com/github/argoproj/argo-cd)
- [fluxcd/flux2 SLOC report](https://octocounts.com/github/fluxcd/flux2)
- [Compare argoproj/argo-cd and fluxcd/flux2 interactively](https://octocounts.com/compare?left=https%3A%2F%2Fgithub.com%2Fargoproj%2Fargo-cd&right=https%3A%2F%2Fgithub.com%2Ffluxcd%2Fflux2)

Note: code size is not code quality. OctoCounts only reports reproducible line counts and makes no claim that either project is better.

## Compare FAQ

### Which has more lines of code, argoproj/argo-cd or fluxcd/flux2?

argoproj/argo-cd has more code: 843,536 code lines versus 35,469 for fluxcd/flux2, about 24x as much, based on cached OctoCounts reports as of 2026-09-16.

### Does more source lines of code mean more complexity?

Not necessarily. SLOC measures size, not complexity, quality, or maintainability. A larger codebase can mean more features, more generated or vendored code, more verbose language idioms, or more tests — none of which imply the code is harder to work with. Use SLOC to gauge the scale of what you'd be reading or maintaining, not as a quality signal for argoproj/argo-cd, fluxcd/flux2, or any repository.

### How is this comparison calculated?

Methodology: both counts come from cached OctoCounts reports generated with tokei. argoproj/argo-cd was counted at ref b079641e62e979aae012503ba98bbc683423492a (commit b079641e62e9) on 2026-09-08; fluxcd/flux2 was counted at ref dede56a8fdcd1e0edca28630a979a51415bb56f8 (commit dede56a8fdcd) on 2026-09-16. See the counting methodology for ignored directories and analysis options.

### Can I compare a different branch, tag, or commit?

Yes. This page shows the default branch for each repository. Use the interactive comparison tool to pick any public GitHub repository, branch, tag, or commit SHA for both sides and get a fresh side-by-side report.

## Related OctoCounts pages

- [Interactive repository comparison](https://octocounts.com/compare)
- [Recently analyzed repositories](https://octocounts.com/recent)
- [Popular SLOC reports](https://octocounts.com/popular)
- [Trending GitHub repositories](https://octocounts.com/trending)
- [Hall of Monoliths](https://octocounts.com/hall-of-monoliths)
- [Original research: how filtering changes SLOC counts](https://octocounts.com/research)
- [GitHub SLOC counter guide](https://octocounts.com/docs/github-sloc-counter)
- [Counting methodology](https://octocounts.com/docs/methodology)
- [SLOC and code metrics glossary](https://octocounts.com/docs/glossary)
- [OctoCounts API docs](https://octocounts.com/docs/api)
