Interactive Power BI dashboard built using real-world food delivery data to analyze customer behavior, restaurant performance, delivery operations, and business KPIs using Power BI, Power Query, DAX, and advanced data visualization techniques.
This project transforms raw food delivery data into actionable business insights through an interactive and visually rich Power BI dashboard.
The dashboard helps stakeholders:
- Monitor revenue and operational performance
- Analyze customer behavior and retention
- Evaluate restaurant and cuisine performance
- Track delivery efficiency and cancellations
- Support data-driven business decisions
🚀 Live Interactive Dashboard
Provides a high-level summary of business performance and operational KPIs.
- Total Revenue Analysis
- Order Trends
- Revenue Trends
- City-wise Revenue Distribution
- Top Performing Restaurants
- Order Status Analysis
- Total Orders
- Total Revenue
- Average Order Value
- Average Delivery Time
Analyzes customer behavior, retention, and engagement trends.
- Repeat Customer Analysis
- Customer Retention Tracking
- Orders Per Customer
- New vs Returning Customers
- Customer Signup Trends
- Identifies loyal customers
- Improves retention strategies
- Enhances customer engagement analysis
Provides detailed insights into restaurant growth, cuisine popularity, and customer preferences.
- Top Performing Restaurants
- Revenue by Restaurant
- Cuisine Analysis
- Rating Analysis
- Cost Bucket Analysis
- Total Restaurants
- Average Rating
- Average Votes
- Revenue per Restaurant
- Identifies high-performing cuisines
- Evaluates restaurant revenue contribution
- Supports partnership and pricing strategies
Tracks operational efficiency and delivery performance.
- Late Delivery Analysis
- Cancellation Tracking
- Delivery Time Trends
- City-wise Delivery Performance
- Customer Order Behavior
- Late Orders
- Cancelled Orders
- Average Delivery Time
- Late Delivery Percentage
- Improves delivery efficiency
- Reduces operational delays
- Optimizes logistics planning
Provides detailed restaurant-level operational and revenue analysis.
- Revenue Trends
- Orders Trends
- Cuisine-wise Orders
- New vs Repeat Customers
- Restaurant KPI Monitoring
- Tracks restaurant growth
- Evaluates customer loyalty
- Supports menu optimization
Advanced KPI comparison and dynamic business analysis dashboard.
- Dynamic KPI Selection
- Revenue vs Rating vs Cost Analysis
- Comparative Business Metrics
- Trend Analysis
- Supports strategic decision-making
- Enables advanced business comparisons
- Enhances KPI monitoring
- Power BI
- Power Query
- DAX (Data Analysis Expressions)
- Microsoft Excel
- Data Modeling
- Data Visualization
Data Collection
↓
Data Cleaning using Power Query
↓
Data Transformation
↓
Data Modeling
↓
Relationship Building
↓
Calculated Columns Creation
↓
DAX Measures Development
↓
Dashboard Development
↓
Interactive Filters & Slicers
↓
Final Dashboard Formatting
The project follows a structured data model using:
- Fact Tables
- Dimension Tables
- Relationships
- Star Schema Modeling
Cost Bucket =
SWITCH(
TRUE(),
Restaurants[CostForTwo] < 500, "Budget",
Restaurants[CostForTwo] < 1000, "Mid Range",
"Premium"
)
Rating Bucket =
SWITCH(
TRUE(),
Restaurants[Rating] >= 4.5, "Excellent",
Restaurants[Rating] >= 4.0, "Good",
Restaurants[Rating] >= 3.0, "Average",
"Low"
)
Delivery Status =
IF(Orders[DeliveryTimeMins] > 45, "Late", "On Time")
Total Orders =
COUNT(Orders[OrderID])
Total Revenue =
SUM(Orders[OrderValue])
Avg Order Value =
DIVIDE([Total Revenue], [Total Orders])
Avg Delivery Time =
AVERAGE(Orders[DeliveryTimeMins])
Total Customers =
DISTINCTCOUNT(Orders[CustomerID])
Total Restaurants =
DISTINCTCOUNT(Restaurants[RestaurantID])
Repeat Customers =
COUNTROWS(
FILTER(
VALUES(Orders[CustomerID]),
CALCULATE(COUNT(Orders[OrderID])) > 1
)
)
Repeat Customer % =
DIVIDE([Repeat Customers], [Total Customers])
Orders Per Customer =
DIVIDE([Total Orders], [Total Customers])
Late Orders =
CALCULATE(
[Total Orders],
Orders[Delivery Status] = "Late"
)
Cancelled Orders =
CALCULATE(
[Total Orders],
Orders[OrderStatus] = "Cancelled"
)
Late Delivery % =
DIVIDE([Late Orders], [Total Orders])
Cancellation % =
DIVIDE([Cancelled Orders], [Total Orders])
- Identified high-performing restaurants and cuisines
- Analyzed customer retention and repeat behavior
- Evaluated delivery efficiency and operational delays
- Tracked cancellation trends across cities
- Compared revenue performance across pricing categories
- Monitored customer spending behavior
- Evaluated restaurant ratings and customer satisfaction
This dashboard helps businesses:
- Improve operational efficiency
- Optimize delivery performance
- Monitor restaurant growth
- Understand customer behavior
- Increase customer retention
- Support data-driven business decisions
- Improve logistics and operational planning
- Data Cleaning & Transformation
- Data Modeling
- DAX Calculations
- Business Intelligence
- Dashboard Development
- Data Visualization
- KPI Development
- Time-Series Analysis
- Business Analytics
- Interactive Reporting
- Real-world Food Delivery Dataset from Kaggle
✅ Completed Successfully