Dashboard & Design

The pipeline is where all the work gains its value. The dashboard was built for a non-technical user — the restaurant manager — to deliver data that can guide real operational decisions. To avoid overwhelming the stakeholder, the dashboard is separated into 6 pages, each delivering a specific set of insights.

The design philosophy follows from that constraint. Dark background, high contrast, minimal labels. Color is used consistently and intentionally throughout — teal for actual revenue, blue for forecasts and targets, red for alerts and underperformance. A manager who has used the dashboard for two weeks should be able to read any page at a glance without thinking about the legend.

The dashboard runs on Power BI Desktop free license — a deliberate choice that kept the tool accessible for the restaurant without any subscription cost. That constraint shaped some technical decisions, particularly around refresh scheduling and the use of custom HTML Content visuals to achieve layouts that native Power BI components couldn't deliver.

All data shown has been anonymized for confidentiality.

Page 1 — Prévisions

The forecast page is the operational core of the dashboard — the first page the manager opens every Monday after the pipeline runs.

Weekly revenue forecast + KPI cards The main chart shows actual revenue (teal), the Prophet forecast (blue dashed), and the historical average (grey) side by side — giving the manager immediate context on whether the current season is tracking above or below expectations. Three KPI cards on the right display the forecast range for the upcoming week: maximum, expected, and minimum. The confidence interval is intentional — showing a range rather than a single number reflects honest uncertainty and helps the manager plan for both scenarios. The weather card shows forecasted temperature and precipitation for the week, the two strongest weather regressors in the model.

Hourly revenue heatmap The heatmap shows expected revenue distribution by day of week and hour of service, derived from Model 3. The manager can select any month on the left axis to see how the hourly pattern shifts — Saturday at 19h in August looks very different from Saturday at 19h in January. This is where the sunset effect discovered in the data becomes directly actionable.

Food and drink forecast panel A custom HTML Content visual — not a native Power BI component — that breaks the weekly forecast into food and drink categories. For each category it shows expected revenue, an estimated number of items to prepare, and a median price per item. This panel exists because a revenue number alone doesn't tell the kitchen how much to order. Translating dollars into estimated covers and portions is the last mile between forecast and operational decision.

Page 2 — Suivi des ventes

The sales tracking page is the operational review tool — where the manager looks back at what actually happened rather than what was predicted.

Slicers — season and week Two filters at the top control the entire page. The manager can select a specific season or drill into a specific week to compare performance across any time period. Keeping the filters at the top makes the page fully self-service — no data knowledge required to navigate it.

KPI cards Four cards give an immediate read on the selected period: total sales in dollars, total number of transactions, average revenue per night compared to the seasonal objective, and total sales versus the same period target. The green color signals above objective, making the performance status readable in under a second.

Hourly heatmap + transaction KPIs The heatmap shows actual revenue by day of week and hour — the same structure as the forecast heatmap on page 1, but with real data. It doubles as an interactive selector: clicking any cell filters the two KPI cards at the bottom to show total sales and transaction count for that specific day/hour combination. This makes it easy to answer questions like "how much did we do on Saturday at 19h this winter" without any additional filtering.

Season vs last year chart A weekly bar chart overlaying the current season against the same period last year. This gives the manager a seasonal growth signal that a single number can't provide — seeing whether the current season is consistently ahead or behind last year, week by week.

Page 3 — Performance du personnel

The staff performance page answers the management questions that raw sales numbers can't — not just how much was sold, but who sold it, how efficiently, and what their selling pattern looks like compared to the team.

Slicers — season, week, server Three filters control the page. The server slicer is the key one — it lets the manager focus on a single server to review their individual performance in detail, or leave it on "All" for a full team overview.

KPI cardsFive cards give a complete performance profile for the selected server or period:

  • Average bill value versus team average — is this server upselling effectively?

  • Revenue per service hour versus team average — the most meaningful productivity metric on the page

  • Total staff revenue for the period

  • Estimated service hours — derived from the gap between first and last transaction per shift, as documented in the dbt section

  • Top selling item for the selected period

The revenue per service hour metric doesn't exist anywhere in the POS — it's entirely derived from transaction timestamps in mart_staff_performance. It gives the manager a productivity signal that goes beyond total revenue, accounting for the fact that some servers work longer shifts than others.

Revenue by server The bar chart ranks all servers by total revenue for the selected period — anonymized here for confidentiality. A quick read on who is driving the most revenue across the selected timeframe.

Category mix vs team average The chart shows what percentage of each server's sales came from each category, overlaid against the team average. A server whose drink sales are significantly below team average is a coaching opportunity. The individual vs team comparison is only meaningful because both lines are always visible simultaneously.