Back to Portfolio
Business Intelligence Power BI Audience Analytics · Email Marketing

AM Analytics
Power BI Report

A multi-page Power BI report built for the Audience Team to monitor email marketing performance across brands, deployment types, and promo codes. Covers send volume, opt-out trends, and promotional efforts — each with dedicated drill-down and drill-through pages and AI-generated insights and recommendations.

8 Report pages
3 Analytics modules
1.5M+ Deliveries tracked
10+ Brands monitored

AM Analytics is a comprehensive Power BI report designed for the Audience Team to track and analyse email campaign performance on a weekly basis. The report surfaces key engagement metrics — delivered volume, open rate, click rate, click-to-open rate, opt-outs, and subscription activity — across multiple brands, designations, and deployment types.

Each analytics module includes an Insights & Recommendation panel powered by AI, providing automated narrative summaries of weekly performance and actionable recommendations for stakeholders without requiring manual interpretation.

01

Send Volume Analytics

Monitors weekly email delivery volume with KPI cards (Total Delivered, Open %, Click %, Click-to-Open %), trend line, and top/bottom 20 deployment type tables. Includes delivery breakdowns by brand and designation.

Main
02

Send Volume Analytics Breakdown

Drill-down page showing granular row-level data — date, brand, designation, deployment type, title, total delivered, click rate, open rate, and click-to-open rate.

Drill-Down
03

Opt-Outs Analytics

Tracks weekly unsubscribe trends with KPI cards, opt-out trend line, and highest/lowest opt-out deployment type tables — broken down by brand and designation.

Main
04

Opt-Outs Analytics Breakdown

Drill-down page showing row-level opt-out data with date, brand, designation, deployment type, title, total opt-outs, and opt-out rate.

Drill-Down
05

Opt-Outs Alert Monitor

Compares current opt-outs vs monthly average and vs same day last month. Flags critical alerts to stakeholders when thresholds are exceeded, with a full historical monthly breakdown by brand.

Monitor
06

Promotional Efforts Analytics

Monitors promo code performance with KPIs for total, new, and renewed subscribers. Includes subscriber volume trends over time, top/bottom performing promo codes, and breakdowns by brand and product.

Main
07

Promotional Efforts Analytics Breakdown

Drill-down page showing promo code performance by brand, product type, product, promo code, total subscribers, new, and renewed counts.

Drill-Down
08

Promo Code Details

Drill-through page showing individual customer records for a selected promo code — date, product, subscription ID, customer ID, name, and renewal status.

Drill-Through

All pages support dynamic filtering via slicers. Common slicers are available across all modules; additional slicers are exclusive to the Promotional Efforts Analytics section.

Common slicers

Relative Date Date Range Brand Designation Deployment Type

Promotional Efforts exclusive

Product Type Product Status Promo Code

BI & Visualisation

Power BI DAX Power Query

Data & Analytics

Databricks SQL SQL Excel Omeda

Security & Access

Row-Level Security OAuth2 Power BI App Scheduled Refresh

Report Features

Drill-Down Drill-Through AI Insights Dynamic Slicers
🏢

Power BI App

Published as a dedicated Power BI App with controlled access. Users must request access from the report owner — ensuring only authorised Audience Team members can view the report.

🔐

Row-Level Security (RLS)

RLS applied at the app level to restrict data visibility per user role. Access is managed by the report owner, preventing unauthorised data exposure across teams.

🔗

OAuth2 + Databricks Connection

Connected to Databricks SQL Warehouse via OAuth2 authentication — providing secure, token-based access to the underlying data without storing credentials.

🔄

Daily Scheduled Refresh

Configured for automated daily refresh at 8:30 PM PHT — ensuring the Audience Team always works with the latest data without manual intervention.

The Power BI data model consists of two fact tables (Deployment Details and Promo Efforts) connected to a shared Dates Table for time intelligence, plus a Measures Table to centralise all DAX calculations.

Power BI Data Model

Power BI model view showing Deployment Details and Promo Efforts fact tables joined to a shared Dates Table via date keys.

Both Power BI datasets are powered by custom SQL queries written in Databricks SQL Warehouse. These scripts extract, join, and transform raw data from Omeda and internal tables into clean, report-ready datasets.

deployment_details.sql SQL · Databricks
SELECT DISTINCT
    CAST(sent_date_pt AS DATE)               AS sent_date
    , odd.brand
    , odd.email_subject                          AS title
    , odd.deployment_name
    , oot.type_name                              AS deployment_type
    , oot.DESIGNATION_NAME                       AS designation
    , odd.delivered_total
    , odd.opens_total
    , odd.opens_unique
    , odd.opens_rate
    , odd.clicks_total
    , odd.clicks_unique
    , odd.clicks_rate
    , odd.optouts_total
    , odd.optouts_rate
