File Size Overall
- There are 5,197 files with 409,870 lines of code.
- 26 very long files (37,676 lines of code)
- 86 long files (56,272 lines of code)
- 419 medium size files (125,833 lines of code)
- 550 small files (77,204 lines of code)
- 4,116 very small files (112,885 lines of code)
Legend:
1001+
501-1000
201-500
101-200
1-100
explore: grouped by folders | grouped by size | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
File Size per Logical Decomposition
primary
Longest Files (Top 50)
| File | # lines | # units |
|---|---|---|
| 3392 | 88 | |
| 2951 | 157 | |
| 2501 | 83 | |
| 1691 | - | |
| 1667 | 64 | |
| 1626 | 121 | |
| 1597 | 48 | |
| 1442 | 73 | |
| 1362 | 12 | |
| 1342 | 88 | |
| 1324 | 66 | |
| 1264 | 53 | |
| 1211 | 47 | |
| 1208 | 45 | |
| 1207 | 59 | |
| 1201 | 73 | |
| 1189 | - | |
| 1129 | 52 | |
| 1113 | 6 | |
| 1081 | - | |
| 1070 | 57 | |
| 1035 | 48 | |
| 1034 | 44 | |
| 1028 | 50 | |
| 1006 | 49 | |
| 1005 | 41 | |
| 996 | 61 | |
| 987 | 51 | |
| 986 | 49 | |
| 981 | 14 | |
| 935 | 17 | |
| 918 | 58 | |
| 895 | 52 | |
| 888 | 49 | |
| 884 | 61 | |
| 883 | 31 | |
| 878 | 29 | |
| 847 | 52 | |
| 846 | 43 | |
| 832 | 22 | |
| 815 | 35 | |
| 811 | 31 | |
| 782 | 24 | |
| 767 | 35 | |
| 763 | 28 | |
| 754 | - | |
| 746 | - | |
| 744 | 71 | |
| 737 | 23 | |
| 713 | 37 |
Large Files That Change Often (Top 20)
To change a file, an AI coding agent (or a person) has to read it: these files are read the most for the changes in the past year (lines × changes).
| File | # lines | ≈ tokens to read | # changes (1y) | ≈ lines edited per change | lines read per line changed |
|---|---|---|---|---|---|
| 1597 | ~10k–30k | 2220 | ~30 | ~50 | |
| 1113 | ~7k–20k | 2507 | ~30 | ~30 | |
| 1264 | ~7k–20k | 1805 | ~30 | ~30 | |
| 2501 | ~15k–50k | 871 | ~100 | ~20 | |
| 3392 | ~20k–50k | 432 | ~300 | ~10 | |
| 1129 | ~7k–20k | 1180 | ~100 | ~10 | |
| 2951 | ~20k–50k | 386 | ~300 | ~10 | |
| 572 | ~3k–10k | 1974 | ~20 | ~30 | |
| 811 | ~5k–15k | 1377 | ~50 | ~15 | |
| 711 | ~3k–10k | 1434 | ~30 | ~30 | |
| 763 | ~5k–15k | 878 | ~50 | ~15 | |
| 496 | ~3k–7k | 1340 | ~30 | ~15 | |
| 589 | ~3k–10k | 1117 | ~100 | ~5 | |
| 746 | ~5k–15k | 877 | ~30 | ~20 | |
| 1691 | ~10k–30k | 338 | ~200 | ~7 | |
| 652 | ~3k–10k | 863 | ~70 | ~10 | |
| 1211 | ~7k–20k | 453 | ~100 | ~10 | |
| 444 | ~3k–7k | 1062 | ~20 | ~20 | |
| 1070 | ~7k–15k | 431 | ~150 | ~7 | |
| 1342 | ~7k–20k | 325 | ~200 | ~7 |
Tokens are lines × 7 to 14 (analysis.fileReadsForChanges). Lines edited per change are the file's lines added and deleted divided by its commits over the whole history. Agents read about 2,000 lines at a time: when a 17,000-line file was split into modules, the tokens an agent read for the same change fell by 83% (The Economic Benefit of Refactoring, 2026).
Files With Most Units (Top 50)
| File | # lines | # units |
|---|---|---|
| 2951 | 157 | |
| 1626 | 121 | |
| 3392 | 88 | |
| 1342 | 88 | |
| 2501 | 83 | |
| 1201 | 73 | |
| 1442 | 73 | |
| 744 | 71 | |
| 569 | 70 | |
| 550 | 69 | |
| 1324 | 66 | |
| 1667 | 64 | |
| 884 | 61 | |
| 996 | 61 | |
| 1207 | 59 | |
| 918 | 58 | |
| 540 | 58 | |
| 1070 | 57 | |
| 645 | 56 | |
| 1264 | 53 | |
| 1129 | 52 | |
| 847 | 52 | |
| 895 | 52 | |
| 987 | 51 | |
| 1028 | 50 | |
| 986 | 49 | |
| 306 | 49 | |
| 473 | 49 | |
| 888 | 49 | |
| 1006 | 49 | |
| 1597 | 48 | |
| 1035 | 48 | |
| 1211 | 47 | |
| 711 | 45 | |
| 595 | 45 | |
| 305 | 45 | |
| 1208 | 45 | |
| 1034 | 44 | |
| 846 | 43 | |
| 507 | 42 | |
| 1005 | 41 | |
| 484 | 41 | |
| 283 | 40 | |
| 374 | 40 | |
| 614 | 38 | |
| 665 | 38 | |
| 418 | 38 | |
| 528 | 37 | |
| 535 | 37 | |
| 220 | 37 |
Files With Long Lines (Top 50)
There are 1490 files with lines longer than 120 characters. In total, there are 7141 long lines.
| File | # lines | # units | # long lines |
|---|---|---|---|
| 572 | 3 | 202 | |
| 1597 | 48 | 106 | |
| 1113 | 6 | 90 | |
| 754 | - | 78 | |
| 832 | 22 | 72 | |
| 1442 | 73 | 48 | |
| 593 | 31 | 45 | |
| 1211 | 47 | 43 | |
| 981 | 14 | 42 | |
| 711 | 45 | 38 | |
| 1207 | 59 | 37 | |
| 846 | 43 | 35 | |
| 352 | 8 | 35 | |
| 442 | 27 | 33 | |
| 2951 | 157 | 31 | |
| 878 | 29 | 30 | |
| 987 | 51 | 29 | |
| 2501 | 83 | 29 | |
| 659 | 33 | 27 | |
| 147 | - | 27 | |
| 473 | 18 | 25 | |
| 514 | 6 | 25 | |
| 319 | 4 | 25 | |
| 305 | 16 | 25 | |
| 138 | - | 24 | |
| 418 | 38 | 24 | |
| 289 | 15 | 23 | |
| 1129 | 52 | 23 | |
| 557 | - | 23 | |
| 1201 | 73 | 22 | |
| 454 | 23 | 22 | |
| 197 | 8 | 22 | |
| 319 | 9 | 21 | |
| 154 | 8 | 21 | |
| 503 | 30 | 21 | |
| 421 | 6 | 21 | |
| 448 | 18 | 21 | |
| 180 | 8 | 21 | |
| 39 | - | 20 | |
| 349 | 23 | 20 | |
| 322 | 16 | 20 | |
| 90 | - | 19 | |
| 198 | 9 | 19 | |
| 89 | - | 19 | |
| 196 | 12 | 19 | |
| 1028 | 50 | 19 | |
| 211 | - | 19 | |
| 207 | 8 | 19 | |
| 507 | 42 | 18 | |
| 1264 | 53 | 18 |
Correlations
File Size vs. Commits (all time): 5197 points
|
|
3392.0 | lines of code min: 1.0average: 78.87 25th percentile: 7.0 median: 30.0 75th percentile: 82.0 max: 3392.0 |
|
| 0 | 2507.0 | ||
|
commits (all time) min: 2.0 | average: 84.01 | 25th percentile: 21.0 | median: 33.0 | 75th percentile: 89.5 | max: 2507.0
|
|||
File Size vs. Contributors (all time): 5197 points
|
|
3392.0 | lines of code min: 1.0average: 78.87 25th percentile: 7.0 median: 30.0 75th percentile: 82.0 max: 3392.0 |
|
| 0 | 54.0 | ||
|
contributors (all time) min: 1.0 | average: 15.14 | 25th percentile: 9.0 | median: 13.0 | 75th percentile: 21.0 | max: 54.0
|
|||
File Size vs. Commits (30 days): 4520 points
|
|
3392.0 | lines of code min: 1.0average: 85.0 25th percentile: 9.0 median: 34.0 75th percentile: 88.0 max: 3392.0 |
|
| 0 | 653.0 | ||
|
commits (30d) min: 1.0 | average: 39.41 | 25th percentile: 12.0 | median: 23.0 | 75th percentile: 50.0 | max: 653.0
|
|||
File Size vs. Contributors (30 days): 4520 points
|
|
3392.0 | lines of code min: 1.0average: 85.0 25th percentile: 9.0 median: 34.0 75th percentile: 88.0 max: 3392.0 |
|
| 0 | 42.0 | ||
|
contributors (30d) min: 1.0 | average: 12.97 | 25th percentile: 9.0 | median: 12.0 | 75th percentile: 18.0 | max: 42.0
|
|||
File Size vs. Commits (90 days): 5197 points
|
|
3392.0 | lines of code min: 1.0average: 78.87 25th percentile: 7.0 median: 30.0 75th percentile: 82.0 max: 3392.0 |
|
| 0 | 2387.0 | ||
|
commits (90d) min: 1.0 | average: 83.31 | 25th percentile: 21.0 | median: 33.0 | 75th percentile: 89.0 | max: 2387.0
|
|||
File Size vs. Contributors (90 days): 5197 points
|
|
3392.0 | lines of code min: 1.0average: 78.87 25th percentile: 7.0 median: 30.0 75th percentile: 82.0 max: 3392.0 |
|
| 0 | 53.0 | ||
|
contributors (90d) min: 1.0 | average: 15.13 | 25th percentile: 9.0 | median: 13.0 | 75th percentile: 21.0 | max: 53.0
|
|||
About This Analysis
- File size measurements show the distribution of size of files.
- Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
- It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
- To learn more about bloaters and how to deal with long code structures, Sokrates recommends the following resources:
- Refactoring bloaters, sourcemaking.com
- The Blob Software Development Anti-Pattern, sourcemaking.com