Create ad-hoc campaign reports

Campaign Exports provide detailed reports of the campaigns to analyze the campaign performance. These reports include the following details: campaign attributes, target audience, delivery stats, conversions, performance breakdown by locales, and variations. These can be extracted for a specific date range or split day-wise.

Steps to export campaigns

1. Navigate to Reports -> Campaigns


2. Click in the top right corner on the campaign reports page that opens.


1. Navigate to the All Campaigns Page.

2. Click on the Export in the navigation bar. 


3. There are two options here:


a) Basic Report: You can quickly get a default export for the campaigns. (only available via Engage -> Campaigns -> Export)

b) Advanced Report:  You can select campaigns, customize attributes and schedule your exports.

Basic Report

To get the basic report, follow these steps:


1. Select Team name (this option is visible only if you are using teams)

2. In the Select Channels drop-down, select the channel types for which you can export your campaigns.

3. In the Select campaign dates, enter the date range for campaign selection. The active campaigns in the selected date range will be only included.

For example - If you select the date range as 1st Jan to 31st Jan, all the campaigns that had even a single impression during this period will be selected. 

4. Select Created by to filter out campaigns created by any specific user/s. This is an optional field.

5. Click Export.



The report will be sent to the email address of the logged-in user. The report will be sent to you within 6 hours. 

Advanced Report 

The advanced report is further split into 3 steps - Select campaigns, Report format and content, Scheduling, and delivery.  


A. Select campaigns 

The campaigns that need to be included in your report can be filtered and exported.


    1. Report Name - You can provide a report name. The report name should be alphanumeric, start with an alphabet, and be less than 128 characters long. 
    2. In the Select Team name drop-down, enter your team name. This option is visible only if you are using teams. 
    3. In the Select Channels drop-down, select the channel types for which you can export your campaigns. 
    4. In the Select campaign dates, enter the date range for campaign selection. The campaigns running (irrespective of the impressions) in the selected date range will only be included. For example - Let's say there was a campaign C1 that was created on 1st Jan and did not see any impressions till 5th Jan. Now, if you select the date range as 1st Jan to 3rd Jan, the campaign C1 will be included in the report. This is because C1 was still active during the selected date range. 


      You can only export data for 90 days at a time. If you want to export r a longer duration, say 180 days, please create multiple reports - D0 to D-90 and D-90 to D-180.

    5. Filters - You can use advanced filters such as created by, approved by, and also include archived campaigns in your exports.


    6. Select Campaigns - There are two options here:
      1. Select all campaigns: This would include all the campaigns that satisfy the filter conditions.
      2. Select campaigns manually: You can select the specific campaigns that need to be included in the report. You can use campaign search and sort options to search for any campaign.


    7. Click Next. 

B. Report format and content 

You can select the attributes for all the channels that you have selected in the previous step:


1. Click on the channel type.

2. Select the attributes that you want to include in the report. You can either use the default selection, or you can choose your attributes manually. All these attributes will appear as a new column in the report.


3. Add custom attributes - You can configure the attribute as a mathematical combination of any campaign stats attributes.
For example: If you want to add CTR, set the attribute name as CTR & attribute value as @{campaign-stats.clicks} #{/} @{campaign-stats.impressions}.


4. Show Campaign Stats - You can select one of these two options -

   4.1. Aggregate - This is to get aggregate performance stats over the campaign's lifetime. 

   4.2. Day-wise- This is to get a day-wise performance breakdown of the campaign. For example - If the campaign is active for 7 days, this is show stats (impressions, conversions) for each of these 7 days. 


5. Include stats only in the date range -This pulls reports, including data from a specific date range.


6. Select level of data granularity - You can export stats breakdown by variations and locales. This means there will be a new row in the report for every variation/locale. 




MoEngage does not support Locale level reporting for all channels. This is only supported for InApp, Push, Email, and SMS campaigns.  

7. Select your export format.


8. Click Next.



All the metrics are calculated and displayed in the App's Timezone.

C. Scheduling and delivery 

1. Configure and schedule the report - Daily, weekly, monthly, etc.


2. Delivery Mode - You can get the reports using email or you can extract them using APIs. For more information, refer to Campaign Report API.


Manage Report 

You can manage all your reports on the Reports >> Campaigns. 


Output Report Format & Structure 

If you selected email as the mode of delivery, you will receive a zip file. The file name is a combination of:

1. Report name is the same as the report name created in the Campaign Report Builder, with space replaced by underscores. For example, if the file name on the dashboard is *Report test*, then the file name for the API is *Report_test*.
2. Report generation date in YYYYMMDD format. For example, 20210217 in the name contains the report generated on 17/02/2021.
3. Compression format such as *.zip*

So, the final file name in this example will be 

File Naming convention 

Channel level reports

If you have extracted channel-level reports, the zip file will contain separate files for every channel with the format <Report Name>_<Channel Name>


Flow reports:

If you have extracted flow reports, the zip file will contain
1. A flow file with the format <Report Name>_<FLOWS>
2. Separate files for every channel with the format <Report Name>_<Channel Name>



If you have used only a few channels in your report, you will only get the reports for the channels used within your selected flows. All the metrics are calculated and displayed in GMT for point channel campaigns associated with Flows.


File format 

Row: Each row corresponds to a different campaign. All details related to a campaign will be present in the same row.  

Columns:  Every column corresponds to a different attribute. These columns will be customized attributes that you would have selected in step 2 of report creation.  

1. Periodic or flow campaigns:

In the case of periodic or flow campaigns, it will have multiple child instances. All these instances will be present in a different row in the output file. The column corresponding to the parent campaign id will be empty in the case of parent campaigns. 

2. Day-wise reports:

In the case of "Day wise reports", you will see a column called date. Each row will now correspond to the stat details for that particular date.


3. Variation and locale-level reports:

In the case of "Locale/Variation level reports", you will see two more columns - Variation and locale. Each row will correspond to the stat details for that particular variation and locale.


Understanding delivery stats

#  Column Name in report    Calculation 
 1.   Delivery rate   Delivered/Sent
 2.   Open rate
  Unique opens/Delivered
 3.   Click-through rate (CTR)
  Unique clicks/Delivered
 4.   Conversion rate
  Converted events/Delivered
 5.   Hard bounce rate   Hard bounces/Sent
 6.   Unsubscribe rate   Unsubscribes/Sent


Was this article helpful?
7 out of 10 found this helpful

How can we improve this article?