Our instance has over 2000 of each. What do other admin do to try and clean up ones that aren't used, etc? Or are there suggested ways to keep it from getting this bad? Our users saw they could create both on their own and seem to have gotten carried away considering the # of users we have.
Another issue has anyone found away to always have an admin group added/included as an editor?
Hi @Julie Beltz , welcome to the Community! I'm sure you'll get several great suggestions to your question, but one thing you can do is communicate to ALL your users to please review their filters and delete the ones they don't use BY 'X' DATE. Also add an announcement in the announcement banner that all filters not used in the last <year/whatever timeframe> will be deleted unless they contact you with the filter name(s) to keep.
I also asked Rovo, it was too long an answer to fit here but it had some good suggestions and links to documentation that might help. Here are some excerpts:
Prompt: Rovo, how can I identify JSM filters that haven’t been used in the last year?
Rovo's (partial) Answer:
You can’t see “last used” for filters directly in the UI, but you can get very close with a combination of REST API + a bit of scripting. Here are three options, from “quick and dirty” to “proper report.”
Jira Cloud exposes filters via REST, but it does not store “last viewed” as a public field. The practical workaround is:
Pull all filters.
Cross‑check which are referenced by:
Boards
Dashboards
Subscriptions / shared items
Treat filters that are:
Not used by any board/dash,
Not favorited,
And perhaps owned by inactive users
as candidates for cleanup.
Use the filter search API (as in this KB pattern:
https://support.atlassian.com/jira/kb/find-owners-of-deleted-filters-in-jira-cloud/
GET /rest/api/3/filter/search?maxResults=100&startAt=0&expand=owner,subscriptions
You’ll need to page through (bump startAt until you pass total).
Data points to keep:
id
name
owner.displayName
favourite / favouritedCount
subscriptions (if present)
viewUrl / searchUrl
Export all of that to CSV (the Atlassian example script in the KB above is a good template—just change the filter condition from "Former user" to collecting all filters).
Since we don’t have “last viewed”:
A. Find obviously safe candidates
Look for filters that meet all of these:
Not the filter for any board
Not used on any dashboard gadget
favouritedCount = 0
No email subscriptions
Owner is inactive or “Former user” (optional, but a strong cleanup signal)
You’ll need two more REST checks:
For classic gadgets, dashboards don’t always expose the filter id cleanly via REST; a common admin approach is:
Export dashboards via REST:GET /rest/api/3/dashboard?maxResults=50&startAt=0
For each dashboard, pull gadgets:GET /rest/api/3/dashboard/{dashboardId}/gadget
Filter gadgets that contain filterId or jql configuration pointing at your filters.
This is more work, but you can also use a text search across an exported dashboard JSON bundle.
Given your environment and that you’re in Jira Cloud:
Export all filters via REST (as per the KB script) into CSV.
Add columns in Excel:
UsedByBoard (Y/N)
UsedByDashboard (Y/N)
HasSubscriptions (Y/N)
FavouritedCount
OwnerActive (Y/N – you can cross‑check against your current user list).
Mark as “Safe candidate for deletion” when:
UsedByBoard = N
UsedByDashboard = N
HasSubscriptions = N
FavouritedCount = 0
Optionally:
Email owners of borderline filters (e.g., old but still favorited) and give them a date to respond before deletion.
The example script in Atlassian’s article is here and can be adapted:
Find owners of deleted filters in Jira cloud | Jira and Jira Service Management | Atlassian Support
Jira Cloud already groups filters owned by deactivated/deleted users:
Go to ⚙️ Settings → System → Shared items → Filters.
In the Owner column, look for:
“Former user” – this is what Jira shows when the owner account was deleted.
Owners you know have been deactivated in User management.
For any such filters, you can:
Change owner or
Delete filter
via the … menu.
For your JSM cleanup / “unused filters in last year” work, I’d:
Run the “Former user” script from
Find owners of deleted filters in Jira cloud | Jira and Jira Service Management | Atlassian Support
Build a second export of all filters + all users and join on accountId to mark:
OwnerStatus = Active / Inactive / Former user
Use that OwnerStatus to prioritize:
Filters owned by Former user / inactive are top candidates to:
Reassign to a service account, and/or
Delete if they’re also unused.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.