Same Store Sales Growth
Compare sales performance for a consistent set of restaurants against the previous year.
An interactive reporting solution designed to monitor daily sales performance across a restaurant network, analyse trends and compare results across restaurants, franchisees and sales channels.
This project brings daily sales and operational indicators into one interactive Power BI reporting experience. It helps stakeholders monitor performance, follow trends and compare results across the restaurant network.
The solution combines SQL data preparation, Power Query transformations, data modeling and DAX measures to turn raw data into decision-ready reporting.
The objective was to centralize daily restaurant performance monitoring in an interactive report and make it easier to identify variations that require further analysis.
Measures designed to support consistent performance monitoring and comparison.
Compare sales performance for a consistent set of restaurants against the previous year.
Track changes in transaction volumes across comparable restaurants.
Understand how revenue per transaction evolves over time.
Compare sales performance at restaurant level.
Monitor transaction activity across the restaurant network.
Keep track of reporting coverage across the restaurant network.
Interactive filters and breakdowns make it possible to move from a network overview to more detailed analysis.
A layered workflow separates extraction, transformation, modeling, calculations and visualization.
Dim_Calendar.sqlDim_Channel.sqlDim_Store.sqlFacts_Daily_aggregate_indicators.sqlRevenue MDA PY =
CALCULATE(
SUM('Fact_KPI_Store_Day_Channel'[Y1REVENUE_HT]),
'Fact_KPI_Store_Day_Channel'[MDAY0Y1] = "MDA"
)Revenue MDA =
CALCULATE(
SUM('Fact_KPI_Store_Day_Channel'[Y0REVENUE_HT]),
'Fact_KPI_Store_Day_Channel'[Y0REVENUE_HT] <> 0,
'Fact_KPI_Store_Day_Channel'[Y0REVENUE_HT] <> BLANK(),
'Fact_KPI_Store_Day_Channel'[MDAY0Y1] = "MDA"
)SSSG =
[Revenue MDA] / [Revenue MDA PY] - 1Transaction MDA =
CALCULATE(
SUM('Fact_KPI_Store_Day_Channel'[Y0NBINVOICES]),
'Fact_KPI_Store_Day_Channel'[Y0NBINVOICES] <> 0,
'Fact_KPI_Store_Day_Channel'[Y0NBINVOICES] <> BLANK(),
'Fact_KPI_Store_Day_Channel'[MDAY0Y1] = "MDA"
)Transaction MDA PY =
CALCULATE(
SUM('Fact_KPI_Store_Day_Channel'[Y1NBINVOICES]),
'Fact_KPI_Store_Day_Channel'[MDAY0Y1] = "MDA"
)SSTG =
[Transaction MDA] / [Transaction MDA PY] - 1TM MDA =
[Revenue MDA] / [Transaction MDA]TM MDA PY =
[Revenue MDA PY] / [Transaction MDA PY]TM % =
[TM MDA] / [TM MDA PY] - 1Storeday =
SUM('Fact_KPI_Day_Store'[Y0NB_JOURRESTO])DPSA =
CALCULATE(
SUM('Fact_KPI_Store_Day_Channel'[Y0REVENUE_HT]) / [Storeday]
)WPSA =
[DPSA] * 7These DAX measures are provided for portfolio demonstration. Their results depend on the data model, relationships and filter context.
A closer look at the sales indicators, channel breakdowns and restaurant-level analysis available in the report.
Key sales indicators and headline performance metrics.
A breakdown of performance across sales channels.
Comparisons across restaurants and franchisees.
Additional sales performance indicators.
The reporting solution provides a centralized view of daily restaurant performance and helps stakeholders identify variations across the network.
This portfolio version uses synthetic data for confidentiality purposes. The dashboard structure, KPIs and analytical approach are representative of the original reporting solution developed in a professional environment.