Gmail’s natural-language search has quietly improved every year since Google added AI-assisted query understanding in 2024 — you can now type “unread emails from last week” and get a sensible result. But the operator syntax still beats it for one thing: a deterministic, complete list you can act on in bulk. The operator that does it is is:unread, and it has not changed in over a decade. Here is how to search every unread email in Gmail, how to scope that search to a sender, a folder, a label or a date, how to select all the matches at once, and the mobile limit that catches almost everyone.
TL;DR — the one operator you need
Type is:unread in the Gmail search bar and press Enter. That returns every unread conversation in the account — inbox, labels, and archived mail — in one list. Add operators to narrow it: is:unread in:inbox for the inbox only, is:unread from:name for one sender.
is:unread is one of Gmail’s read-state operators, documented in Google’s official operator reference alongside is:read. It is case-insensitive, it ignores word order, and it combines with every other operator. There is nothing to install and nothing to enable — it works the moment you type it.
What it does not do on its own is select those results. Searching and selecting are two separate steps in Gmail, and the gap between them is where most “I can’t deal with my unread mail” frustration lives. The select-all section below closes that gap.
How the is:unread operator works
The is:unread operator matches every message whose unread flag is set, anywhere in the account except Trash and Spam. Its exact opposite, is:read, matches everything else. Both are case-insensitive and stack with other operators using AND logic by default.
I keep a mental model that has saved me a lot of confusion: Gmail does not have an “unread folder”. Unread is a flag on each message, not a location. is:unread is simply a query that asks “show me every message where that flag is on”, regardless of which label, tab or folder the message lives in.
That has three practical consequences worth knowing before you start.
It reaches archived mail. A plain is:unread search returns unread messages you archived months ago without reading. If you only want what is still in the inbox, you have to say so — is:unread in:inbox.
It excludes Trash and Spam. Like all default Gmail searches, is:unread skips those two folders. If you suspect an unread message slid into Spam, search is:unread in:spam, or use is:unread in:anywhere to cover inbox, archive, Trash and Spam in one query.
It counts conversations, not messages. Gmail groups replies into threads. A thread that shows up bold in your is:unread result might contain a single unread reply buried under five read ones. The result list is accurate — it just answers at the thread level, which occasionally surprises people who expected a raw message count.
The companion operator is:read is genuinely useful in cleanup work: is:read older_than:1y surfaces old mail you have already seen and can safely archive. Between is:unread and is:read, every message in the account falls into exactly one bucket.
Scope the search: sender, folder, label, date
Because operators stack with AND logic, you narrow an unread search by adding more operators to is:unread. Add from: for a sender, in: for a folder, label: for a label, older_than: or after: for a date window.
The plain is:unread list is often too big to be useful — a few thousand entries spanning years. Scoping it down to the slice you actually care about is the difference between a wall of mail and a short, actionable list. Here are the combinations I reach for most.
Unread from one sender:
is:unread from:notifications@github.com
Every unread GitHub notification, nothing else. Swap in any address, or a bare name (from:linda) to match the display name too.
Unread in the inbox only:
is:unread in:inbox
Drops archived unread mail from the result. Add -category:promotions -category:social -category:updates to also strip the tabbed categories and leave only unread Primary mail.
Unread under a specific label:
is:unread label:newsletters
Scopes the search to one label. If you have not set labels up yet, our guide to creating labels in Gmail walks through it.
Unread older than a date:
is:unread older_than:3m
Unread mail more than three months old — almost always safe to bulk-archive or delete. The older_than: operator takes d, m or y suffixes; before:2026/01/01 works for an exact cutoff.
Unread with a large attachment:
is:unread has:attachment larger:5M
Useful when you are triaging and want to handle the heavy report dumps separately from quick reads.
Combining sources with OR:
is:unread {from:substack.com from:medium.com from:beehiiv.com}
Curly braces apply OR logic, so this returns unread mail from any of the three newsletter platforms in one list. For the full operator catalogue — every flag that still works and the few Google retired — see our Gmail search operators reference.
If your unread search keeps returning hundreds of newsletters, searching them is treating the symptom — the fix is unsubscribing so they stop arriving. Try Leave Me Alone free
Select every unread email at once
After running an is:unread search, click the top-left checkbox to select the visible page, then click the grey banner “Select all conversations that match this search” that appears above the list. The selection count jumps to the full total, and any bulk action now applies to every unread message.
This is the step that turns a search into something you can actually act on, and it hinges on one easy-to-miss UI element.
- Run your
is:unreadsearch (or any scoped variant from the section above). - At the top-left of the message list, click the empty checkbox. This selects every conversation on the current page only — 50 or 100, depending on Settings → General → Maximum page size.
- Look at the line directly above the message list. Gmail adds grey text: “All 50 conversations on this page are selected. Select all conversations that match this search.” Click the blue link.
- The count jumps from “50 selected” to the full match total.
- Pick a toolbar action — Mark as read (open-envelope icon), Archive, or Delete — and confirm the bulk-action popup if one appears.
Skip step 3 and your action stops at the first 50 messages. That single missed click is the reason so many people conclude Gmail has no real bulk handling for unread mail. It does — the banner is just unstyled and easy to scroll past.
For marking everything read specifically, our dedicated walkthrough on marking all Gmail emails as read at once covers the confirmation-popup behaviour and the per-tab shortcut in more depth.
Searching unread mail on the mobile app
The Gmail iOS and Android apps accept is:unread in the search bar exactly like the web version. What they lack is the “select all conversations matching this search” banner — you can search every unread message but can only act on the ones currently on screen.
I tested this on both an iPhone and a Pixel before writing it, because the mobile behaviour is genuinely inconsistent with the web and the docs gloss over it.
What works on mobile: open the app, tap the search bar, type is:unread (or a scoped query like is:unread from:slack), tap Search. The result list is identical to the web — every unread conversation matching the query.
What does not work: there is no banner, no “select all matching” link. Long-pressing one message enters selection mode, and you then tap each additional message individually. There is no “select everything on screen” gesture either. So mobile search is fine for finding unread mail, and fine for acting on a handful of it, but useless for account-wide bulk actions.
The workaround: open mail.google.com in Safari or Chrome on the phone and switch on “Request desktop site”. The full web UI loads, banner included. It is fiddly on a small screen, but the is:unread → select-all → bulk-action flow works exactly as it does on a laptop.
One genuinely useful native mobile action: open any tab category from the side menu (Promotions, Social, Updates), tap the three-dot menu, and choose Mark all as read. That clears a whole category in one tap without needing search at all — handy when the unread you want gone is all promotional anyway.
Keyboard shortcuts for unread selection
With keyboard shortcuts enabled, * u selects every unread conversation on the page in one chord, and Shift+I marks the selection as read. Shortcuts must first be turned on in Settings → General → Keyboard shortcuts.
If you do this often, the mouse is the slow part. Gmail’s keyboard shortcuts cover unread selection directly.
First enable them: gear icon → See all settings → General tab → Keyboard shortcuts → tick Keyboard shortcuts on → Save Changes. They do nothing until this is on.
| Shortcut | Action |
|---|---|
* u | Select all unread conversations on the page |
* a | Select all conversations on the page |
* r | Select all read conversations on the page |
* n | Deselect everything |
Shift+I | Mark selected conversation(s) as read |
Shift+U | Mark selected conversation(s) as unread |
The fast path after an is:unread search: press * u to grab every unread conversation on the page, click the “Select all conversations that match this search” banner with the mouse — there is still no keyboard shortcut for that banner click — then Shift+I to mark them read. For the complete chord map, see our Gmail keyboard shortcuts list.
Limits and gotchas
The is:unread operator is reliable, but four things trip people up: it skips Trash and Spam, it counts threads not messages, mobile cannot select all matches, and the search bar finds mail without selecting it.
Knowing these in advance saves the “why didn’t that work” detour.
Trash and Spam are invisible to it. A plain is:unread search will never show an unread message that landed in Spam. If a message you expected is missing, search is:unread in:anywhere before assuming it was deleted.
Thread grouping hides the count. The result list shows unread conversations. A thread can appear once in the list while containing a single unread reply. The list is correct; it is just answering at the thread level.
Mobile cannot bulk-select matches. Covered above — the apps search fine but offer no “select all matching” action. Account-wide cleanup needs the desktop site.
Searching is not selecting. is:unread produces a list. Until you click the checkbox and then the banner, no action touches anything. This two-step design is deliberate — Gmail does not want a stray keystroke to archive 40,000 messages — but it does mean the search alone changes nothing.
The natural-language fallback is non-deterministic. Typing “my unread emails” instead of is:unread usually works thanks to Gmail’s AI query parsing, but the result is interpreted rather than literal. For anything you intend to bulk-act on, use the operator — it returns exactly the unread set, every time, with no interpretation in between.
Three habits that keep unread search useful
- Scope before you select. A raw
is:unreadlist of 4,000 entries is intimidating and risky to bulk-act on. Addolder_than:3morin:inboxfirst — a 200-entry list is one you can actually reason about. - Use
is:unread from:as a triage lens. Searching unread mail one sender at a time tells you fast which senders generate noise you never open. Those are unsubscribe candidates, not filter candidates. - Save the search you repeat. If you run the same
is:unreadquery weekly, turn it into a filter (search bar → sliders icon → fill the fields → Create filter). The filter can auto-apply actions, so the cleanup runs itself — our guide to creating Gmail filters shows the full setup.

