Oodles of Noodles (Power BI)

The Situation: 

Oodles of Noodles is a fictional collection of data related to its sales across the United States. It encompasses various attributes, such as revenue, customer preferences, shipment time, etc. Our goal is to transform their raw data into meaningful insights and recommendations for management. More specifically, we need to:

  • Track KPIs (revenue, meal kits sold, shipments, customer rating)
  • Compare regional and state-level performance
  • Identify high-value subscription plans and cuisine types

The Data:

We’ve been given a collection of raw data (CSV files), which contains information about shipments, returns, meal kits, customers, sales territories, and reviews, in a total of 9 tables, from the years 2020-21.

The Task:

We are tasked with using solely Microsoft Power BI to:

  • Connect and transform/shape the data in Power BI’s back-end using Power Query
  • Build a relational data model, linking the 9 fact and dimension tables
  • Create calculated columns and measures with DAX
  • Design a multi-page interactive dashboard to visualize the data in Power BI’s front-end

The Process:

1. Connecting and Shaping the Data

Firstly, we imported the data into the Power Query editor to transform and clean it. The process involved:

Removing Duplicates: Duplicate entries were removed from the dataset to ensure accurate analysis.

Handling Null or Missing Values: For some columns, missing values were replaced with defaults or averages. Null values in “key” columns were removed using filters.

Data Type Conversion: Columns were converted to appropriate data types to ensure consistency. Dates were converted to Date type, numerical columns to Decimal or Whole Numbers, and text columns to Text.

Column Splitting and Merging: Several columns were split to separate concatenated information or merged to create a unified name (such as Customer Full Name).

Standardizing Date Formats: All date columns were formatted consistently to facilitate time-based analysis. This step was important for ensuring accurate time-series analysis in Power BI.

Removing Unnecessary Columns: Irrelevant columns were removed to streamline the dataset. This helped focus the analysis on relevant information, reducing memory usage and improving performance.

2. Building a Relational Data Model

Secondly, we modeled the data to create a snowflake schema. This process involved creating relationships between the dimension and fact tables, ensuring cardinalities were one-to-many relationships. We enabled active or inactive relationships, created hierarchies for fields such as Geography (Continent-Country-Region) and Date (Start of Year-Start of Month-Start of Week-Date), and finally hid the foreign keys from the report view to ease the data analysis and visualization steps and reduce errors.

3. Creating Calculated Columns and Measures

Next, we used Power BI’s front-end formula language, DAX, to analyze our relational data model and create several calculated columns (for filtering) and measures (for aggregation) that we could later reference and use when analyzing and visualizing the data. We used calculated columns to determine whether a customer is active and a loyal member. The list of calculated measures includes key information on revenue, total shipments, reviews, SLA, and more.

4. Visualizing the Data

The final step of the project was creating a multi-page interactive dashboard, including a range of visuals and KPIs that could serve management and lead to informed decision-making. We used several visuals and tools to demonstrate and visualize the data across 4 report pages, including KPI cards, line and bar charts, matrices, gauge charts, and tree maps. We ensured the report was fully interactive and simple to navigate, with icons used to enable filters, cancel filters, and guide users to each report page with ease. Features such as drill-through, bookmarks, parameters, and tooltips were also used throughout the dashboard, further enhancing its usefulness and impact on management.

Executive Dashboard: The first report page provides a high-level view of Oodles of Noodles’ overall performance. We used card visuals to present Key Performance Indicators such as overall revenue, number of meal kits sold, total shipments, and average rating by customers. We also included additional cards to compare current and previous month performances, providing insights into recent trends, a clustered bar chart to show revenue by region, a gauge chart to display ratings by customers, and a tree map to display the top 5 subscription plans by revenue.

Region: The second report page is a drill-through page by region to further analyze the performance in a specific region. It consists of a bar chart that shows revenue by states in a region, a matrix to display cuisine types by the number of meal kits sold and average ratings, a gauge chart to analyze the SLA policy implementation, and a line chart that visualizes the trending revenue from 2020-2021 and highlights long-term performance. This offers insight into Oodles of Noodles’ sales distribution by region and state.

Subscription: The third report page focuses on detailed subscription-level analysis. It displays information such as average monthly shipping fee and total meal kits by subscription plan, a clustered bar chart to visualize loyalty member revenue by state, a matrix that displays the top 30 customers by revenue for the subscription plan, a decomposition tree that displays meal kits by region and month, and a line chart that displays month-on-month revenue trends for the years 2020-2021.

Customer Detail: The fourth and final report page provides deeper insight into customer behavior and value. It uses gauge charts to show revenue comparison for the current and last month and shipments for the current vs last month, a donut chart to show delayed vs on-time delivery to customers, a matrix for the number of meal kits, revenue, and shipments for customers, and a line chart that displays month-on-month revenue.