Navigara
All Organizations

Meta — Engineering Performance

MetaEngineering capacity
Navigara
+202Eff. engineering capacity added

184 engineers now deliver what 386 would have in Apr 2025.

+34 vs the previous 90 days

Effective engineersReal engineers
Apr 2025Dec 2025Sep 2026
Where the work wentBiggest shift: Tests down 6 points
33%
Features
20%
Maintenance
25%
Tests
3%
Docs
19%
Fixes

Performance snapshot

Today's rolling 90-day reading for Meta, compared with the start of the series. Pick a window to move that comparison point.

Avg. perf / dev / mo

+109.6%

0.71 → 1.49 ETV

Active engineers

−17.1%

222.0 → 184.0

Features

+1.7pp

31.3% → 33.0%

vs. 500 OSS index

0.46x

0.78x → 0.46x · −54% below

Engineering capacity

Effective engineers behind Meta, against its pre-AI baseline. Each subject has its own: Meta's is 0.71 ETV / dev / mo, its first reading in April 2025. Per-engineer ETV divided by that gives a capacity multiple, and that multiple applied to the engineers active in the trailing 90 days turns it into engineer-equivalents. The line is the real headcount, so the gap between line and area is what the leverage is worth. Because each baseline is its own, every subject opens at 1.0x on its first day: multiples measure improvement and are not comparable between subjects.

Effective engineers
386engineer-equivalents
+202 engineers above real headcount
Real engineers
184engineers
active in the trailing 90 days
Capacity vs pre-AI
2.1x
per engineer, vs 0.71 pre-AI

Meta vs. 500 OSS Performance Index

Per-engineer ETV for Meta against the pooled 500 OSS Performance Index. Both lines are 90-day rolling averages scaled to a 30-day month, so they share one axis and can be read against each other at any point. Pick a window to zoom the chart to it. Latest reading: Meta is 54% below the index (1.49 vs 3.22 ETV/dev/mo). At the start of the tracked period the gap was 22% below.

Meta
1.49ETV / dev / mo
+0.22 (+17.3%) past 90d
500 OSS Performance Index
3.22ETV / dev / mo
+0.99 (+44.4%) past 90d

Behind the numbers

Aug

Written summary of the work completed each month.

Delivery reached 665 commits during 2026-08, showing substantial progress in Buck2 architecture refactoring and build performance optimizations. Total output reached 112 compared to the 53 5-month average (+110%), marking a genuine step up over both historical averages and recent months. Major work centered on transitioning daemon state architecture for multi-tenancy support, toolchain optimization, and linting modernization.

Highlights

  • Refactored buck2_server daemon state architecture to split DaemonStateData into repository-scoped (RepoState) and daemon-wide structures in a6f65831 (Ben), preparing for multi-tenant support.
  • Optimized C++ and Rust build pipelines by generating shared toolchain compiler argsfiles 587485be (Jeremy), linker wrappers fa45a1ba (Jeremy), and Clippy driver wrappers d342af7c (Jeremy) once per toolchain instead of per target.
  • Introduced AI-assisted repository guidance via the buck2 docs agent subcommand in cea8779a (Chenhao) and integrated @expo/code-review-cli review bot workflows in 4f95564c (Peter).
  • Completed broad linting and dependency migrations, eliminating standard collections in favor of buck2_hash 689bc239 (Ben) and migrating PatternLint rules to ASTGREPLINT across 0ece3275 (Ben), 4da390d6 (Ben), and 9fb631a6 (Ben).

Observations

  • Commit volume surged to 665 commits vs the 340-commit 5-month average (+95%), reflecting candidate-material increases across all categories.
  • Maintenance activity was the highest category at a score of 37 vs the 15 5-month average (+141%), led by multi-step crate upgrades (annotate-snippets, object, lsp-server) and codebase-wide collection migrations.
  • Fixes score increased to 21 vs the 7 5-month average (+176%), including critical regressions addressed in buck2_forkserver f1511c94 (Jeremy) and memory leak fixes in React DOM's IntersectionObserver handling 065bc84e (Jack).
  • Features score reached 33 vs the 19 5-month average (+81%), driven by agent-context schema sharing 098bd921 (Chenhao) and idle daemon page-out scoping a048c8d5 (Chenhao).

Based on 665 commits91.4 ETVUpdated Sep 8, 2026, 8:17 AM

Repositories

Where each repository stands: average performance per engineer per month over the last 90 days, with the rolling 90-day curve behind it. The range picks the window (past 90d): it sets how much of the curve you see, the Δ across it, and the span the work mix is measured over. Ranked highest first.

pyrefly

Avg performance

4.32 ETV

per engineer per month

Avg. dev performance / month (90-day MA)

+69.5%

Work mix

Features

32%

Maint

22%

Tests

16%

Docs

3%

Fixes

28%

17 devs222 ETV0% since Q2 2025Repository report

buck2

Avg performance

1.12 ETV

per engineer per month

Avg. dev performance / month (90-day MA)

+46.6%

Work mix

Features

35%

Maint

34%