FROM
    schema.bi_analytics.v_deployment_details    AS odd
    INNER JOIN schema.virtual_db.omail_deployment  AS ood
        ON odd.deployment_name = ood.NAME
    INNER JOIN schema.virtual_db.omail_type  AS oot
        ON ood.DEPLOYMENT_TYPE_ID = oot.DEPLOYMENT_TYPE_ID
ORDER BY
    sent_date DESC
promo_efforts.sql SQL · Databricks
WITH base AS (
    SELECT
        ocp.PRODUCT_SUBSCRIPTION_ID
        , ocp.CUSTOMER_ID
        , ocp.PRODUCT_ID
        , ocp.PRODUCT_ORIGINAL_ORDER
        , ocp.VERIFICATION_DATE
        , ocp.PRODUCT_VERSION_TYPE
        , ocp.PRODUCT_PROMO_CODE
        , ocp.AMOUNT
        , DATEADD(month, 1, ocp.product_original_order)  AS month_after_original_order
    FROM
        schema.virtual_db.customer_product ocp
    WHERE
        NULLIF(ocp.PRODUCT_PROMO_CODE, '') IS NOT NULL
        AND ocp.PRODUCT_PROMO_CODE != 'Conv'
)

, brand_map AS (
    SELECT DISTINCT
        Brand_Finance
        , Brand_Abbr
    FROM
        schema.silver.brand_mapping
)

, demo AS (
    SELECT
        oc.CUSTOMER_ID
        , oc.FIRST_NAME
        , oc.LAST_NAME
    FROM
        schema.virtual_db.customer oc
)

SELECT
    b.product_subscription_id
    , b.customer_id
    , d.first_name
    , d.last_name
    , bm.Brand_Finance                           AS brand_map
    , op.Name                                    AS product
    , op.product_type_name                       AS product_type
    , CASE
        WHEN b.product_version_type = 'P' THEN 'Print'
        WHEN b.product_version_type = 'D' THEN 'Digital'
        WHEN b.product_version_type = 'B' THEN 'Both'
        ELSE b.product_version_type
      END                                          AS version_type
    , b.product_original_order                   AS original_order_date
    , b.verification_date
    , CASE
        WHEN DATEADD(year, 1, b.verification_date) <= CURRENT_DATE THEN 'Already 1YR'
        WHEN b.verification_date > b.month_after_original_order  THEN 'Renewed'
        WHEN b.verification_date <= b.month_after_original_order THEN 'New'
        ELSE 'Unknown'
      END                                          AS status
    , b.product_promo_code                       AS promo_code
    , b.amount
FROM
    base b
    INNER JOIN schema.virtual_db.product op
        ON b.PRODUCT_ID = op.PRODUCT_ID
    INNER JOIN demo d
        ON b.customer_id = d.customer_id
    LEFT JOIN brand_map bm
        ON UPPER(op.NAME) LIKE CONCAT('NL-', UPPER(bm.Brand_Abbr), '%')

Send Volume Analytics — Main Page

Send Volume Analytics

Weekly KPIs, delivered volume trend, top/bottom 20 deployment types, and AI-generated insights & recommendation panel.

Send Volume Analytics — Breakdown (Drill-Down)

Send Volume Breakdown

Row-level delivery data showing date, brand, deployment type, title, and all engagement metrics.

Opt-Outs Analytics

Opt-Outs Analytics

Weekly opt-out trend with highest/lowest deployment type tables.

Opt-Outs Breakdown

Opt-Outs Breakdown

Granular opt-out data with opt-out rate per deployment.

Opt-Outs Alert Monitor

Opt-Outs Alert Monitor

Critical alert flags comparing current opt-outs vs monthly average and same day last month, with full historical brand breakdown.

Promotional Efforts Analytics

Promotional Efforts Analytics

Subscriber KPIs, volume trends, and top/bottom promo code performance.

Promotional Efforts Breakdown

Promotional Efforts Breakdown

Promo code performance by brand, product, new vs renewed subscribers.

Promo Code Details — Drill-Through

Promo Code Details

Individual customer-level records for a selected promo code, accessible via right-click drill-through from the breakdown page.

End-to-end audience analytics visibility

AM Analytics consolidates email marketing performance data into a single, interactive Power BI report — giving the Audience Team instant visibility into delivery health, audience churn, and subscription growth without manual data preparation or spreadsheet reporting.

← Back to Portfolio