Alexis Dollé, email expert for 10+ years. Founder of Email Tools. I test every email client and utility myself, then write about them the way I’d explain them to a friend — no marketing fluff, no sponsored rankings, every claim sourced.
LinkedInSources & references
- Google Support — “Search operators you can use with Gmail” — official reference for the
is:unreadandis:readread-state operators, thein:andcategory:operators, and operator combination rules. Accessed 2026-05-20. support.google.com/mail/answer/7190 - Google Support — “Keyboard shortcuts for Gmail” — full keyboard map including the asterisk selection family (
* u,* a,* r,* n) and Shift+I / Shift+U. Accessed 2026-05-20. support.google.com/mail/answer/6594 - Google Support — “Refine Gmail search with operators” — guidance on combining operators and the behaviour of negative/excluded criteria within conversations. Accessed 2026-05-20. support.google.com/mail/answer/7190
Frequently asked questions
What is the search term for unread emails in Gmail?
Type is:unread in the Gmail search bar and press Enter. This is Gmail’s official read-state operator — it returns every unread conversation across the account: inbox, all labels, and archived mail. Trash and Spam are excluded by default. To include them, add in:anywhere to the query.
How do I find only unread emails in my Gmail inbox?
Use is:unread in:inbox. The plain is:unread operator also matches unread archived mail and unread messages under custom labels; adding in:inbox restricts the result to messages still sitting in the inbox view. To exclude the tabbed categories too, append -category:promotions -category:social -category:updates.
Is there a gmail is:unread operator and how does it differ from is:read?
Yes. is:unread matches messages whose unread flag is set; is:read matches messages whose flag is cleared. They are exact opposites and cover the whole account between them. Both are case-insensitive and stack with any other operator using AND logic, so is:unread from:boss returns unread mail from one sender only.
Why does my is:unread search miss emails I know are unread?
Two usual causes. First, the message is in Trash or Spam — is:unread skips both unless you add in:anywhere. Second, you are reading a conversation count, not a message count: Gmail groups threads, so a thread showing as unread may contain one unread reply among several read messages. Open the thread to confirm.
How do I select every unread email after searching, not just the visible page?
Run is:unread, click the top-left checkbox to select the visible page (50 or 100 messages), then click the grey banner that appears above the list: “Select all conversations that match this search”. The count jumps to the full total. Only then will a bulk action — archive, mark as read, delete — apply to every unread message.
Can I search unread emails in the Gmail mobile app?
Yes — the search bar in the Gmail iOS and Android apps accepts is:unread exactly like the web. What the apps lack is the “select all conversations matching this search” banner, so you can search every unread message but only act on the ones rendered on screen. For account-wide bulk actions, use mail.google.com in a mobile browser set to desktop mode.
Related: Gmail search operators — the complete list — every flag including is:unread, older_than and category. Gmail keyboard shortcuts list — the full chord map including the asterisk selection family. Mark all Gmail emails as read at once — what to do once your unread search is selected. How to create a filter in Gmail — turn a repeated unread search into an automated rule. How to create labels in Gmail — scope future unread searches by label.