Spaces, threading, and integration reference for Google Chat.
| Group | Action | Mac | Windows |
|---|---|---|---|
| Navigate | Jump to a space or conversation | ⌘ + K | Ctrl + K |
| Navigate | Search all messages | ⌘ + F | Ctrl + F |
| Navigate | Next / previous conversation | ⌥ + ↓ / ↑ | Alt + ↓ / ↑ |
| Navigate | Next / previous unread | ⌥ + ⇧ + ↓ / ↑ | Alt + ⇧ + ↓ / ↑ |
| Navigate | Show all keyboard shortcuts | ⌘ + / | Ctrl + / |
| Messages | Send message | Enter | Enter |
| Messages | New line without sending | ⇧ + Enter | ⇧ + Enter |
| Messages | Edit your last message | ↑ in an empty box | ↑ in an empty box |
| Messages | Mention someone | @ | @ |
| Messages | Insert emoji | : then name | : then name |
| Messages | Run a slash command | / | / |
| Messages | Insert a Drive file | + then Drive | + then Drive |
| Format | Bold | ⌘ + B | Ctrl + B |
| Format | Italic | ⌘ + I | Ctrl + I |
| Format | Strikethrough | ⌘ + ⇧ + X | Ctrl + ⇧ + X |
| Format | Bulleted list | ⌘ + ⇧ + 8 | Ctrl + ⇧ + 8 |
| Format | Numbered list | ⌘ + ⇧ + 7 | Ctrl + ⇧ + 7 |
| Actions | Mark conversation read / unread | ⌥ + ⇧ + U | Alt + ⇧ + U |
| Actions | Open Chat in a new window | Hover chat → pop-out icon | Hover chat → pop-out icon |
| Conversation type | What it is | Notes |
|---|---|---|
| Direct message | One-to-one conversation. | Cannot be converted into a space later. Persists as long as both accounts exist. |
| Group DM | Up to 100 people, no name, no threading. | Fine for a quick huddle. Anything ongoing should be a space — group DMs can't be searched by name or joined later. |
| Space | Named, persistent, joinable. Supports threading, files, tasks, and apps. | The right container for anything lasting more than a day. |
| Announcement space | Only managers can post; everyone else can reply or react only. | Set at creation. Ideal for company-wide notices without the noise. |
| Discoverable space | Listed in the org directory so anyone can find and join. | Set via space settings → Access. Restricted spaces are invite-only and invisible. |
| External space | Includes people outside your Workspace domain. | Must be enabled at creation and shows a persistent external badge. Cannot be toggled off later. |
@namenotifies one person even if they've muted the space.@allnotifies everyone in the space — use it rarely, or people mute the space and you lose the channel entirely.- Per-space notification settings let each member choose all messages, mentions only, or nothing. Default is mentions only for large spaces.
- Mute a space from its dropdown to stop notifications while staying a member.
- Set your status to Do not disturb from the avatar menu — mentions still queue, they just don't interrupt.
from:name— messages from a specific person.in:space-name— scope to one space.has:attachmentorhas:link— narrow to messages with files or URLs.before:2026-01-01/after:— date bounds, same syntax as Gmail.- Search only covers spaces you are currently a member of. Leaving a space removes its history from your results.
| Type this | Get this |
|---|---|
*bold* | bold — asterisks, not double like Markdown |
_italic_ | italic |
~strikethrough~ | |
`inline code` | Monospace inline snippet |
```code block``` | Multi-line monospace block — no syntax highlighting |
* item | Bulleted list |
1. item | Numbered list |
> quote | Block quote |
/help— list every command available in the current conversation, including ones added by apps./status— set your custom status and duration./dnd— toggle Do not disturb./remind— set a personal reminder from within a conversation./meet— start a Google Meet and drop the link into the conversation./giphy— insert a GIF, if the admin has enabled it.- Apps you add to a space contribute their own commands — the list from
/helpis space-specific, not global.
- Add an app from a space's dropdown → Apps & integrations. Availability depends on admin policy.
- Incoming webhooks are the simplest automation: space dropdown → Apps & integrations → Manage webhooks gives a URL that accepts a JSON
POST. - Webhook payload is minimal —
{"text": "your message"}is a complete valid body. - Treat the webhook URL as a secret. Anyone holding it can post to the space as that app. Store it in a secret manager, never in a repo.
- Google Chat apps can also be built with Apps Script for anything interactive — cards, buttons, dialogs.
- Each space has history on or off. With history off, messages delete after 24 hours — useful for genuinely ephemeral chat, disastrous if people assume otherwise.
- Admins set the org default and can lock it so members cannot change it per space.
- Google Vault retention and legal hold override space-level history settings. A message can be discoverable in Vault after it has vanished from the UI.
- Tell people plainly which spaces have history off. The setting is visible but easy to miss.
- External chat is controlled in Admin console → Apps → Google Workspace → Google Chat → External chat settings.
- You can allow all domains, an allowlist of trusted domains, or block external chat entirely.
- Spaces containing external members show a persistent badge — check for it before pasting anything internal.
- A space created as external cannot be made internal later, and vice versa.
- File sharing to external members still obeys Drive sharing policy — the Drive permission, not Chat, decides who can open an attachment.
- Chat apps can be allowlisted individually — the default of "allow all" is worth revisiting.
- Space creation can be restricted to certain OUs if the space list is sprawling.
- Space managers can delete any message in their space; regular members only their own.
- Deleting a space is permanent for members but Vault-retained content survives per policy.
- Chat data is exportable through Vault, not through Takeout, for admin-led investigations.
Tips
⌘/Ctrl + K is the whole navigationJump to any person or space by typing a few letters. Once this is muscle memory the sidebar becomes almost irrelevant — it's the single highest-value shortcut in Chat.
Hover a message → ⋮ → Add to tasks. It lands in Google Tasks with a link back to the message, which beats copying it into a note and losing the context.
Every space has tabs above the message stream. Files collects every attachment ever shared there — far faster than scrolling back to find a document.
/meet beats schedulingFor an unplanned conversation, /meet in the space creates a call and posts the link in one step. No calendar invite needed.
Chat inside Gmail is cramped. Use mail.google.com/chat for a dedicated window, or install it as a Chrome app for a real taskbar icon.
Pin spaces in the sidebar for ordering, and pin a message inside a space so newcomers see the context without scrolling — useful for a space's purpose or standing links.
Gotchas
- Threading mode — in-line vs topic-organised, fixed at creation.
- Internal vs external — a space cannot cross that boundary later.
- Announcement vs normal — also set at creation.
- A group DM can never become a space. Start a space if there's any chance it becomes ongoing.
- Take thirty seconds over the creation dialog. Every one of these costs a migration to fix.
- Editing a message doesn't unsend it. The notification already went out with the original text, and an "edited" marker stays visible.
- Deleting your message removes it for everyone, but Vault may still hold it.
- Leaving a space removes its history from your search, permanently, unless you rejoin.
- Sharing a Drive file in Chat does not grant access to it — recipients see a request-access prompt unless you set Drive permissions separately. Chat prompts you, but the prompt is easy to dismiss.
- History-off spaces still deliver email notifications containing the message text, which outlive the 24-hour window.
Resources
⌘/Ctrl + /.
support.google.com
Incoming webhooks quickstart
Post to a space from any script — the simplest Chat automation there is.
developers.google.com
Google Chat API
Building interactive apps with cards, dialogs, and slash commands.
developers.google.com
Chat admin settings
History defaults, external chat policy, and app allowlisting.
support.google.com
Google Workspace Admin
Where Chat policy, Vault retention, and external sharing are actually configured.
build.ty1er.com