Step 1: Enable 2-Step Verification on your Google account
Budget: 2 minutes (or skip if already done). Gmail will not show the App Password option unless your account has 2-Step Verification active. Go to myaccount.google.com/security and look for the "2-Step Verification" row. If it shows "Off", click it and follow the on-screen steps. You can use SMS, the Google Authenticator app, or a hardware key - any method works.
If you are connecting Outlook, iCloud, or a custom IMAP mailbox instead of Gmail, skip Steps 1 and 2 and jump straight to Step 4.
Step 2: Generate a Gmail App Password
Budget: 1 minute. With 2FA enabled, go back to myaccount.google.com > Security and open "2-Step Verification". Scroll to the bottom of that page and click App passwords.
In the "Select app" dropdown choose Other (Custom name). Type CRM Solid and click Generate. Google displays a 16-character password in a yellow box. Copy that password now - you will not see it again after you close the dialog.
Why App Password instead of full OAuth? CRM Solid reads and sends your mail over standard IMAP and SMTP. An App Password is the correct credential for that protocol. Full OAuth is a browser-redirect flow that requires Google to review the application before it can request Gmail scopes - a process that takes weeks and is not necessary when standard IMAP access works. App Passwords are encrypted at rest in CRM Solid and can be revoked at any time from your Google account.
Step 3: Connect the Gmail mailbox in CRM Solid
Budget: 1 minute. In CRM Solid, go to Settings > Mailboxes > Add a mailbox and select Gmail. Enter your full Gmail address and paste the 16-character App Password into the password field.
The IMAP and SMTP fields pre-fill with the correct Gmail values:
IMAP host: imap.gmail.com
IMAP port: 993
IMAP security: SSL/TLS
SMTP host: smtp.gmail.com
SMTP port: 587
SMTP security: STARTTLSLeave those pre-filled values as they are unless you have a specific reason to change them. Click Connect mailbox. CRM Solid runs a live IMAP login check and a live SMTP send check before storing anything. If either fails, the form shows the exact error so you can fix it. When both pass, you see "Connection verified" and the mailbox saves.
Step 4: Connect Outlook, iCloud, or a custom IMAP mailbox
Budget: 2-5 minutes depending on provider. Select the matching provider card or choose Custom IMAP. The settings for common providers are:
Microsoft Outlook / Microsoft 365
IMAP host: outlook.office365.com
IMAP port: 993
IMAP security: SSL/TLS
SMTP host: smtp.office365.com
SMTP port: 587
SMTP security: STARTTLSEnter your Microsoft account email address and password. If your Microsoft 365 admin has disabled basic authentication for IMAP, you may need to ask them to enable it for your account, or use an app password if your organization requires MFA.
iCloud Mail
IMAP host: imap.mail.me.com
IMAP port: 993
IMAP security: SSL/TLS
SMTP host: smtp.mail.me.com
SMTP port: 587
SMTP security: STARTTLSiCloud requires an app-specific password, not your main Apple ID password. Generate one at appleid.apple.com > Sign-In and Security > App-Specific Passwords. Enter your iCloud email address (ending in @icloud.com or @me.com) and the app-specific password.
Custom domain / cPanel hosting
IMAP host: mail.yourdomain.com
IMAP port: 993
IMAP security: SSL/TLS
SMTP host: mail.yourdomain.com
SMTP port: 587
SMTP security: STARTTLSReplace mail.yourdomain.com with the actual IMAP/SMTP hostname your host provides. You can usually find the exact values in your hosting control panel under Email Accounts > Configure Mail Client. Use your full email address as the username and your email account password (not your hosting control panel password, unless they are the same).
All providers go through the same live connection test. If IMAP connects but SMTP fails, double-check the SMTP port and security setting - providers sometimes offer port 465 (SSL) or port 587 (STARTTLS) but not both.
Step 5: Read and reply inside the inbox
Budget: Ongoing. After the mailbox saves, navigate to /inbox in the panel. The first background sync pulls up to 30 days of existing mail and typically completes within 30 seconds. After that, new mail appears within about 30 seconds of arriving at your mail server.
Click any thread to open it. The HTML body renders inside a sandboxed iframe - JavaScript is blocked, so a marketing email cannot run scripts or steal session cookies. You will see a banner at the top:
External images blocked to protect against trackers.
[Show external images]Click "Show external images" when you trust the sender. The banner disappears and remote images load for that message only. The setting does not persist to other messages, keeping you in control.
Attachments appear listed by filename and size below the message body. Click to download. To reply, click the reply area at the bottom of the thread, write your message, and click Send. CRM Solid preserves the In-Reply-To and References headers so the thread groups correctly in the recipient's own email client.
Step 6: Compose a new email
Click Compose in the inbox toolbar. The compose dialog shows fields for To, Cc/Bcc, and Subject. If you have multiple mailboxes connected, a "From" dropdown lets you pick which one to send from - useful when you want sales@ to reply from sales@ and support@ to reply from support@.
Write your message and click Send. The message goes through your own SMTP server, so it appears in your sent folder in your original mail client as well. The "From" address the recipient sees is your real mailbox address, not a CRM Solid relay.
Step 7: Link an email thread to a CRM contact
Open any thread. In the right-hand detail panel, find the "Link to contact" field. Start typing the contact name or email address. CRM Solid searches your existing contacts and shows matches in a dropdown. Select the right contact.
The thread now shows a "linked" badge next to the sender name in the thread list. Click the contact name in the detail panel to open their full record in /contacts - where you can see their pipeline stage, activity timeline, tags, and any other threads linked to them. You can link multiple threads from the same person to the same contact record.
Tip: linking email threads to contacts is what separates a CRM inbox from a plain email client. Once linked, the contact record becomes the single source of truth: Telegram messages, X DMs, live chat conversations, and email threads all visible together.
Step 8: Set thread status, assignment, and multiple mailboxes
With a thread open, use the status buttons in the right-hand panel:
- Open: active, needs attention. This is the default for new incoming mail.
- Pending: waiting on the other party (for example, you sent a proposal and are waiting for a reply).
- Closed: resolved. The thread is done.
If your workspace has multiple team members, use the Assign dropdown to route the thread to a specific person. The assigned person sees it highlighted in their view. This avoids the "I thought you were handling it" problem that happens when a team shares a single inbox address without assignment.
When you have multiple mailboxes connected, the inbox filter bar at the top lets you switch between "All mailboxes" and a specific account. Focus on support@ in the morning and switch to sales@ in the afternoon - the same /inbox view handles both.