The SendLog in Salesforce Marketing Cloud (SFMC) is a customizable logging mechanism that records runtime data during email sends. It offers visibility into fields that aren’t available in standard tracking data views and is especially valuable for auditing, personalization validation, and deep troubleshooting of email sends.
This guide explains each core field available in the default SendLog structure, its use cases, and how to extract insights using SQL queries in Automation Studio.
What is the SendLog?
SendLog is a custom Data Extension (DE) enabled through Email Studio’s Send Logging feature. It records send-time information like job details, personalization values, error codes, and subscriber information.
🔧 You must enable send logging in Email Studio and configure the Data Extension to start collecting data.
Key Benefits of SendLog
- Advanced Auditing: View detailed send records including personalization fields.
- Troubleshooting Support: Track and isolate issues using error codes and job IDs.
- Custom Field Tracking: Capture custom values rendered at send-time.
- Triggered Sends Monitoring: Capture triggered send IDs for real-time events.
Core Fields in the Default SendLog
Field | Type | Description |
---|---|---|
JobID | Number | A unique identifier for the send job. Useful for tying the log to tracking views. |
ListID | Number | The identifier of the subscriber list used for the send. |
BatchID | Number | The batch number associated with the job. Helps trace delivery segments. |
SubID | Number | The subscriber’s internal SFMC identifier. Can be joined with other views. |
TriggeredSendID | Text(36) | Unique ID for the triggered send definition used. Important for dynamic sends or journeys. |
ErrorCode | Text(36) | Code representing any send error encountered. Useful for debugging and performance audits. |
📝 Note: You can add additional fields to the SendLog to track any personalization variables, AMPscript outputs, or email context details.
When and Why to Use the SendLog
When to Use?
- To debug issues in dynamic content or AMPscript rendering.
- When analyzing performance by triggered send or batch.
- To create audit logs for regulatory compliance.
- When building custom deliverability reports.
Why Use It?
- Greater Transparency: Provides insight into exactly what was sent.
- Personalization Debugging: Capture variables to validate dynamic rules.
- Error Resolution: Use
ErrorCode
to pinpoint technical or data issues. - Triggered Send Optimization: Compare engagement by TriggeredSendID.
Sample SQL Queries
1. Find All Sends with Errors
SELECT JobID, SubID, ErrorCode
FROM SendLog
WHERE ErrorCode IS NOT NULL
2. Analyze Send Volume by Triggered Send
SELECT TriggeredSendID, COUNT(*) AS TotalSends
FROM SendLog
GROUP BY TriggeredSendID
3. Join with _Job Data View for Job Details
SELECT s.JobID, j.EmailName, j.EmailSubject, s.SubID
FROM SendLog s
JOIN _Job j
ON s.JobID = j.JobID
4. View Personalized Variables (If Custom Fields Are Enabled)
SELECT JobID, SubID, FirstName, FavoriteCategory, PromoCode
FROM SendLog
Assumes FirstName
, FavoriteCategory
, and PromoCode
are custom send-time fields in the SendLog.
Conclusion
The SendLog is a powerful extension to SFMC’s data ecosystem, providing granular insights into every email sent—especially useful when working with dynamic content, personalized experiences, and triggered sends.
When enabled and customized effectively, it becomes your go-to tool for ensuring every subscriber receives the right message, at the right time, with the right context.