Salesforce Marketing Cloud Data Views: SendLog

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

FieldTypeDescription
JobIDNumberA unique identifier for the send job. Useful for tying the log to tracking views.
ListIDNumberThe identifier of the subscriber list used for the send.
BatchIDNumberThe batch number associated with the job. Helps trace delivery segments.
SubIDNumberThe subscriber’s internal SFMC identifier. Can be joined with other views.
TriggeredSendIDText(36)Unique ID for the triggered send definition used. Important for dynamic sends or journeys.
ErrorCodeText(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.