Gmail Keyboard Shortcuts & Search Operators
All 85 Gmail keyboard shortcuts for Windows and Mac, every search operator, and a builder that writes the search for you.
Last verified: 2026-10-18 — against Google's Gmail Help pages Keyboard shortcuts for Gmail and Search operators you can use with Gmail
Gmail keyboard shortcuts
Application · needs Keyboard shortcuts on
Actions · needs Keyboard shortcuts on
| Action | Windows / ChromeOS | Mac |
|---|---|---|
| Move focus to toolbar# | , | , |
| Select conversation# | x | x |
| Toggle star/rotate among superstars# | s | s |
| Archive# | e | e |
| Mute conversation# | m | m |
| Report as spam# | ! | ! |
| Delete# | # | # |
| Reply# | r | r |
| Reply in a new window# | Shift + r | Shift + r |
| Reply all# | a | a |
| Reply all in a new window# | Shift + a | Shift + a |
| Forward# | f | f |
| Forward in a new window# | Shift + f | Shift + f |
| Update conversation# | Shift + n | Shift + n |
| Archive conversation and go previous/next# | ] or [ | ] or [ |
| Undo last action# | z | z |
| Mark as read# | Shift + i | Shift + i |
| Mark as unread# | Shift + u | Shift + u |
| Mark unread from the selected message# | _ | _ |
| Mark as important# | + or = | + or = |
| Mark as not important# | - | - |
| Snooze# | b | b |
| Expand entire conversation# | ; | ; |
| Collapse entire conversation# | : | : |
| Add conversation to Tasks# | Shift + t | Shift + t |
Navigation · needs Keyboard shortcuts on
Jumping · needs Keyboard shortcuts on
| Action | Windows / ChromeOS | Mac |
|---|---|---|
| Go to Inbox# | g + i | g + i |
| Go to Starred conversations# | g + s | g + s |
| Go to Snoozed conversations# | g + b | g + b |
| Go to Sent messages# | g + t | g + t |
| Go to Drafts# | g + d | g + d |
| Go to All mail# | g + a | g + a |
| Switch between the Calendar/Keep/Tasks sidebar and your inbox.# | Ctrl + Alt + , and Ctrl + Alt + . | ⌘ + Alt + , and ⌘ + Alt + . |
| Go to Tasks# | g + k | g + k |
| Go to label# | g + l | g + l |
Threadlist selection · needs Keyboard shortcuts on
Compose & chat
| Action | Windows / ChromeOS | Mac |
|---|---|---|
| Previous message in an open conversation# | p | p |
| Next message in an open conversation# | n | n |
| Focus main window# always on* | Shift + Esc | Shift + Esc |
| Focus latest chat or compose# always on* | Esc | Esc |
| Advance to the next chat or compose# always on* | Ctrl + . | Ctrl + . |
| Advance to previous chat or compose# always on* | Ctrl + , | Ctrl + , |
| Send# always on* | Ctrl + Enter | ⌘ + Enter |
| Add cc recipients# always on* | Ctrl + Shift + c | ⌘ + Shift + c |
| Add bcc recipients# always on* | Ctrl + Shift + b | ⌘ + Shift + b |
| Access custom from# always on* | Ctrl + Shift + f | ⌘ + Shift + f |
| Insert a link# always on* | Ctrl + k | ⌘ + k |
| Go to next misspelled word (Mac only)# always on* | Mac only | ⌘ + ; |
| Open spelling suggestions# always on* | Ctrl + m | ⌘ + m |
Formatting text
| Action | Windows / ChromeOS | Mac |
|---|---|---|
| Previous font# always on* | Ctrl + Shift + 5 | ⌘ + Shift + 5 |
| Next font# always on* | Ctrl + Shift + 6 | ⌘ + Shift + 6 |
| Decrease text size# always on* | Ctrl + Shift + - | ⌘ + Shift + - |
| Increase text size# always on* | Ctrl + Shift and + | ⌘ + Shift and + |
| Bold# always on* | Ctrl + b | ⌘ + b |
| Italics# always on* | Ctrl + i | ⌘ + i |
| Underline# always on* | Ctrl + u | ⌘ + u |
| Numbered list# always on* | Ctrl + Shift + 7 | ⌘ + Shift + 7 |
| Bulleted list# always on* | Ctrl + Shift + 8 | ⌘ + Shift + 8 |
| Quote# always on* | Ctrl + Shift + 9 | ⌘ + Shift + 9 |
| Indent less# always on* | Ctrl + [ | ⌘ + [ |
| Indent more# always on* | Ctrl + ] | ⌘ + ] |
| Align left# always on* | Ctrl + Shift + l | ⌘ + Shift + l |
| Align center# always on* | Ctrl + Shift + e | ⌘ + Shift + e |
| Align right# always on* | Ctrl + Shift + r | ⌘ + Shift + r |
| Remove formatting# always on* | Ctrl + \ | ⌘ + \ |
* Google's page puts no “needs shortcuts on” note on the Compose & chat and Formatting text tables. These are editor shortcuts and work with the setting off; the single-key p and n in that table are treated as needing it. “g + i” means press g, release, then press i.
Gmail search operators
| Operator | What it finds | Examples |
|---|---|---|
from:# | Find emails sent from a specific person. | from:mefrom:amy@example.com |
to:# | Find emails sent to a specific person. | to:meto:john@example.com |
cc: / bcc:# | Find emails that include specific people in the "Cc" or "Bcc" fields. | cc:john@example.combcc:david@example.com |
subject:# | Find emails by a word or phrase in the subject line. Tip: Wrap several words in quotes for the exact phrase (subject:"anniversary party") or in parentheses to require each word (subject:(dinner movie)). | subject:dinnersubject:anniversary party |
after: / before: / older: / newer:# | Search for emails received during a certain time period. Tip: Write dates as YYYY/MM/DD to avoid ambiguity. Google’s Gmail API guide says dates are read as midnight Pacific Time; for an exact cutoff in another time zone, give a Unix timestamp in seconds instead (after:1767225600). | after:2004/04/16after:04/16/2004before:2004/04/18before:04/18/2004 |
older_than: / newer_than:# | Search for emails older or newer than a time period. Use d (day), m (month), or y (year). Tip: Only d, m and y are valid units; there is no h or w. newer_than:7d is the last seven days. | older_than:1ynewer_than:2d |
OR or { }# | Find emails that match one or more of your search criteria. Tip: OR must be in capitals; lower-case "or" is just a word. | from:amy OR from:david{from:amy from:david} |
AND# | Find emails that match all of your search criteria. | from:amy AND to:david |
-# | Exclude emails from your search criteria. Tip: Works in front of any operator: -label:newsletters, -from:me, -has:attachment. | dinner -movie |
AROUND# | Find emails with words near each other. Use the number to say how many words apart the words can be. Tip: In quotes, the words must appear in the order typed. AROUND must be in capitals. | holiday AROUND 10 vacation"secret AROUND 25 birthday" |
label:# | Find emails under one of your labels. Tip: Label names with spaces or slashes are searched with hyphens: a label "Clients/Acme Co" is label:clients-acme-co. | label:friendslabel:important |
category:# | If you use inbox categories, find emails under one of the categories. | category:primarycategory:socialcategory:promotionscategory:updatescategory:forumscategory:reservationscategory:purchases |
has:# | Find emails that include: Attachments, Inline images, YouTube videos, Drive files, Google Docs, Google Sheets, Google Slides | has:attachmenthas:youtubehas:drivehas:documenthas:spreadsheethas:presentation |
list:# | Find emails from a mailing list. Tip: Use the list address (as on a Google Group or mailing list), not the sender, to catch every message from that list. | list:info@example.com |
filename:# | Find emails that have attachments with a certain name or file type. Tip: filename:pdf matches by extension; filename:invoice matches part of the name. | filename:pdffilename:homework.txt |
" "# | Search for emails with an exact word or phrase. | "dinner and movie tonight" |
( )# | Group multiple search terms together. | subject:(dinner movie) |
in:anywhere# | Find emails across Gmail. This includes emails in Spam and Trash. Tip: Plain searches skip Spam and Trash; add in:anywhere when a message seems to be missing. | in:anywhere movie |
in:archive# | Search for archived messages. | in:archive payment reminder |
in:snoozed# | Find emails that you snoozed. | in:snoozed birthday reminder |
is:muted# | Find emails that you muted. | is:muted subject:team celebration |
is:# | Search for emails by their status: Important, Starred, Unread, Read | is:importantis:starredis:unreadis:read |
has:yellow-star, has:orange-star, has:red-star, has:purple-star, has:blue-star, has:green-star, has:red-bang, has:orange-guillemet, has:yellow-bang, has:green-check, has:blue-info, has:purple-question# | If you set up different star options, you can search for emails under a star option. | has:yellow-star OR has:purple-question |
deliveredto:# | Find emails delivered to a specific email address. Tip: Finds mail sent to an alias or plus address, e.g. deliveredto:you+shop@gmail.com, even when the visible To: is a list. | deliveredto:username@example.com |
size: / larger: / smaller:# | Find emails by their size. Tip: A bare number is in bytes; use M for megabytes (larger:10M). Handy for freeing storage: has:attachment larger:10M. | size:1000000larger:10M |
+# | Find emails that match a word exactly. | +unicorn |
rfc822msgid:# | Find emails with a specific message-id header. | rfc822msgid:200503292@example.com |
has:userlabels / has:nouserlabels# | Find emails that have or don't have a label. Labels are only added to a message, and not an entire conversation. | has:userlabelshas:nouserlabels |
label:encryptedmail# | Find emails sent with Client-side encryption. | label:encryptedmail |
header:# | Search for emails with a specific custom header or header value. | header:X-Google-Calendar-Notification:rsvpWithNote |
This sheet runs in your browser. Searches you build here are not sent anywhere; the Gmail link only opens Gmail. Browse all free tools.
Found a problem, or something that could be better? We read every message and we fix things quickly.
Gmail shortcuts save the most time once you know two things most lists leave out: the single-key shortcuts (e to archive, r to reply, g then i to go to the inbox) do nothing until you turn on Keyboard shortcuts in Settings, and the Ctrl or ⌘ shortcuts in the compose window work either way. This cheat sheet lists every shortcut on Google's Gmail Help page, with the Windows and Mac keys side by side and a note on which ones need the setting.
The second half covers Gmail search operators: from:, has:attachment, larger:, older_than:, label:, category:, AROUND and the rest, with Google's own examples and the practical details the help page leaves out, such as which units are valid and why a search misses mail in Spam. The builder turns a form into a query you can copy or open in Gmail. It is a reference built from Google's documentation on 2026-10-18; Gmail sometimes tests new shortcuts before the help page lists them, and press ? inside Gmail to see the list for your account.
How to use
- Turn on single-key shortcuts once: Gmail › Settings › See all settings › General › Keyboard shortcuts on › Save Changes.
- Type an action (archive, mute, bold) into the filter to find its shortcut, or use the buttons to see only the shortcuts that work with the setting off.
- For searching, fill in the builder (sender, attachment, size, dates, label) or start from one of the presets.
- Copy the query into the Gmail search bar, or use “Open this search in Gmail”. From the results you can create a filter with the same criteria.
- Use the # link next to any row to share it, or Print / Save as PDF for a desk copy.
Frequently asked questions
Why are my Gmail keyboard shortcuts not working?
Most of them are off by default. Open Gmail on a computer, click the gear icon, choose See all settings, and on the General tab set Keyboard shortcuts to “Keyboard shortcuts on”, then click Save Changes at the bottom. Google notes that shortcuts are not supported on every language or keyboard layout, and they do not fire while the cursor is in a text box (press Esc to leave the compose window first).
How do I see all Gmail shortcuts inside Gmail?
Press ? (Shift + /) while Gmail is open and not typing in a text field. A dialog lists every shortcut, shows which ones need the setting turned on, and has a link to enable them.
Can I change or create my own Gmail shortcuts?
Yes. In See all settings › Advanced, enable “Custom keyboard shortcuts” and save. A new Keyboard Shortcuts tab appears in Settings where you can assign a key to each action. One key can map to only one action.
How do I search Gmail for emails with large attachments?
Search has:attachment larger:10M. A bare number in larger: or size: is in bytes, and M means megabytes. Add older_than:1y to find old ones worth deleting; sort out what to keep, then delete and empty the Trash to get the storage back.
How do I search Gmail between two dates?
Use after: and before:, for example after:2026/01/01 before:2026/02/01. Google's Gmail Help shows dates as YYYY/MM/DD (and also MM/DD/YYYY). Google's Gmail API guide says the dates are read as midnight Pacific Time, so for an exact cutoff in another time zone you can give a Unix timestamp in seconds instead. For relative ranges use newer_than:7d or older_than:6m (only d, m and y are valid).
Does Gmail search include Spam and Trash?
No. A normal search skips Spam and Trash. Add in:anywhere to search every folder, including those two, which is the first thing to try when a message you know arrived does not show up.
Ten Gmail shortcuts worth learning first
If you learn only a few, learn the ones you would otherwise click most often. All of these need Keyboard shortcuts turned on.
• c compose, r reply, a reply all, f forward.
• e archive, # delete, m mute a noisy thread, z undo the last action.
• j and k move to the older and newer conversation, o or Enter opens it, u goes back to the list.
• x selects a conversation so e, # or l (label) act on several at once; * then a selects every conversation on the page.
• / jumps to the search box, and g then i returns to the inbox from anywhere.
In the compose window, ⌘/Ctrl + Enter sends, ⌘/Ctrl + k inserts a link, and ⌘/Ctrl + Shift + c or b adds Cc or Bcc. These work with the setting off.
Gmail search recipes
• Free storage: has:attachment larger:10M older_than:1y
• Everything a client sent with files: from:client.com has:attachment
• Your own messages to one client this month: from:me to:client@example.com newer_than:30d
• Newsletters you never open: category:promotions is:unread older_than:3m
• Messages sent to a plus address: deliveredto:you+shop@gmail.com
• Unlabeled mail that needs sorting: has:nouserlabels -category:promotions -category:social newer_than:14d
• Exact phrase in a forwarded thread: "purchase order" in:anywhere
Any search can become a filter: run it, open the search options (the sliders icon at the right of the search bar), and choose Create filter to label, archive, forward or delete matching mail automatically.
Operator details the help page does not spell out
OR and AND must be in capitals, and so must AROUND. Curly braces are a shorter OR: {from:amy from:david} is the same as from:amy OR from:david. Parentheses group words for one operator: subject:(dinner movie) requires both words in the subject, while subject:"dinner movie" requires the phrase.
Label names are searched with hyphens in place of spaces and slashes, so a nested label Clients/Acme Co is label:clients-acme-co. The easiest way to get it right is to click the label in the sidebar and read the search box.
Negative searches work on messages, but results are conversations. Google's own example: -is:starred can still return a conversation that contains starred messages, because one unstarred message in it matched.
Related free tools
- Google Search Operators — Every Google search operator marked Works, Unreliable or Retired, with the evidence, SEO recipes and a query builder.
- Email Subject Line Tester — Score a subject line for length, spam trigger words, capitals and punctuation, and preview how it truncates on iPhone and in Gmail.
- Spam Word Checker — Paste an email’s subject and body to find spam-trigger phrases, shouting, link and image problems, and a missing unsubscribe.
- Email Signature Generator — Build a professional HTML email signature that looks right in Gmail, Outlook and Apple Mail, then copy it in one click.
- UTM Link Builder — Build clean, consistent UTM tracking links so you know exactly which campaigns bring you customers.