Tests

12%

Docs

2%

Fixes

18%

56 devs193 ETV+42% since Q2 2025Repository report

fbthrift

Avg performance

1.03 ETV

per engineer per month

Avg. dev performance / month (90-day MA)

-49.9%

Work mix

Features

37%

Maint

10%

Tests

41%

Docs

3%

Fixes

10%

45 devs145 ETV+259% since Q2 2025Repository report

fboss

Avg performance

1.03 ETV

per engineer per month

Avg. dev performance / month (90-day MA)

+38.4%

Work mix

Features

33%

Maint

7%

Tests

36%

Docs

3%

Fixes

20%

48 devs154 ETV+63% since Q2 2025Repository report

react

Avg performance

0.85 ETV

per engineer per month

Avg. dev performance / month (90-day MA)

+131.7%

Work mix

Features

20%

Maint

12%

Tests

39%

Docs

2%

Fixes

27%

12 devs31 ETV−69% since Q2 2025Repository report

react-native

Avg performance

0.69 ETV

per engineer per month

Avg. dev performance / month (90-day MA)

+5.4%

Work mix

Features

31%

Maint

20%

Tests

28%

Docs

6%

Fixes

15%

27 devs56 ETV−53% since Q2 2025Repository report

folly

Avg performance

0.47 ETV

per engineer per month

Avg. dev performance / month (90-day MA)

+187.4%

Work mix

Features

29%

Maint

17%

Tests

39%

Docs

3%

Fixes

12%

21 devs31 ETV−37% since Q2 2025Repository report

docusaurus

Avg performance

0.32 ETV

per engineer per month

Avg. dev performance / month (90-day MA)

-75.6%

Work mix

Features

12%

Maint

45%

Tests

14%

Docs

16%

Fixes

14%

2 devs2 ETV−33% since Q2 2025Repository report

fresco

Avg performance

0.15 ETV

per engineer per month

Avg. dev performance / month (90-day MA)

-18.3%

Work mix

Features

45%

Maint

24%

Tests

25%

Docs

2%

Fixes

4%

4 devs3 ETV−27% since Q2 2025Repository report

hermes

Avg performance

0.00 ETV

per engineer per month

Avg. dev performance / month (90-day MA)

-100.0%

Work mix

Features

0%

Maint

0%

Tests

0%

Docs

0%

Fixes

0%

2 devs0 ETV−39% since Q2 2025Repository report

Performance Composition

Each month's output split by type of work: Features (new value), Maintenance (sustaining systems), Tests, Docs, and Fixes (rework). The yellow line is output per engineer, so when it rises each engineer is delivering more, whatever the team size did. Unit: Engineering Throughput Value (ETV).

Cost per Performance Unit

−52%

If performance per engineer more than doubled, each unit of engineering performance now costs approximately 52% less than at the baseline 90-day window (ending 2025-04-01). Treat this as a direction, not a price: the exact figure depends on fully-loaded engineer cost, but which way it moved is not in doubt.

Effective Capacity Added

+202 engineers

At today's productivity, the current 184-person team delivers the performance equivalent of 386 engineers at the baseline 90-day rolling window (ending 2025-04-01). That's roughly 202 engineers worth of capacity added through productivity gains, not hiring.

CapEx vs OpEx

Each month's work split two ways. CapEx (capitalizable investment) is the work that builds the asset: Features, plus the Tests that prove it works and the Docs that explain it. OpEx (operating expense) is keeping it running: Maintenance and Fixes. The yellow line is the CapEx share, so a rising line means more of the month went into building new rather than sustaining what exists. Unit: Engineering Throughput Value (ETV).

Hours per Repository

Trailing 90-day window (64 working days). Org-level capacity is allocated to each repo by its share of org performance, then split CapEx / OpEx by that repo's own Features + Tests + Docs vs Maintenance + Fixes mix.

fbthrift80.8%19.2%
fboss70.7%29.3%
folly70.6%29.4%
fresco65.4%34.6%
react-native64.6%35.4%
react60.8%39.2%
pyrefly50.3%49.7%
buck248.3%51.7%
docusaurus41.5%58.5%
hermes0.0%0.0%
Total61.0%39.0%

Feature Contribution

Who shipped each month's new feature work, as a share of that month's total. Bands of similar width mean new value is coming from across the team; one band that stays wide means most of it rests on the same person. Named engineers shipped the most Features over the period. Everyone else is grouped as Others.

Quarterly Summary

Engineers and the Features / Maintenance / Tests / Docs / Fixes mix for each quarter. Cost / Perf Unit is what one unit of performance costs against Q2'25. Eff. Capacity Added is measured against this org's own pre-AI baseline instead, its first reading in the index, so it agrees with the capacity tile and chart above.

Quarter
Q2'252380%+55 engineers
34% Features
Q3'25245+2%+51 engineers
34% Features
+1%
Q4'25244+11%+26 engineers
35% Features
−9%
Q1'26243−21%+134 engineers
34% Features
+40%
Q2'26209−28%+146 engineers
30% Features
−6%