Building a custom Jira report from JQL

The template library covers the reports most teams want. When it does not cover yours, you write the query yourself.

This is the mechanics of that: how to get from a JQL query to a scheduled chart in Slack, which chart type to reach for, and the three things that usually go wrong.

If you want queries rather than instructions, the JQL recipe library is here.

What if you could get Jira burndown chart in Slack daily or for that matter a service desk SLA chart or any custom JQL report? What if you can choose just about any Jira report type, pick any schedule and have it delivered in any Slack channel? And what if you get not just a link to the report but the complete report with drill through and full issue update capabilities in Slack.

Troopr lets you use any of the easy to configure report templates and share them to yourself or schedule them to your project or team channels in Slack.

This is the easiest and most effective way to share and engage with project insights with your team and keep you and everyone in your team on the same page.

Troopr reports


In this blog we discuss Troopr’s approach to easy Jira reporting in Slack that your team will love.

Problems with report sharing

Traditionally, if you had to share a report, say a burndown chart, you will likely copy the Jira report link and paste it in Slack channel or email where your team is. This is not ideal for following reasons

  1. Team members tend not to open another app just to check a report
  2. The action required from individual team members is not clear just with a report link
  3. Most email notifications from Jira get a spam treatment
  4. Manually sharing report links is a mundane task

Troopr addresses these problems by making it super easy to build and share Jira reports in Slack.

When to go custom

Reach for a template first. Custom is worth it when one of these is true:

Your question spans projects. Templates are scoped to a project or board. JQL is not.

Your question depends on a custom field. Anything your organisation added to Jira, a team field, a risk rating, a customer tier, is reachable by JQL and not by a template.

Your question is a condition, not a category. "Issues where remaining estimate is above 8 and status has not changed in 5 days" is not a template, it is a query.

You already have the saved filter. If the query exists in Jira, point at it rather than rewriting it.

Reports configuration in Troopr

Step 1: write and validate the query

Start in Jira's issue search, not in Troopr. Get the query returning what you expect, then bring it across. Troopr validates JQL against your Jira when you save, so a broken query fails at setup rather than silently at 9am on Monday.

Two habits worth forming:

Scope by project or board, not by everything. An unscoped query gets slower as Jira grows and eventually times out.

Use relative dates rather than fixed ones. "updated < -5d" keeps working. "updated < 2026-09-01" is correct for about a week.

You can also point at a saved Jira filter instead of pasting JQL. That is usually the better option, because the filter stays maintained in one place and the routine follows it.

Step 2: choose the shape

The builder offers bar, line, pie, burndown, velocity, list, summary, workload, and epic. The choice is not cosmetic; it decides whether the report gets read.

Bar for comparison across a category. Issues by assignee, by component, by priority. The most useful default.

Line for change over time. Anything where the trend matters more than the current value.

Pie for proportion, and only when there are five or fewer slices. Beyond that it stops being readable and a bar chart is better.

Burndown and velocity for sprint work, by board, estimated in story points, original estimate, remaining estimate, or issue count.

List for anything actionable. This is the one teams underuse. A chart tells you the shape of a problem; a list names the tickets, and every issue in a list carries triage buttons so someone can fix it from the channel.

Summary for a written read rather than a picture. Use it when the answer is a sentence, not a shape.

A rule that holds up: if the point of the report is that somebody should do something, use a list. If the point is that somebody should notice something, use a chart.

Step 3: set the axes

For charts, X can be any field, including sprint and labels. Y is either issue count or the sum or average of any numeric field.

That second option is where most of the useful custom reports live. Issue count by assignee tells you who has the most tickets. Sum of story points by assignee tells you who has the most work. Those are different questions and teams routinely ask the first while meaning the second.

You can also build condition-based lists here, such as remaining estimate above a threshold.

Colours, ordering, field names, and light or dark chart theme are all adjustable. Light theme reads better in most Slack workspaces.

Step 4: preview, then schedule

The builder shows a live preview before you save. Use it, particularly for custom JQL, where the difference between the query you meant and the query you wrote is not always visible in the text.

Then delivery: a channel, a person, or per-assignee DMs of their own issues. Daily, weekly on chosen days, or custom, at a time and timezone you choose. You can add an opening message, a title, and a purpose line.

After saving, Run now sends it immediately so you can check it in the channel before the first scheduled post.

Smarter report sharing with Troopr

Troopr promotes better team engagement through timely and contextual report sharing in Slack. Troopr Routines allow for discussion and action on the report issues without disrupting team work. Troopr delivers project insights in Slack in a fraction of the time that it will take otherwise.

Troopr provides the capability to share the complete report (not just the links) to your team in Slack. This dramatically reduces the friction to access the project reports, and increases the  opportunity for the team to engage and action on the reports without leaving slack.

Share jira reports in Slack using Troopr

Troopr also goes beyond listing issues to enable actioning on the report issues directly in Slack. Any field update or action that you could perform in Jira can now be done in Slack. This capability transforms the way your team members interact with Jira reports.

