AI-Assisted Percentage

AI-Assisted Percentage

What share of your team’s shipped changes had AI assistance — measured as a percentage of lines changed in AI-assisted PRs and commits.

Family: AI Impact & Cost · Cadence: Per window · Where it appears: /ai-adoption/ai-impact, /ai-adoption/executive, drill-downs

At a glance

AI-Assisted % is the behavioral counterpart to Agent Adoption Score. Where Adoption asks “is this developer using AI?”, AI-Assisted % asks “did this developer use AI on this specific change?” The two diverge surprisingly often. A developer can be a heavy daily Claude user (high Adoption) and ship most of this week’s PRs without touching it (low AI-Assisted on those changes).

The metric is line-weighted, so a 2,000-line AI-assisted refactor counts more than a 30-line AI-assisted typo fix.

Formula

AI-Assisted % = (lines changed in AI-assisted PRs + commits) / (total lines changed) × 100%

  where AI-assisted = has AI co-author trailer OR
                      developer had AI events within the correlation window
                      of the change's lifecycle (default 60 minutes)

How GitKraken Insights calculates it

Per-item detection. For each merged PR and direct commit, the backend computes is_ai_assisted = true if either:

  1. The commit has an AI co-author trailer (reason: co_author), or
  2. The developer had AI events within the AI-to-commit correlation window of the change’s lifecycle window (reason: ai_events). The window defaults to 60 minutes and is configurable per org — see AI-to-Commit Correlation Window. For PRs, the lifecycle window is (first_commit_at, merged_at OR closed_at OR now). For direct commits, the correlation window applies on either side of the commit. AI events include user_prompt, tool_result, and api_request from any connected provider (Claude Code, Codex, Cursor).

The materialized flag (pull_requests.is_ai_assisted / direct_commits.is_ai_assisted) is computed by a continuous classifier worker. A live EXISTS fallback fires when the materialized flag is still NULL (typically for very recent items).

Aggregation. AI-Assisted % is computed as lines-changed-weighted, not as a simple count. So a team that ships 100 small AI-assisted PRs and one big non-AI-assisted PR can show 50% AI-Assisted (by lines) even though 99% of count is AI-assisted.

This weighting reflects “how much of the shipped work had AI help” rather than “how many of the shipped items.”

Why it matters

AI-Assisted % is the closest thing the dashboard has to an attribution metric. Adoption Score says “developers are using AI”; AI-Assisted % says “AI is touching the shipped work.”

It is also a sanity check on the Adoption Score. A team with 90% Adoption Score and 10% AI-Assisted % has a problem — devs are using AI but not on their actual work. A team with 60% Adoption and 60% AI-Assisted has clean alignment.

For executives, AI-Assisted % is the metric to cite when answering “how integrated is AI into the actual code we ship?” The answer is more concrete than Adoption (which can include “I asked Claude a question once”).

How to read it

AI-Assisted % Read it as
70%+ Deep integration — AI is on most of the team’s substantive work
40–69% Solid — AI is integrated into about half of substantive shipping
15–39% Emerging — AI is used on a subset of work, often the easier subset
< 15% Limited — AI is being used adjacent to work but not on the work itself

The right target for your team depends on what you ship. Heavy infrastructure and migration work resists AI assistance — even at 100% adoption, AI-Assisted % may cap at 50%. Greenfield product work can reach 80%+.

Where it appears

Settings that affect it

Related metrics

Metric Relationship
Agent Adoption Score The user-level adoption measure. AI-Assisted % is the work-level counterpart.
Productivity Uplift AI-Assisted % is a confirming signal — higher AI-Assisted → stronger uplift narrative.
Output Score Independent — Output Score doesn’t filter by AI-assisted status.

How to improve it

Limitations and gotchas

FAQ

Q: How is “AI-assisted” detected if the dev doesn’t tag the commit?
A: The backend looks for AI events (Claude / Codex / Cursor prompts, tool results, API requests) by that developer within the correlation window of the change’s lifecycle — 60 minutes by default. If they prompted Claude within that window of committing, the commit is marked AI-assisted with reason ai_events.

Q: A PR shows AI-Assisted = false but I know the dev used Claude. Why?
A: Three usual causes: (1) the AI events happened outside the PR’s lifecycle window by more than the correlation window allows, (2) the developer’s email or login doesn’t match between the AI events and the PR, (3) the materialized flag hasn’t been computed yet.

Q: Why line-weighted rather than count-weighted?
A: Line weighting tracks “how much of the work shipped with AI help.” Count weighting can be skewed by a flood of trivial PRs. Line weighting is the more honest “share of substantive output” answer.

Q: Will lines from the AI’s auto-generated comments count?
A: Yes — all lines changed in the PR count, including ones the AI wrote that the human accepted. That is by design: the work was AI-assisted regardless of which lines came from whom.