Salesforce Email Preview: Every Method to Test Before You Hit Send
This glossary covers every native preview method—Classic test sends, Lightning composer limitations, programmatic rendering with Apex, preheader configuration, and the cross-client rendering gap that no native tool addresses.
A broken merge field or a mangled layout reaching a prospect’s inbox is a mistake you only make once. Salesforce email preview lets teams verify content, merge field output, and visual rendering before recipients ever see the message. The platform provides the Send Test and Verify Merge Fields button for Classic email templates, an inline preview inside the Lightning email composer, and the Apex renderStoredEmailTemplate method for programmatic rendering. Yet each method carries gaps—Lightning templates lack a formal test-send feature, Flow-triggered emails offer no preview at all, and no native tool shows how your email renders across Gmail, Outlook, and mobile clients. This guide covers every preview method available in Salesforce, its limitations, and how to close the gaps. For a complete overview of email functionality, see the Salesforce email glossary.
Send Test and Verify Merge Fields in Classic Templates
Classic email templates (Text, HTML with Letterhead, Custom HTML, and Visualforce) include a dedicated Send Test and Verify Merge Fields button visible on the template detail page. Clicking it opens a dialog where you select a Recipient Record (Contact or Lead) and an optional Related To record (Account, Opportunity, Case, or custom object). Salesforce resolves every merge field using real data from those records, generates the final email, and delivers it to the address you specify. This is the most complete preview mechanism Salesforce offers—it tests merge field syntax, field-level security visibility, and actual email rendering in one step.
The key caveat is that this test sends against your organization’s daily email limits. Each test consumes one email from your allocation, so teams running frequent tests on high-volume sending days risk hitting the 5,000 ceiling. Also, blank merge fields in the test reveal missing data on the selected record—not a template error. Always test with a record that has all relevant fields populated to get an accurate preview.
Lightning Email Template Preview Limitations
Lightning email templates offer a visual preview inside the template builder—you can see the layout, formatting, images, and placeholder merge field tokens before saving. When composing an email from a Contact or Lead record, the Lightning composer resolves merge fields inline so the sender sees personalized content before clicking Send. However, Lightning templates do not include a Send Test and Verify Merge Fields equivalent. There is an active IdeaExchange request to add this feature, but as of now, Salesforce has not implemented it.
This creates a practical gap for teams that have migrated to Lightning templates: the only way to verify rendered output is to compose a real email from a record and inspect it in the composer window. You cannot send a test to your own inbox without actually sending the email to the recipient. Teams working with email automation in Flow Builder face an even larger blind spot—Flow’s Send Email action provides no preview or test capability at all, meaning the first time anyone sees the final rendered email is when the recipient opens it.
Programmatic Preview with Apex renderStoredEmailTemplate
Developers can use the Messaging.renderStoredEmailTemplate method to resolve merge fields and generate final email content without actually sending the message. The method accepts a template ID, an optional whoId (Contact, Lead, or User), and an optional whatId (related record), then returns a SingleEmailMessage object with a fully rendered subject and HTML body. Calling getSubject() and getHtmlBody() on the result gives you the exact output recipients would see.
This approach is powerful for building custom preview interfaces. Teams can create an Invocable Apex action that feeds rendered HTML into a Screen Flow’s Display Text component, giving users a visual preview before sending. The method counts as one SOQL query, so factor that into governor limit planning for bulk operations. For organizations building custom email templates with complex merge logic, this is the most reliable way to validate output programmatically before any email leaves the system.
Preheader Text and Inbox Preview Optimization
Preheader text is the snippet that appears next to or below the subject line in inbox clients like Gmail and Outlook. Salesforce does not provide a dedicated preheader field in any template type. For Classic HTML templates, the standard workaround is inserting a hidden HTML span immediately after the opening body tag with inline CSS that sets display to none and font size to zero. This text appears in the inbox preview but remains invisible in the email body itself. For details on template design, see the Lightning email templates glossary entry.
Without preheader configuration, email clients pull the first visible text from the email body—often a navigation link, image alt text, or a generic greeting—creating a poor first impression. In Lightning templates, you can place a Rich Text component with hidden styling at the top of the template, but the builder may strip certain CSS properties. Testing preheader rendering requires sending to real inboxes across clients, as the Salesforce composer preview does not display preheader behavior. Tools like MassMailer’s Email Monitor provide cross-client previews that show exactly how preheader text renders in every major inbox.
Cross-Client Rendering and Mobile Preview Challenges
An email that looks perfect in the Salesforce preview can break in the recipient’s inbox. Gmail strips certain CSS properties, Outlook uses the Word rendering engine that ignores modern HTML standards, and Apple Mail handles responsive design differently than Android clients. Salesforce’s native preview shows how the template renders in the platform’s own viewer—not in the 50+ email clients your recipients actually use. This is especially critical for HTML templates with custom layouts, images, and responsive design elements targeting mobile devices, which account for the majority of email opens today.
Native Salesforce provides no built-in cross-client testing. The standard approach is to send test emails to accounts on Gmail, Outlook, Yahoo, and mobile devices, then manually verify rendering—a time-consuming process that becomes impractical for teams managing dozens of templates. For organizations requiring consistent email deliverability and rendering quality, third-party testing tools or native AppExchange solutions offer automated cross-client previews that identify rendering issues before any campaign goes live.
Complete Email Preview with Native Salesforce Tools
MassMailer closes every native preview gap through its built-in email template builder and Email Monitor. The WYSIWYG builder provides real-time visual preview as you design, with instant merge field resolution using actual Salesforce record data. The Preview Email button renders the final output with all merge fields populated, and Send Test Email lets you deliver a fully rendered test to any address—without consuming Salesforce’s daily email quota.
MassMailer’s Email Monitor takes preview further by analyzing emails across multiple dimensions before they go live: cross-client rendering across desktop and mobile email apps, spam filter scoring to predict inbox placement, link validation to catch broken URLs, and HTML analysis to flag code that specific clients may not render correctly. Because MassMailer is 100% native to Salesforce, all preview and testing activity respects the same CRM permissions and governance as all other Salesforce data, giving teams confidence that what they preview is exactly what recipients will see.
Stop guessing how your emails will look. MassMailer gives you real-time preview, cross-client rendering analysis, and spam-score testing—all inside Salesforce. Install MassMailer free today.
Key Takeaways
- Classic templates offer Send Test and Verify Merge Fields—the most complete native preview—but each test counts against daily email limits.
- Lightning templates display an inline preview in the composer but lack a dedicated test-send feature; an IdeaExchange request remains open.
- Apex renderStoredEmailTemplate renders merge fields programmatically without sending, enabling custom preview screens in Flows and LWCs.
- Salesforce provides no native preheader field; teams must use hidden HTML spans in Classic templates to control inbox preview text.
- No native tool tests cross-client rendering; emails may display differently in Gmail, Outlook, Apple Mail, and mobile apps.
- MassMailer’s Email Monitor provides cross-client previews, spam scoring, and link validation—all before a single email is sent.