How to search Jira by votes and voter

Published 2026-10-08 by Sidecar Tools. Every JQL query and error message below was run against a Jira Cloud site on 2026-10-08. Automation steps use Jira's current "work item" wording; older sites say "issue".

Short answer

Jira Cloud JQL has two vote fields. votes is a number: how many people voted for an issue. voter is an identity field: who voted. Unlike the watcher / watchers split, both directions actually work on a regular Jira Software or Core project — voter takes =, !=, IN and IS EMPTY; votes takes >, >=, = and ORDER BY. A function, votedIssues(), separately returns issues the current user has voted for.

Searching by vote count: the votes field

QueryResult on Jira Cloud
votes > 0Valid. Issues with at least one vote.
votes = 0Valid. Issues with no votes.
votes >= 1 AND votes <= 5Valid. JQL has no BETWEEN operator; chain two comparisons instead.
votes between 1 and 5Invalid: "'between' is a reserved JQL word. You must surround it in quotation marks to use it in a query."
votes is EMPTY / votes is not EMPTYBoth parse as valid.
votes > 0 ORDER BY votes DESCValid and sortable, highest vote count first.
votes = currentUser()Invalid: "A value provided by the function 'currentUser' is invalid for the field 'votes'. Votes must be a positive whole number."
voteCount > 0Invalid: "Field 'voteCount' does not exist or you do not have permission to view it." There is no field by this name; use votes.

Searching by who voted: the voter field

QueryResult on Jira Cloud
voter = currentUser()Valid. Issues the current user voted for.
voter != currentUser()Valid.
voter in (currentUser())Valid.
voter is EMPTYValid. Issues with no votes at all.
voter = "712020:xxxxxxxx-xxxx..."Valid. A literal Atlassian account ID works, not just currentUser().
voter in membersOf("group-name")Valid, if the group exists. Issues voted for by anyone in that group.
voter > 5Invalid: "The operator '>' is not supported by the 'voter' field." Comparison operators belong to votes, not voter.
hasVotes = trueInvalid: "'true' is a reserved JQL word. You must surround it in quotation marks to use it in a query." There is no boolean has-votes field either.

This is the opposite situation from watcher/watchers, where only one field of the pair supports identity and the other supports counting. Here both exist and both work — at least on a regular Jira Software or Core project. One Atlassian Community thread about Jira Product Discovery boards specifically says JQL there can filter on voter but not on vote count; this guide was tested on a standard project, not a JPD board, so if you're on JPD, verify votes there yourself before relying on it.

The votedIssues() function

QueryResult on Jira Cloud
issue in votedIssues()Valid. Same issues as voter = currentUser(), as a function.
issue in votedIssues() AND statusCategory != DoneValid. Functions combine with other clauses normally.
issue in votedIssues("someuser")Invalid: "Function 'votedIssues' expected '0' arguments but received '1'." It only ever means the current user; there is no way to pass another person's votes to it.
votedIssues() is EMPTYInvalid: "Expecting operator but got '('." It is a list-returning function, used after IN, not a field you can compare directly.

Two things that limit what you'll actually see

Common questions

How do I find my most-wanted backlog items?

votes > 0 ORDER BY votes DESC, optionally scoped with project = KEY AND statusCategory != Done.

Can I combine voter and votes in one query?

Yes, they are independent fields: voter != currentUser() AND votes >= 3 finds issues with several votes that are not one of yours.

Can an Automation rule react to a new vote?

No. Like watching, voting has no trigger in Jira Automation's trigger list, so there is no native way to notify someone the moment a vote is cast; only the stored votes count and voter list are queryable after the fact.

Want the rest? The Jira Cloud JQL Cookbook has 66 copy-paste queries for triage, sprints, releases, SLAs and reporting, each one validated on Jira Cloud. Get it on Gumroad, pay what you want from $12.