Introduction
Power BI is a business analytics tool developed by Microsoft. It provides interactive visualizations and business intelligence capabilities with an interface simple enough for end-users to create their own reports and dashboards.
MoEngage <> Power BI
With the MoEngage and Power BI integration, you can export user engagement data and other metrics directly to your Power BI. This data can be visualized in a host of different ways and used to derive insights about user behavior.
Moreover, with MoEngage’s powerful segmentation and Power BI’s robust analytical abilities, you can deeply understand user behavior and make data-driven decisions to improve engagement and generate a higher ROI on your marketing campaigns.
With the MoEngage and Power BI integration, you can:
- Sync user engagement data to your Power BI on a scheduled basis - the syncs can be as frequent as every hour or as infrequent as once per week, depending on the data source.
- Visualize and analyze your user engagement data in Power BI using various interactive charts, graphs, and other visualization tools.
- Use these insights to segment your users more effectively and send personalized campaigns aimed at improving user engagement.
Use Cases
- Performance Tracking and Reporting: Marketers can use the integration to track and analyze the performance of their marketing campaigns and engagement initiatives. Power BI can pull data from MoEngage, consolidate it, and present visual reports and dashboards for easy interpretation.
- Campaign Optimization: The integration can be used to analyze and optimize marketing campaigns. Marketers can track key metrics like click-through rates, open rates, conversions, and revenue generated from each campaign. Power BI can then help visualize these metrics across different channels and campaigns, allowing marketers to identify successful strategies and allocate budgets accordingly.
- Predictive Analytics: By integrating MoEngage and Power BI, marketers can leverage predictive analytics capabilities. Power BI can analyze historical engagement data from MoEngage and use it to predict future customer behavior, enabling marketers to make data-driven decisions and design proactive marketing strategies.
Integration
library_add_check |
Prerequisites
|
To access MoEngage's Campaign Data, you will need to export the data from MoEngage to your preferred destination supported by Power BI:
- Snowflake
- Amazon Redshift
- Google BigQuery
Power BI also supports cloud storage like Amazon S3 and Google Cloud Storage. Additional transformation might be necessary because you can import data directly from these files. To understand the schema of these files, please refer to our Data Exports Glossary.
Step 1: Add your preferred data source to Power BI
To add Snowflake as a Data Source on Power BI, you can follow the steps mentioned in the Power BI Help Docs. MoEngage will dump all your campaign interaction data as per the schema defined in the Data Exports Glossary.
To add Redshift as a Data Source on Power BI, you can follow the steps mentioned in the Power BI Help Docs. MoEngage will dump all your campaign interaction data as per the schema defined in the Data Exports Glossary.
To add BigQuery as a Data Source on Power BI, you can follow the steps mentioned in the Power BI Help Docs. MoEngage will dump all your campaign interaction data as per the schema defined in the Data Exports Glossary.
Step 2: Prepare your data for visualizations
If you wish to do basic campaign data analytics, you can always make use of the event attribute columns that contain all the standard information for creating charts and reports:
-
event_attributes_campaign_channel
- event_attributes_campaign_id
- event_attributes_readable_campaign_id
-
event_attributes_campaign_name
-
event_attributes_campaign_type
-
event_attributes_parent_campaign_id
-
event_attributes_parent_flow_id
-
event_attributes_parent_flow_name
-
event_attributes_locale_id
-
event_attributes_locale_name
- event_attributes_variation_id
-
event_attributes_logged_in_status
-
event_attributes_platform
-
event_attributes_first_session
All the event attributes will be also stored as part of a JSON column called event_attributes.
Extracting attributes as separate columns
Power BI does not have native support for changing JSON structures and hence it is recommended to extract the attributes required for computation to make the computation faster. This can be done by creating a view on top of the tables created by MoEngage. Below is an example for a few attributes, but the same can be extended to any of your use cases:
To create a view in Snowflake, you can use the following command as a base:
CREATE VIEW moe_event_add_to_cart COMMENT='Add to cart' AS
SELECT *,
e.event_attributes['cart_value'] as cart_value,
e.event_attributes['total_items'] as total_items,
e.event_attributes['discount'] as discount,
FROM moe_events_1714216012 AS e WHERE e.event_name = 'Add to cart';
To create a view in Redshift, you can use the following command as a base:
CREATE VIEW moe_event_add_to_cart AS
SELECT *,
json_extract_path_text(e.event_attributes, 'cart_value') as cart_value,
json_extract_path_text(e.event_attributes, 'total_items') as total_items,
json_extract_path_text(e.event_attributes, 'discount') as discount
FROM moe_events_1714216012 AS e WHERE e.event_name = 'Add to cart';
To create a view in BigQuery, you can use the following command as a base:
CREATE VIEW moe_event_add_to_cart AS
SELECT *,
JSON_VALUE(e.event_attributes, '$.cart_value') AS cart_value,
JSON_VALUE(e.event_attributes, '$.total_items') AS total_items,
JSON_VALUE(e.event_attributes, '$.discount') AS discount
FROM `moe_events_1714216012` AS e WHERE e.event_name = 'Add to cart';
Step 3: Load the data inside Power BI
Once you have created multiple views based on the events you need to analyze, you can then load these views as a new data source within Power BI:
To connect your Snowflake database to Power BI:
- Open Power BI Desktop. Either create a new report, or add a new data source to an existing report.
- Click on "Get data from another source" (or "Get Data" > "More..."), and then search for "Snowflake".
- Fill in your connection details and click "OK". You can also add advanced configurations like SQL statements to fire after connecting:
- You will now be taken to the Data Navigator, wherein you can select all the tables/views you want to import. For an example, we will load the view that we created from the MoEngage Exports table. Click "Load" to load this data or "Tranform" to further transform your data, if required.
- [Optional] If you wish to transform your data, you can choose to either "Import" all this data into Power BI, or use DirectQuery to connect live. If you have a large dataset, it is recommended to do DirectQuery, however some operations might not be available in this mode. Please read the Power BI help docs for more information. Click "Close & Apply" when done.
- Your data should now be available to use inside Power BI for powerful visualisations and reports.
Note: Snowflake as a Data Source is only available on the Power BI Desktop Version.
To connect your Redshift database to Power BI:
- Open Power BI Desktop. Either create a new report, or add a new data source to an existing report.
- Click on "Get data from another source" (or "Get Data" > "More..."), and then search for "Redshift".
- Fill in your connection details and click "OK". You can also add advanced configurations like SQL statements to fire after connecting:
- You will now be taken to the Data Navigator, wherein you can select all the tables/views you want to import. For an example, we will load the view that we created from the MoEngage Exports table. Click "Load" to load this data or "Tranform" to further transform your data, if required.
- [Optional] If you wish to transform your data, you can choose to either "Import" all this data into Power BI, or use DirectQuery to connect live. If you have a large dataset, it is recommended to do DirectQuery, however some operations might not be available in this mode. Please read the Power BI help docs for more information. Click "Close & Apply" when done.
- Your data should now be available to use inside Power BI for powerful visualisations and reports.
Note: Redshift as a Data Source is only available on the Power BI Desktop Version.
To connect your BigQuery database to Power BI:
- Open Power BI Desktop. Either create a new report, or add a new data source to an existing report.
- Click on "Get data from another source" (or "Get Data" > "More..."), and then search for "BigQuery".
- Fill in your connection details and click "OK". You can also add advanced configurations like SQL statements to fire after connecting:
-
The Google BigQuery connector supports connecting through an organizational account or a service account sign-in. When connecting via a Service Account, enter your service account email and your service account JSON key file contents. Then select Connect.
- You will now be taken to the Data Navigator, wherein you can select all the tables/views you want to import. For an example, we will load the view that we created from the MoEngage Exports table. Click "Load" to load this data or "Tranform" to further transform your data, if required.
- [Optional] If you wish to transform your data, you can choose to either "Import" all this data into Power BI, or use DirectQuery to connect live. If you have a large dataset, it is recommended to do DirectQuery, however some operations might not be available in this mode. Please read the Power BI help docs for more information. Click "Close & Apply" when done.
- Your data should now be available to use inside Power BI for powerful visualisations and reports.
Note: BigQuery as a Data Source is only available on the Power BI Desktop Version.
Examples use cases
With Power BI, you can create a dashboard with metrics such as Daily Active Users count, Monthly Active Users count, Daily New Users, Daily Uninstalled Users, etc. Below are some examples to get you started -
-
User Activity Monitoring: This report can showcase how frequently users engage with the app. Events such as "App/Site Open", "App Exit" can inform daily or monthly user activity. This might include metrics such as Daily Active Users (DAU), Monthly Active Users (MAU), and session duration.
-
User Engagement Tracking: Events like "Notification Clicked Android", "Notification Clicked iOS", or "Notification Clicked Web" can be used to track user engagement on different platforms.
-
Campaign Performance Analysis: For email-specific campaigns, you could use the events such as "Email Sent", "Email Opened", "Email Clicked", "Email Bounced", "Email Complained" and "Email Unsubscribed". These would provide insights into aspects such as email delivery success rate, open rate, click-through rate, bounce rate, complaint rate, and unsubscribe rate. This information can be used to gauge the efficacy of your email campaigns and identify areas for improvement.
-
User acquisition and churn report: Using "Install", "ReInstall", "Device Uninstall" and "User ReInstall" events, create a report to monitor user acquisition and churn rate. You can break it down based on various dimensions such as geographical location, device type, and so on.
-
Behavior Flow Analysis: With events such as "App/Site Opened", "Notification Clicked" (or "Card Clicked"), and a custom event of "Added to Cart" event, you're able to track key user actions within a typical purchase funnel. This can allow you to visualize the user's journey from opening the app, interacting with a promotional notification or in-app message, and adding an item to their shopping cart.