Why custom Jira reports

Every team defines success differently. The “Custom Report” template provides more granular customization so you get the exact report you need.

Key benefits of building your own custom report for Slack include

  1. Better control over the configuration of the report you want to share in Slack
  2. Helps you and your team take better data based decisions more often
  3. Easy to pick the metrics you want to share with stakeholders outside Jira
  4. Surfaces potential blockers before it is too late to action
  5. Triggers discussion and nudges to action by bringing focus on key insights
  6. Dramatically improves team engagement by reducing the friction to update Jira
  7. Improves transparency resulting in better planning and alignment to team goals

Post setup actions

Testing the report

Once you have set up the report - it appears on the list (along with the other already setup reports) in Troopr Web App, where you can run a test to see if it is working as expected. To do this, choose “Run Now” from the options available on the right corner. This will send the report to the configured Slack channel (If there is any relevant data to send).

Editing the custom message

Troopr reports reach the configured Slack channel along with a custom delivery message (optionally provided during the setup process). You can add/ make changes to this delivery message by choosing “Edit” from the options available on the right corner of the report list.

Managing the configuration

You can make changes to the reporting, scheduling and delivery options by choosing “Configure”. This opens up the 3 step setup form that is populated with predefined fields, where you can make the necessary changes and update it.

Disable/Enable

You can disable the report anytime if you need to pause or no longer need it.

The three things that go wrong

The query is right and the scope is wrong. A report pointed at the wrong board looks plausible for weeks. Preview catches this; nothing else does.

The chart type fights the question. A pie chart with eleven slices, or a bar chart where the answer was a list of four tickets somebody needed to action. Re-read the rule in step 2.

Nobody knows what it is for. A chart appears in a channel with no framing and gets scrolled past. Use the opening message. One sentence saying what the report is and what to do when it looks wrong is the difference between a report that changes behaviour and wallpaper.

Personal reports

The same custom report can be built for yourself. Configure the shape and the data source, and Troopr shows it in the Troopr App Home in Slack, always on. Click the app in your sidebar and it is there, no schedule required. Your three most recent personal routines are pinned.

Useful for the query you check constantly and nobody else needs.

Other Troopr reports you can use

Setup from 20+ built in report templates

Troopr Slack bot for Jira also comes with 20+ built in templates that you can take up to automate project reporting to Slack channels. Some of the templates include burndown chart, Sprint velocity chart, workload distribution chart and more.

20+ bulit in templates

Share Jira JQL reports in Slack

Troopr also lets you set up custom reports by specifying the Jira JQL in the report configuration.

Share Jira JQL reports in Slack

Setup automated team nudges

Troopr lets you set up team nudges (reminders) about things that need your team’s attention like overdue issues, stale issues, issues missing estimates, potential blockers and more for your team’s workflow.

Automated team nudges using Troopr

From reporting to acting

A custom report reads your Jira and changes nothing in it. The same instruction shape does two more things:

A nudge DMs one person about their own work. The natural follow-on from a list report: instead of you reading the list of stale tickets and chasing each owner, the routine asks them.

A proposal offers a specific change to a specific ticket, routed to whoever owns the work. They tap Confirm and the write runs in Jira as them. Nothing is written until they do.

Any routine, custom ones included, can run as a watch instead of a schedule: it checks on its cadence and posts only when its condition is true. For a custom JQL report this is often the better setting, because a query written to catch an exception should be silent when there is no exception.

Snowflake's engineering team eliminated about 86% of its weekly status-meeting time working this way.

See everything routines can do

What it costs

A routine counts as one unit whatever its type or complexity. A custom JQL report is not billed differently from a template. What a routine produces is never counted.

Free includes 3 routines and 3 synced channels for 10 seats. Standard is $6 per seat/month billed annually, $8 monthly, adding 2 routines and 2 synced channels per seat, pooled across the workspace.

Get started

Troopr Slack integration for Jira is available for install from Atlassian Marketplace or Slack App directory.  Integrating Slack with Jira is a quick process and does not require more than a minute to get it done.

Once your Jira domain is connected to Slack workspace, you can start building a custom Jira report or pick from built-in templates in a few clicks configured and delivered to your team’s Slack channels.

Common questions

Can I use a saved Jira filter instead of pasting JQL?

Yes, and it is usually better. The filter stays maintained in Jira and the routine follows it.

Does Troopr validate my JQL?

Yes, against your Jira at save time. A broken query fails at setup.

Can a custom report span multiple projects?

Yes. That is one of the main reasons to go custom.

Can I chart a custom field?

Yes. X can be any field, Y can be issue count or the sum or average of any numeric field.

Who can see a custom report?

Whoever is in the channel it posts to. Editing is limited to the creator and workspace administrators.

Add Troopr
for Free

Easy Onboarding

14 days Free Trial

No credit card needed

Try Troopr