Social Media Metrics Dashboard in Power BI

Data Analytics project 09

Social Media Metrics Dashboard in Power BI

Build a complete social media metrics dashboard portfolio project with documented metrics, reproducible DAX code, validation checks, and responsible interpretation.

Explore Data Analytics training in VizagView all project ideas

Business question

How can a dashboard compare engagement, click-through, video completion, and follower movement without mixing incompatible denominators?

Dataset and grain

A documented social-post fact table containing impressions, post reach, engagement components, link clicks, video starts and completions, and follower changes.

Requirements

Power BI Desktop with FactSocial at post-date grain and a related continuous DimDate table.

Method and validation checks

Build additive numerator measures, calculate rates with DIVIDE, activate date context through the model, and retain an explicit post-reach sum rather than calling it unique reach.

  • Engagement components share the same post grain
  • Each rate uses its correct denominator
  • Post Reach Sum is not described as unique people
  • Previous-month comparison uses the marked date table

Complete DAX code

Save the code as da_social_media_dashboard.dax. Review the stated model and field assumptions before using another dataset.

// Power BI model assumptions
// FactSocial: DateKey, PostID, Impressions, PostReach, Likes, Comments,
// Shares, Saves, LinkClicks, VideoStarts, CompletedViews,
// FollowersGained, FollowersLost
// DimDate[Date] 1-* FactSocial[DateKey]

Impressions =
SUM ( FactSocial[Impressions] )

Post Reach Sum =
SUM ( FactSocial[PostReach] )

Engagements =
SUMX (
    FactSocial,
    FactSocial[Likes] + FactSocial[Comments] +
    FactSocial[Shares] + FactSocial[Saves]
)

Engagement Rate by Impressions =
DIVIDE ( [Engagements], [Impressions] )

Link Clicks =
SUM ( FactSocial[LinkClicks] )

Link CTR =
DIVIDE ( [Link Clicks], [Impressions] )

Video Completion Rate =
DIVIDE ( SUM ( FactSocial[CompletedViews] ), SUM ( FactSocial[VideoStarts] ) )

Net Follower Change =
SUM ( FactSocial[FollowersGained] ) - SUM ( FactSocial[FollowersLost] )

Engagements Previous Month =
CALCULATE ( [Engagements], DATEADD ( DimDate[Date], -1, MONTH ) )

Engagement MoM % =
DIVIDE ( [Engagements] - [Engagements Previous Month], [Engagements Previous Month] )

// Post Reach Sum can double-count people reached by multiple posts.
// Use a platform-provided unique-account measure when account-level reach is required.

Build and run the project

Create the DAX measures in Power BI Desktop, validate them by post, then assemble KPI cards, trends, post rankings, and platform cuts.

  1. Confirm the source grain and field definitions.
  2. Reconcile record counts and additive totals.
  3. Validate rate denominators and date filters.
  4. Review outliers and missing values.
  5. Read the interpretation limits before sharing conclusions.

Expected analytical output

DAX measures for impressions, reach sum, engagements, engagement rate, link CTR, video completion, follower change, and month-over-month engagement.

Interpretation and responsible-use limits

Platform definitions, deduplication, privacy features, paid versus organic scope, and historical revisions can differ. Confirm source definitions before cross-platform comparison.

Ways to extend the project

Add platform-specific pages, paid and organic splits, benchmark bands, data freshness, content tags, accessible colours, and metric-definition tooltips.

Continue learning Data Analytics

Try the next project, return to the Softenant project library, or explore the Data Analytics course in Vizag for guided SQL, Excel, Power BI, Python, dashboard, and portfolio practice.