5 JQL Queries Every Scrum Master Should Have Saved
If you have been a Scrum Master for more than a few months, you have probably spent more time than you would like trying to remember the exact syntax for a JIRA filter you built three sprints ago.
JQL (JIRA Query Language) is one of those tools that is incredibly powerful once you know it, but the syntax is just obscure enough that most people end up rebuilding the same filters over and over. This post fixes that.
Below are the five JQL queries I use most often as a Scrum Master. Copy them, save them as JIRA filters, and customize the project key and field names for your team.
1. Everything Incomplete From the Last Sprint
This is the first query I run after every sprint closes. It shows everything that was planned but not completed - the starting point for any honest retrospective conversation about scope and commitment.
project = YOUR_PROJECT AND sprint in closedSprints() AND sprint not in futureSprints() AND status != Done ORDER BY priority DESC
What to customize: Replace YOUR_PROJECT with your JIRA project key. If your team uses a status other than "Done" (like "Released" or "Closed"), update that field accordingly.
Why it matters: Teams that never look at incomplete work tend to repeat the same overcommitment patterns. This filter makes the conversation unavoidable in a healthy way.
2. All Open Bugs Older Than 14 Days
Bugs have a way of aging quietly in the backlog while the team focuses on new features. This query surfaces anything that has been sitting unresolved for more than two weeks.
project = YOUR_PROJECT AND issuetype = Bug AND status != Done AND created <= -14d ORDER BY created ASC
What to customize: Adjust the -14d to -30d or -7d depending on your team's tolerance for open bugs. Add AND priority in (High, Critical) if you only want to surface the most urgent items.
Why it matters: This is a useful filter to share with your Product Owner during backlog refinement. Bugs that are not being prioritized should be a conscious decision, not an oversight.
3. Stories Completed This Sprint by Assignee
This query gives you a per-person view of what was completed in the current sprint. It is useful for sprint reviews, capacity planning, and understanding workload distribution.
project = YOUR_PROJECT AND issuetype = Story AND sprint in openSprints() AND status = Done ORDER BY assignee ASC
What to customize: Change issuetype = Story to issuetype in (Story, Task) if your team also tracks tasks as separate issue types. Swap openSprints() for closedSprints() to look at the sprint that just ended.
Why it matters: If one team member is consistently completing significantly more or fewer story points than others, that is a conversation worth having - either about capacity, estimation accuracy, or how work is being distributed.
4. Blockers and Impediments Currently Open
Impediment tracking is one of the most important and most neglected parts of the Scrum Master role. This query assumes you are using a label to tag blocked issues - which you should be.
project = YOUR_PROJECT AND labels = blocked AND status != Done ORDER BY updated ASC
What to customize: If your team uses a different label (like "impediment" or "on-hold"), update accordingly. Some teams use a custom field instead of a label - ask your JIRA admin what convention your organization uses.
Why it matters: Blocked items that are not being actively tracked tend to sit for days or weeks without anyone owning the resolution. This filter makes blockers visible and creates accountability.
5. Everything Added to the Sprint After It Started (Scope Creep Tracker)
This is the query most Scrum Masters do not know they need until they have been burned by scope creep. It shows issues that were added to the current sprint after the sprint start date.
project = YOUR_PROJECT AND sprint in openSprints() AND sprint changed after startOfSprint() ORDER BY created DESC
What to customize: This query works best when your JIRA sprints have accurate start dates. If your team does not formally start sprints in JIRA, the results may not be reliable.
Why it matters: Mid-sprint additions are one of the most common sources of team frustration and missed commitments. Tracking them gives you data to bring to the retrospective and, eventually, to the conversation with whoever is adding scope.
How to Save These as JIRA Filters
- Run the query in JIRA's issue search (switch to Advanced mode to paste JQL directly)
- Click Save as in the top right of the search results
- Give the filter a descriptive name (e.g., "SM - Open Blockers")
- Share it with your team if relevant
Once saved, you can add these filters to JIRA dashboards as gadgets, making them visible to the whole team without anyone needing to run the query manually.
A Note on AI-Assisted JQL
If you read my post on using AI in your Scrum Master work, you know I am a fan of using GitHub Copilot or ChatGPT to write JQL from plain English descriptions. These five queries are a great starting point, but the real power comes when you can describe exactly what you need and get a custom query back in seconds.
The combination of a solid base set of saved filters plus the ability to generate custom queries on demand is what separates Scrum Masters who are reactive about data from those who are genuinely data-informed.
Want to work on your JIRA skills and overall Scrum Master effectiveness with a coach? Book a free consultation to talk through where you are and where you want to go. And if you are still building your foundational knowledge, check out What Does a Scrum Master Do Day to Day? for a grounded look at the role.

Akbar is a Certified SAFe® Scrum Master with 12+ years of experience coaching teams at Fortune 500 companies. He helps Scrum Masters level up and land the role they want through personalized coaching, resume reviews, and interview preparation.
Enjoying this article?
Get weekly Scrum Master career tips delivered to your inbox.