How to find all Gmail unlabelled messages: finally an official operator
I am happy to discover that a native way to filter unlabelled messages in Gmail was recently made available by the Gmail team, though it does not seem to be widely known yet.
The operators has:userlabels and has:nouserlabels achieve what previously required the concatenation of negative label conditions for all labels in your account (such as “-label:Stuff -label:OtherStuff”). The greasemonkey extension gmailUnlabelled certainly existed to automate the process. But it had to be potentially updated with each alteration of the Gmail UI and did not work well with non US locales.
As per the official documentation:
has:userlabels, has:nouserlabels: Finds all messages without any of your own labels (excludes automatic labels like inbox, spam, and trash). Since Gmail applies labels to individual messages, you might see results that appear to have labels; in this case, another message in the same conversation thread has had a label applied to it.
The simplest search expression to obtain all unlabelled emails in gmail (and exclude system labels as well) is henceforth the following:
has:nouserlabels -label:inbox -label:sent -label:chats -label:draft -label:spam -label:trash
For regular use, this dynamic search result can be saved using the “Quick links” feature available in the Gmail Labs.