Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
DictionaryEEmail Message
ServiceBeginner

Email Message

Email Message in Salesforce refers to the EmailMessage object, which stores every email sent to or from a Case (or other supported object) as a record.

§ 01

Definition

Email Message in Salesforce refers to the EmailMessage object, which stores every email sent to or from a Case (or other supported object) as a record. The object is a child of Case (and supported parents) via the ParentId field, and each EmailMessage holds the From, To, Cc, Bcc, Subject, HTML body, text body, attachments, and metadata about the conversation thread. Email-to-Case, the Lightning Email Composer, automated case responses, and Marketing Cloud Engagement journeys all create EmailMessage records.

EmailMessage is the queryable representation of email in Salesforce, separate from Email Templates (the content blueprint) and Email Alerts (the automation trigger). When an agent sends a reply from a Case feed, the platform creates an EmailMessage with status Sent. When a customer replies to that thread, Email-to-Case captures it as another EmailMessage with status New. Reports against EmailMessage power agent productivity dashboards, response-time SLAs, and email-volume analytics.

§ 02

How EmailMessage records work in Salesforce

EmailMessage as the child object on Case

Email Messages attach to a parent record (most commonly Case) through the ParentId lookup field. Each Case can have many Email Messages threading through the conversation. The Case feed displays them in chronological order. EmailMessage is also enabled on Lead, Contact, Account, and Opportunity in some configurations, but Case is the primary use case.

Email-to-Case as the inbound source

Email-to-Case is the feature that turns inbound emails into Case records and EmailMessage children. Customers send to support@yourcompany.com; the platform creates a Case if one does not exist (matching by Subject or Thread-Id) or attaches a new EmailMessage to an existing Case. The configuration lives in Setup, then Email-to-Case, with routing rules per inbound address.

The agent reply flow

From the Case detail page, agents click Email in the feed to compose a reply. The Lightning Email Composer opens with the original sender as the recipient, the Case Number in the subject for threading, and a body that can use templates or quick text. Sending creates an EmailMessage record with Status equal to Sent and links it to the Case through ParentId.

Threading and conversation continuity

Salesforce threads emails by Thread-Id (an opaque token embedded in the Subject) or by matching the customer''s email address against existing Cases within a configurable time window. When a customer replies, the thread token in their reply lets the platform attach the new EmailMessage to the right Case rather than creating a new one. Misconfigured threading is the most common source of duplicate-Case headaches.

Attachments and EmailMessage

Inbound and outbound email attachments are stored as ContentDocument records (Files) linked to the EmailMessage. The EmailMessage has a HasAttachment flag for quick filtering. Outbound attachments respect the standard 25 MB email size limit; inbound emails over the limit may have attachments stripped or be rejected entirely, depending on Email-to-Case configuration.

Reporting on EmailMessage

Reports on the EmailMessage object answer common questions: first-response time (creation date of first outbound message minus Case creation date), email volume per agent per day, average emails per Case, top inbound sender domains. The standard Email Messages report type joins EmailMessage to Case for blended reporting. Most operational dashboards include at least one EmailMessage-based metric.

Email-to-Case Premium and advanced features

Standard Email-to-Case uses Salesforce-hosted SMTP forwarding; on-demand customers can use the in-org email service. Email-to-Case Premium (a paid add-on) adds bounce-back handling, advanced threading, signature stripping, and high-volume handling. For orgs receiving 10,000-plus emails per day, Premium is usually worth the cost. Salesforce Inbox and Einstein-powered email features layer on top for additional automation.

§ 03

How to configure Email-to-Case so EmailMessages flow into your Salesforce org

EmailMessage records are created automatically once Email-to-Case is configured. The setup is mostly DNS, routing addresses, and case-creation rules; the EmailMessage object handles itself.

  1. Set up the email service in Salesforce

    Setup, then Email-to-Case. Enable the feature. Pick on-demand (Salesforce-hosted) or premium (your own SMTP) routing.

  2. Define routing addresses

    For each support inbox (support@, billing@, returns@), add a Routing Address. The platform issues a unique salesforce.com email address; configure DNS so that your inbox forwards to it.

  3. Configure case-creation behavior

    Set defaults: which Record Type new Cases use, which Owner gets assigned, which queues route which addresses. Define the assignment rule that processes new inbound Cases.

  4. Test inbound email

    Send a test email to your support address. Watch the Setup, then Email Logs, to confirm forwarding. Check the Case Queue for the new Case and EmailMessage.

  5. Set up agent reply flows

    Configure email templates for agent replies. Build quick-text snippets for common responses. Train agents on the Lightning Email Composer.

  6. Build reports and dashboards

    Create reports against EmailMessage joined to Case: first-response time, email volume, top inbound senders. Add to agent dashboards for daily visibility.

Key options
Email-to-Case (on-demand)remember

Salesforce-hosted SMTP. Easiest to set up, included with Service Cloud.

Email-to-Case Premiumremember

Paid add-on with advanced threading, bounce handling, signature stripping. For high-volume contact centers.

Email Service (advanced)remember

Programmatic email handling via Apex inbound email handlers. Use for complex routing logic Email-to-Case cannot handle.

Lightning Email Composerremember

The agent-facing UI for outbound replies. Generates EmailMessage records with Status equal to Sent.

Gotchas
  • Threading depends on the Thread-Id being preserved in reply Subjects. Email clients that strip it produce duplicate Cases.
  • Inbound attachments may be stripped at the 25 MB limit. Premium handles larger files; standard rejects oversized emails.
  • Email-to-Case can create duplicate Cases under high volume if Thread-Id matching fails. Build duplicate-detection rules on Case to clean up.
  • Email logging respects field-level security: agents who lack EmailMessage Read see only metadata, not content. Audit profiles carefully for support roles.
§

Trust & references

Sources

Cross-checked against the following references.

Official documentation

Straight from the source - Salesforce's reference material on Email Message.

Was this entry helpful?
Help us write better definitions. Quick reactions or detailed edit suggestions.

About the Author

Dipojjal Chakrabarti is a B2C Solution Architect with 29 Salesforce certifications and over 13 years in the Salesforce ecosystem. He runs salesforcedictionary.com to help admins, developers, architects, and cert/interview candidates sharpen their fundamentals. More about Dipojjal.

§

Discussion

Loading…

Loading discussion…