Google Chrome Keyboard Shortcuts
Chrome's shortcuts matter most for two very different groups of people: tab hoarders who keep dozens of tabs open and need to move between them without hunting visually, and developers who live in DevTools and need to open and navigate it without breaking their flow. The shortcut set is large but most of it falls into a few clear buckets — tab and window management, address bar and search shortcuts, and the developer tools layer that's effectively a separate application bolted onto the browser. Chrome shares the bulk of its keybindings across Windows and Linux (both use Ctrl as the primary modifier), while Mac swaps in Cmd for most but keeps a few Chrome-specific bindings that don't map cleanly to standard macOS conventions, particularly around tab-switching by number and history navigation. Power users who live primarily in tabs benefit most from investing in the numbered tab-jump shortcuts (Ctrl/Cmd+1 through 8) and tab-reopening (Ctrl/Cmd+Shift+T), since these directly address the single most common Chrome frustration — losing track of or accidentally closing a tab you needed — while developers get outsized value from DevTools shortcuts specifically because DevTools itself is dense enough with panels and sub-panels that mouse-only navigation between, say, the Elements and Network tabs adds up to real friction across a long debugging session. It's worth noting Chrome's shortcut set has stayed relatively stable across major version updates compared to some competing browsers, so shortcuts learned years ago mostly still work today without the periodic relearning some other frequently-redesigned software requires.
Tabs Windows
| Action | Windows | Mac | Description |
|---|---|---|---|
| Open new tab | Ctrl+T | Cmd+T | Opens a new blank tab and focuses the address bar immediately, ready for typing a URL or search query. |
| Close current tab | Ctrl+W | Cmd+W | Closes whichever tab currently has focus, and if that happens to be the only tab left open, Chrome closes the entire window right along with it rather than leaving an empty shell behind. |
| Reopen last closed tab | Ctrl+Shift+T | Cmd+Shift+T | Restores the most recently closed tab with its full history intact, and can be pressed repeatedly to walk back through several recently closed tabs in order. |
| Jump to tab by position (1-8) | Ctrl+1 through Ctrl+8 | Cmd+1 through Cmd+8 | Jumps directly to the tab at that numbered position from the left; Ctrl+9 (Cmd+9) is a special case that always jumps to the last tab regardless of total tab count, not literally the ninth tab. |
| Switch to next tab | Ctrl+Tab | Cmd+Option+Right (or Ctrl+Tab) | Cycles to the next tab in order, wrapping back to the first tab once you pass the last one. |
| Reopen last closed window | Ctrl+Shift+T (when no tabs are open) or Ctrl+Shift+N variant in some builds | Cmd+Shift+T | Restores an entire window's worth of tabs after accidentally closing it, sharing the same shortcut family as single-tab reopening since Chrome treats a closed window as a stack of closed tabs internally. |
| Switch to previous tab | Ctrl+Shift+Tab | Cmd+Option+Left (or Ctrl+Shift+Tab) | Cycles to the previous tab in order, the reverse companion to Ctrl+Tab, wrapping around to the last tab once you cycle backward past the first one. |
| Duplicate current tab | No default — right-click tab > Duplicate | Same | Creates an exact copy of the current tab, including its browsing history, in a new tab immediately to the right — useful for branching off to explore a link from the current page while keeping the original page open and unchanged. |
| Pin/unpin current tab | No default — right-click tab > Pin | Same | Shrinks the tab down to a small icon with no title text and locks it into place first in line, keeping something like email or a chat app permanently visible no matter how many other tabs pile up. |
Address Bar Search
| Action | Windows | Mac | Description |
|---|---|---|---|
| Focus the address bar | Ctrl+L or Alt+D or F6 | Cmd+L | Selects all text in the address bar and places the cursor there, ready to type a new URL or search without clicking — works even while focus is elsewhere on the page. |
| Find text on current page | Ctrl+F | Cmd+F | Opens an in-page search bar that highlights every match of your search term on the visible page and lets you cycle through them with Enter. |
| Open browsing history | Ctrl+H | Cmd+Y | Opens the full browsing history page, searchable by keyword, useful for relocating a page you visited but didn't bookmark. |
| Open downloads page | Ctrl+J | Cmd+Shift+J (sometimes Cmd+Option+L) | Opens the downloads management page showing every file Chrome has downloaded in this profile, with options to re-open, show in folder, or clear entries. |
| Open new browser window | Ctrl+N | Cmd+N | Opens a brand new Chrome window separate from any existing ones, with its own tab bar, useful for visually separating unrelated tasks into distinct windows rather than adding more tabs to an already-busy single window. |
| Open new Incognito window | Ctrl+Shift+N | Cmd+Shift+N | Opens a new Incognito window, which doesn't save browsing history, cookies, or site data after the window is closed and doesn't share zoom or other saved preferences with your normal browsing profile. |
| Bookmark current page | Ctrl+D | Cmd+D | Opens a small dialog for saving the current page as a bookmark, letting you choose which folder to file it under before confirming, faster than manually navigating Chrome's bookmark menu. |
Devtools
| Action | Windows | Mac | Description |
|---|---|---|---|
| Open DevTools | Ctrl+Shift+I or F12 | Cmd+Option+I | Opens the full Developer Tools panel, defaulting to whichever tab (Elements, Console, Network, etc.) was last active. |
| Open DevTools directly to Console | Ctrl+Shift+J | Cmd+Option+J | Opens DevTools straight to the Console tab regardless of which tab was open last time, ideal when all you want is to glance at logged output or run one quick line of script. |
| Inspect element picker | Ctrl+Shift+C | Cmd+Shift+C | Opens DevTools (if not already open) and activates the element-picker cursor, letting you click any element on the page to jump straight to its HTML in the Elements panel. |
| Toggle device emulation toolbar | Ctrl+Shift+M | Cmd+Shift+M | Switches DevTools into responsive/mobile emulation mode, simulating various device screen sizes and touch input for testing responsive layouts without needing a physical device. |
| Open Network panel | Ctrl+Shift+E (Network panel focused via DevTools) | Cmd+Option+E | Jumps directly to the Network panel within DevTools, showing every request the page has made along with timing, size, and status information, essential for diagnosing slow-loading resources or failed API calls. |
| Toggle Console drawer | Esc (DevTools open, any panel) | Esc | Toggles a docked Console drawer at the bottom of whichever DevTools panel is currently active, letting you check console output or run a quick script without leaving your current panel (like Elements or Network) entirely. |
| Search across all loaded source files | Ctrl+Shift+F (DevTools open) | Cmd+Option+F | Opens a search interface spanning every source file DevTools has loaded for the current page — HTML, CSS, and JavaScript — useful for finding where a specific string, class name, or function is defined across a large site's full set of loaded resources. |
Page Navigation
| Action | Windows | Mac | Description |
|---|---|---|---|
| Reload current page | Ctrl+R or F5 | Cmd+R | Reloads the current page, using the browser cache for any resources that haven't expired — the standard reload most people use. |
| Hard reload (bypass cache) | Ctrl+Shift+R | Cmd+Shift+R | Reloads the page while ignoring the cache entirely, re-downloading every resource fresh from the server — essential when testing a deployed change that the browser is otherwise still showing a stale cached version of. |
| Go back in history | Alt+Left or Backspace | Cmd+Left | Navigates to the previous page in the current tab's history, identical to clicking the browser's back button. |
| Zoom in on page | Ctrl++ | Cmd++ | Increases the page's zoom level, which Chrome remembers per-domain so revisiting the same site later keeps your preferred zoom level automatically. |
| Go forward in history | Alt+Right | Cmd+Right | Navigates forward to the page you were on before going back, the mirrored companion to Alt+Left, identical to clicking the browser's forward button. |
| Zoom out on page | Ctrl+- | Cmd+- | Decreases the page's zoom level, saved per-domain in the same way as zooming in, letting you shrink a page that's rendering uncomfortably large back to a comfortable reading size. |
| Reset zoom to 100% | Ctrl+0 | Cmd+0 | Resets the current page's zoom level back to the default 100%, faster than repeatedly pressing zoom-out to manually walk back down to the default from an unknown current level. |
Frequently Asked Questions
Why does Ctrl+9 jump to a different tab than I expect?
It's a deliberate exception to the counting pattern: Ctrl+1 through Ctrl+8 jump to tabs by literal position from the left, but Ctrl+9 skips straight to whichever tab is furthest right, no matter the total count. Open fifteen tabs and Ctrl+9 lands on the fifteenth, not a ninth tab that may not exist in a smaller window — it's Chrome's way of guaranteeing a one-keystroke path to the end of the tab strip regardless of how many tabs you have open.
What's the difference between a regular reload and a hard reload?
A regular reload (Ctrl+R / Cmd+R) re-requests the page but still uses cached versions of unchanged resources like images, scripts, and stylesheets where the cache headers allow it. A hard reload (Ctrl+Shift+R / Cmd+Shift+R) bypasses the cache entirely and re-downloads everything fresh, which matters when you've deployed a code change and the browser is still showing an old cached script or stylesheet despite a normal reload.
Why does Ctrl+Shift+T sometimes restore a whole window instead of one tab?
Chrome tracks closed tabs and closed windows in the same history stack internally. If the last thing you closed was an entire window (every tab in it at once), Ctrl+Shift+T restores that whole window rather than a single tab, since from Chrome's perspective a closed window is just a larger unit in the same undo-close history.
Can I open DevTools straight to a specific panel?
Yes — Ctrl+Shift+I (Cmd+Option+I) opens to whichever panel was last active, while Ctrl+Shift+J (Cmd+Option+J) specifically opens to the Console regardless of what was last open, and Ctrl+Shift+C (Cmd+Shift+C) opens to the Elements panel with the element picker already active. These are distinct shortcuts for distinct entry points rather than one generic 'open DevTools' command.
Why doesn't my zoom level stick when I revisit a site later?
Chrome saves zoom level per-domain by default, so it should persist automatically across visits to the same site in the same profile. If it's resetting, check whether you're browsing in Incognito (which doesn't share zoom settings with your normal profile) or whether a sync/profile issue is preventing settings from saving — Chrome's zoom settings live in chrome://settings/content/zoomLevels if you want to review or clear them directly.
Why do some Chrome shortcuts behave differently inside a Progressive Web App window versus a normal browser tab?
A site installed and launched as a standalone PWA window strips away much of Chrome's normal tab and address-bar UI by design, so shortcuts tied specifically to those elements (like Ctrl+L for the address bar, or the numbered tab-jump shortcuts) have nothing to act on and are effectively inert in that context, while page-level shortcuts like Ctrl+F for in-page search continue working normally since they operate on the page content itself rather than browser chrome.