AI adoption metrics: two numbers, and why they don't always agree
AI Adoption tracks two independently measured numbers per week or month: the share of pull requests opened with an AI-assist signal, and the share of commits with the same signal. They're joined so a quiet period on one side still shows up with the other — but they're built to disagree sometimes, and the disagreement is usually the more useful reading than either number alone.
| Period | AI PR % | AI Commit % | PRs | Commits |
|---|---|---|---|---|
| 2026-05 | 18% | 22% | 64 | 210 |
| 2026-06 | 24% | 29% | 71 | 198 |
| 2026-07 | 31% | 35% | 68 | 224 |
AI PR% and commit% climbing together over three months.
What it measures, and where the data comes from
Two rates, computed completely separately, for every week or month in the window:
- AI PR% — of every pull request opened in the period, the share carrying a known AI-assist signal (a
Co-Authored-Bytrailer for a known AI tool, a "Generated with…" marker, or similar) anywhere in its commits or description. - AI Commit% — of every non-merge commit made in the period, the share carrying that same kind of signal in its own message.
Both legs come from GitHub, GitLab, and Azure DevOps. The two results are then full-outer-joined on period — if a given week has PR activity but no raw commit activity in scope (or the reverse), that week still appears, with the missing side's percentage and total zeroed instead of the whole row vanishing.
How to read it
Look at the two columns side by side before you look at either one in isolation. When PR% and commit% move together, you're seeing one real trend from two angles — trust it. When they split, that's the more informative row: something in your pipeline is treating AI-assisted work differently depending on whether you're looking at the PR level or the raw commit level.
Keep an eye on the totals columns too. A period with 4 PRs and one of them AI-flagged reads as "25%," and that number will jump around wildly week to week purely from small-sample noise — it's not telling you adoption doubled or halved.
What it tells you over time
A steady climb across several consecutive periods, on both columns, is the shape of real adoption — more people picking up the habit, more of the codebase touched by it. A one-period spike that vanishes the next period is usually one contributor on one project, not a team-wide shift. Don't write the spike into a slide deck until it repeats.
Example situations
1. AI PR% and AI commit% pulling apart
| Period | AI PR % | AI Commit % | PRs | Commits |
|---|---|---|---|---|
| 2026-05 | 20% | 24% | 58 | 190 |
| 2026-06 | 19% | 41% | 62 | 205 |
| 2026-07 | 17% | 52% | 65 | 211 |
Commit% high, PR% flat — the two legs disagree.
What you're seeing: AI commit% more than doubled over two months while AI PR% barely moved. Either people are adopting AI at the commit level while the PR-level rollup misses it, or the reverse pattern is happening somewhere else on the board — either way, the two numbers are describing different realities of the same work.
How to react: don't average the two numbers into one "AI adoption %" for a slide — that hides the exact signal you need. Check what merge strategy the repos in question use. Squash-merging collapses a PR's individual commits (and any trailer they carried) into a single merge commit; if that merge commit's message doesn't carry the trailer forward, PR-level detection can miss work that commit-level detection caught cleanly on the pre-squash commits, or vice versa depending on which side of the sync the trailer got read from.
2. A percentage built on a handful of rows
| Period | AI PR % | AI Commit % | PRs | Commits |
|---|---|---|---|---|
| 2026-07-06 | 28% | 31% | 54 | 180 |
| 2026-07-13 | 50% | 100% | 4 | 2 |
| 2026-07-20 | 27% | 30% | 49 | 165 |
One quiet week, one AI-flagged PR, and a headline-looking number.
What you're seeing: one week reads 50% AI PR% and 100% AI commit% — dramatically higher than every neighboring week. Look at the totals: 4 PRs and 2 commits. This is a public-holiday week or a team on vacation, not a sudden surge in AI adoption.
How to react: don't let a single tiny-sample week distort a trend line, a quarterly report, or a "look how fast adoption is growing" narrative. It's one contributor's normal week reading like a headline because the denominator collapsed.
Frequently asked
- What does AI adoption measure in engineering?
- Two independently measured numbers per period: the share of pull requests opened with an AI-assist signal, and the share of commits carrying the same signal. They are shown together so a quiet week on one side still registers on the other.
- Why do the AI PR percentage and commit percentage disagree?
- They are built to disagree. A high PR share with a low commit share usually means AI is used to draft and summarise rather than to write the bulk of the code; the reverse means heavy in-editor use that never gets marked at the PR level. The gap is normally more informative than either number alone.
- Does a low AI adoption number mean nobody is using AI?
- No. Detection depends on an AI-assist marker being present in a commit trailer or PR marker. Teams using AI tools that do not add a trailer will read as zero. Absence of a signal is not evidence of absence of use.
Related widgets
- AI-Assisted PR % — the PR-level leg of this widget, on its own, as a single trend.
- Bot vs Human (Authorship) — the commit-level leg, broken out by contributor.
- Review Mix (Bot vs Human) — a related but distinct signal: bot involvement in the review process, not authorship.
- Back to the widget reference.
Last updated