Overview
The Reports feature provides aggregated data on your transactional alerts. This feature empowers you to gain comprehensive insights into the performance of your critical communications without the need for manual data compilation from individual alerts.
With reports, you can:
- Obtain detailed performance metrics for specific alerts.
- Access aggregated data across multiple alerts.
- Download report data in CSV format or fetch report data using the REST API for in-depth analysis and custom reporting.
- Automate report generation through flexible scheduling options.
This feature simplifies the monitoring and optimization of transactional messaging, facilitating data-driven decisions.
Use Cases
Reports can be leveraged for a variety of strategic and operational needs. The following are some key use cases:
- Daily/Weekly performance monitoring of critical alerts: Get a consolidated, daily/weekly view of all critical alert performance (for example, order confirmations, shipping updates) across channels like SMS, Email, Push, and WhatsApp. This helps in quickly detecting and resolving delivery or engagement issues.
- Cross-channel performance analysis: Understand which channels (SMS, Email, Push, and WhatsApp) perform best for different types of alerts, enabling a data-driven channel strategy
Create Reports
To create reports, perform the following steps :
- On the left navigation menu in the MoEngage dashboard, click Reports, and then click Inform.
- On the Inform reports page, click + New report.
You can create reports using three steps:
Step 1: Select Alerts
In the Select Alerts step, use the following fields to choose the alerts for your reports:
- Report name: Enter a unique name to identify your report. Ensure the report name contains alphanumeric characters, starts with an alphabet, and is less than 128 characters long.
- Teams: If your organization has teams enabled, select a team in the drop-down list. For more information, refer to Teams in MoEngage.
- Channel: Select the channel(s) for which you want to generate reports.
- Alert dates: Select the date range for the alerts you want to include in the reports. Note that you can only generate reports for data for a maximum of 90 days at a time. To export data for a longer period, such as 180 days, you must create multiple reports. For instance, for 180 days, create one report for Day-0 to Day-90 and another for Day-90 to Day-180.
- In the Alerts section, you can select alerts for your reports using the following options, based on the selected channel type:
- Select all alerts: This option allows you to automatically include every alert.
- Select alerts manually: This option allows you to individually pick the specific alerts for which you want to generate reports.
- To access advanced filtering options, click the Filter alerts (
) icon. You can apply filters based on:
-
Alert Tags: Filter alerts based on tags. The following options are available:
- All of these: Include alerts that contain every selected tag.
- Any of these: Include alerts that contain at least one of the selected tags.
- Created by: Filter alerts based on the user who created them.
- Include archived alerts in the report: Select this checkbox to include archived alerts in your report.
-
Alert Tags: Filter alerts based on tags. The following options are available:
- Click Next.
Step 2: Report Format and Content
In the Report Format and Content step, use the following fields to decide your report's format and content:
- You can select the attributes for all the channels that you have selected in the previous step. The following options are available:
-
Select default attributes: This option allows you to automatically select all default attributes to include in the report.
-
Select attributes manually: This option allows you to individually select the attributes you want to include in the report.
-
Add custom attribute: Click + Custom attribute to configure your own attribute as a mathematical combination of any of the alert stats attributes. Custom attributes allow you to create specific metrics that are most relevant to your analytical needs, beyond the standard options.
- Type @ to add attributes (e.g., @Delivery Stats['Delivered']).
- Type # to add mathematical operators.
For example, if you want to add CTR and Delivered Stats, type @ to add attributes, type # to add mathematical operators as {{Delivery Stats['CTR']}}{{+}}{{Delivery Stats['Delivered']}}.
info Information
Ensure you select attributes for all the channels you chose in Step 1. You must do this separately by expanding each channel section. If you don't, the system automatically selects the default attributes for each channel for generating your reports.
-
Select default attributes: This option allows you to automatically select all default attributes to include in the report.
- In the Show Alerts Stats section, you can analyze alert performance using the following options:
- Aggregate: This option displays the cumulative performance of an alert throughout its entire lifespan. This provides a high-level overview of an alert's total performance, useful for understanding its overall effectiveness during entire run.
- Day wise: This option allows for the daily analysis of an alert's performance. For example, if an alert was active over the last seven days, you can examine its performance on each day. Use Day wise to pinpoint specific days with performance dips or spikes, which can then be correlated with external events like platform outages, high traffic periods.
-
Include stats only in the date range: Select this check box to filter the report data to a specific date range. You can select the date range by clicking the Calendar (
) icon.
- In the Set level of data granularity section, you can select the stats breakdown using the following options:
- Channel level: This option allows you to analyse the individual performance of each channel. When you select this option, the report adds a new row for every channel. Select Channel level to compare the effectiveness of different channels (SMS, Email, Push, WhatsApp) for your transactional alerts, helping you optimize your channel strategy.
-
Locale level: This option allows you to analyse the individual performance of each locale.
When you select this option, the report adds a new row for every unique locale. Select Locale level to understand how alert performance varies across different geographical regions or languages, enabling localized optimization.
- In the Export as section, select your export format.
- Click View report format to download and view your report.
- Click Next.
Step 3: Scheduling and Delivery
In the Scheduling and Delivery step, configure how and when your report is delivered using the following options:
- In the Send report section, configure when your report is delivered using the following options:
- As soon as possible: Select this option to generate and deliver the report immediately.
- At specific date and time: Select this option to schedule the report for a future date and time. When chosen, additional fields will appear for you to specify the desired date, time, and recurrence (for example: daily, weekly, monthly).
- In the Send report to section, configure when your report is delivered using the following options:
- Email: Select this option to deliver the report to a specified email address.
- Rest API: Select this option to extract the report using the Campaign Report API of MoEngage.
- Click Create.
View and Manage Created Reports
After creating the reports, they are listed on the Inform reports page with one of the following statuses: Successful, Failed, Scheduled, Stopped, Running, Queued. You can perform the following actions on this page:
- Search for the report by name.
- Filter reports based on Report type, Report status, Created by, and Team name.
- Click the ellipsis (
) icon against a report to perform the following actions:
- For periodic report: Stop, Edit, Duplicate, Delete
- For one-time report: Duplicate, Delete, Send to me, Run again.
Output Report Format and Structure
If you selected email as the mode of delivery, you will receive a zip file. The file name is a combination of the following:
- Report name: This is the same as the report name created in the MoEngage UI, with spaces replaced by underscores. For example, if the file name on the dashboard is Report test, the file name for the API is Report_test.
- Report generation date: The report generation date is in YYYYMMDD format. For example, 20250703 in the name contains the report generated on 03/07/2025.
- Compression format: The compression is in .zip format.
The final file name in this example is Report_test_20250703.zip.
File Naming Convention
Channel Level Reports
If you have extracted channel-level reports, the ZIP file contains separate files for every channel with the format <Report Name>_<Channel Name>
File Format
The following points explain the file format of the generated reports:
- Row: Each row corresponds to a different alert. All details related to an alert are present in the same row.
- Columns: Every column corresponds to a different attribute. These columns are customized based on the attributes you selected in Step 2 of report creation.
- Day-wise reports: In this report, you can see a column named date. Each row corresponds to the stat details for that particular date.
- Channel level reports: In this report, you can view a column added for channel. Each row corresponds to the stat details for that particular channel.
-
Locale level reports: In this report, you can view a column added for locale. Each row corresponds to the stat details for that particular locale.
Understand Delivery Stats
The following table helps you understand the delivery stats for alerts:
Column Name in report | Calculation | What it means |
---|---|---|
Delivery percentage | Delivered/Sent | The proportion of messages successfully delivered to recipients compared to the total messages sent. |
Open percentage | Total opens/Delivered | The percentage of delivered messages that were opened by recipients. |
Click-through rate (CTR) | Unique clicks/Delivered | Measures the effectiveness of your message content and call-to-action (CTA). |
Hard bounce rate | Hard bounces/Sent | The percentage of emails that permanently failed to deliver due to invalid or non-existent email addresses. |
Unsubscribe rate | Unsubscribes/Sent | The percentage of recipients who opted out of receiving further communications after receiving your message. |