It is the earliest reliable signal that a sprint goal is drifting, because it appears days before velocity, burndown or a status report can register it. Performalise measures it for every team, every day, without anyone typing a status.
That is the whole idea. The rest of this page is why it matters, how it is measured, and what it looks like in a real sprint.
Why "said" and "did" come apart
Every team makes small promises every day. “I’ll have PERF-214 done by tomorrow.” “That’s blocked on the API team, but we’re fine.” “We can pull PERF-230 in, it’s small.” None of those promises are lies. Each one is the best guess a competent person can make on a Tuesday morning.
Then reality happens. The API team is in a release freeze. PERF-230 was not small. PERF-214 is technically “in progress” on the board because nobody moved the card when it stalled. By Friday the standup still sounds fine, the board still looks fine, and the sprint goal has quietly lost a third of its capacity.
Nothing in that story is a process failure. It is what work looks like. The failure is that nobody could see the gap while it was still cheap to close.
Why dashboards cannot see it
A dashboard reads the board. The board is what somebody typed. Said versus did needs two sources that dashboards do not have: what the team actually said (the standup, the Slack thread, the review) and what actually happened afterwards (the commit, the PR, the deploy, the ticket that did not move).
Three things follow from that.
Typed status is a lagging indicator by construction. A card moves when someone remembers to move it, which is usually after the fact and often at the retro. Velocity and burndown inherit the lag. They are honest numbers about a stale picture.
Aggregation cannot recover a signal nobody detected. A portfolio view built on team boards is a building with no foundation. If the drift was invisible inside the team on Tuesday, rolling it up to the CTO on Friday does not make it visible; it makes it official.
People say more than they type. “Blocked” in standup is a fact. “In progress” on the board is a label. The word in the room is the earlier, truer one, and it never reaches the dashboard unless someone reads the room for a living.
What it looks like in a real sprint
This is a real example from a team we’ll call Nova, lightly anonymised.
Read individually, each of those is a normal week. Read together, goal confidence for the sprint is heading for 40 to 55 percent, the Q3 release carries a 67 percent chance of slipping three weeks or more, and roughly £180K of work in flight moves no OKR.
The coach’s call on Thursday was small and specific: park the unplanned work, re-anchor the sprint goal, ask the payments team for a date rather than a hope. Goal confidence moved to 65 to 75 percent by the following standup. No status was typed at any point.
How it is measured
Performalise reads four streams for each team: the standup (via Microsoft Teams, Slack or Google Meet), the tracker (Jira, Azure DevOps or Linear), the code (GitHub commits, PRs and review flow) and the deployments. From those it builds two timelines per work item: what was said about it and what happened to it.
The said-versus-did signal is the divergence between the two, scored against the sprint goal. It is a team-level pattern, never an individual score. Performalise does not rank people, does not read source code, and stores the insight rather than the conversation.
Three things a good said-versus-did measure needs, whether you build it or buy it:
- Both sources, continuously. Standup transcripts alone are anecdote; tickets alone are stale. The signal lives in the comparison.
- A goal to score against. Divergence only matters relative to what the sprint was trying to achieve. Without a sprint goal there is no drift, only noise.
- A route to the right altitude. The team sees everything. The manager sees only drift from goal and blockers the team cannot clear itself. Anything else is surveillance, and teams will stop talking in standup the moment they suspect it.
What changes when you can see it
Two numbers from teams using Performalise, aggregated across customer engagements in 2024 and 2025: 33 percent more successful sprints, and delivery forecasts tightened from plus or minus four to six months to plus or minus four to six weeks across a portfolio. Methodology is available on request.
The mechanism behind both numbers is boring, which is the point. Drift gets caught on the day it starts, inside the team, by a coach who says one specific thing. Sprints that would have quietly failed get re-anchored on Wednesday instead of explained on the following Tuesday.
What to try on Monday
You do not need software to see the gap once. Do this in your next standup.
Write down, verbatim, every commitment and every “blocked” you hear. Three days later, open the board and the commit log and put each promise next to what happened. Count the ones that came apart. For most teams the first count is between a quarter and a third of the promises made.
That number is your said-versus-did gap for one week. The question worth asking is not why it exists, because it always does. It is how many days passed before anyone could see it.
Frequently asked questions
Is said versus did an individual performance metric?
No. It is measured at team level against the sprint goal. Performalise deliberately does not produce per-person scores or leaderboards, and the standup data that feeds the signal is never surfaced as individual activity.
Do we need to record standups?
The signal needs what was said, so yes, the standup is one of the four streams (with the tracker, the code and the deploys). Performalise stores the insight it extracts, not the recording or the transcript.
How is this different from DORA metrics or velocity?
DORA metrics and velocity measure what was done and how fast. Said versus did measures whether what was done matches what was promised against the goal. A team can have excellent DORA numbers and a widening said-versus-did gap in the same sprint.
How quickly does the signal appear?
Divergence is scored daily from the first standup after connection. Most teams see their first meaningful drift signal within the first sprint.
Which tools does it work with?
Jira, Azure DevOps and Linear for tracking; Microsoft Teams, Slack and Google Meet for standups; GitHub, Vercel and Supabase for code and deployments. Other trackers are supported on request.
Published 27 August 2026 by Josef Bacher, co-founder of Performalise. Related: Performalise vs Jira Dashboards · Predictability · Who Performalise is not for
