transitionedBy — The JQL Function Your Team Doesn't Know About (But Really Should)
The Problem With Native JQL
Jira's native JQL is powerful — but it has a blind spot.
You can ask "what is the current status of this issue?" easily. But the moment someone asks "who moved this issue to Done, and when did that happen?" — you're digging through changelogs manually, one issue at a time.
This is where teams hit a wall:
- Sprint retrospectives — you want to know which issues were actually closed during the sprint, not just what's currently Done
- Compliance audits — you need to prove that specific approvals happened in the right order, by the right person
- Bottleneck analysis — you suspect certain statuses are being skipped or bypassed in your workflow
- Team performance reviews — you want visibility into who is actively moving work forward
Native JQL cannot answer any of these directly. You end up exporting to spreadsheets, writing scripts, or just giving up and clicking through changelogs.
<em>transitionedBy</em> solves all of this with a single JQL function.
What is transitionedBy?
<em>transitionedBy</em> is a JQL function provided by the JQL Argon app JQL Argon Powerful Search for Jira. It searches through issue change history and returns issues that were transitioned to a specific status, within a defined date range, with an optional filter on who performed the transition.
From search <em>transitionedBy</em>......

.......to find result in only a few secunds

Examples:
1. Who closed issues in Q1?
issue in transitionedBy("project = DEV", "Done", "2026/01/01", "2026/03/31")
2. Did John actually move those tickets to In Review?
issue in transitionedBy("project = DEV", "In Review", "2026/05/01", "2026/05/31", "john.smith")
3. Issues that were NEVER transitioned to Done by your team
issue not in transitionedBy("project = DEV", "Done", "2026/01/01", "2026/05/31")
The "not in" Power Move
Every transitionedBy query can be flipped with not in — and this is often the most valuable direction.
| Query |
What it finds |
|---|
issue in transitionedBy(...) |
Issues that DID reach a status |
issue not in transitionedBy(...) |
Issues that NEVER reached that status |
The not in variant is your best tool for catching process violations, stalled work, and skipped workflow steps.
Summary
transitionedBy fills one of the most common gaps in Jira's native JQL: change history by status and person.
- Sprint retrospectives — what was actually completed, not just what's in Done
- Compliance audits — who approved what, and when
- Workflow validation — catch skipped steps and bypassed stages
- Team visibility — who is moving work forward
- Release tracking — precise deployment and closure reporting
All from a single JQL function, returning results in seconds.
Greetings
Orbiscend OU
(JQL Argon app provider)