project
Power BI sales dashboard project with real retail data
A project brief you can build independently — star schema, DAX time intelligence and a written finding — with the review criteria and the questions an interviewer will ask about it.
By the Samyak faculty team · Published · 8 min read
Most Power BI portfolio projects are a flat table with six charts on top. They demonstrate that you can drag a field onto a canvas, which is not a skill anyone is hiring for.
This brief is built to demonstrate the thing that is — modelling — and to give you something you can defend under questioning.
The brief
Build a sales performance report over at least two years of retail transaction data, for a regional sales manager who wants to know where performance is moving and why.
The deliverable
A Power BI file containing:
- A documented star schema — fact and dimension tables, with a written note explaining why the model has the tables it does
- A proper date table, marked as a date table, covering the full range
- Time intelligence measures — year to date, prior year comparison, and a rolling three-month average
- An interactive report page with slicers and drill-through to transaction detail
- A one-page written summary of three findings, each stating what the number means and one caveat about it
That last item is the one people skip and the one that carries the most weight.
Constraints that make it worth doing
No flat table. Model it properly with separate fact and dimension tables, even though a flat table would work for this data volume. The point is to practise the structure that survives the second fact table.
No calculated columns where a measure would do. If you find yourself adding a column to make a visual work, stop and ask whether a measure would be correct instead. This is the most common cause of slow reports in real work.
Every measure must use variables where it improves readability. A measure nobody can read is a measure nobody can maintain, including you in three months.
Findings must state a caveat. “Sales in the west fell 12%” is incomplete. “Sales in the west fell 12%, though the region boundary changed in March, so part of this may be reclassification rather than decline” is an analyst’s answer.
Step by step
1. Profile the data before modelling it. Row counts, date range, null patterns, distinct values per column. Fifteen minutes here saves hours later.
2. Shape it in Power Query. Every cleaning step should be a query step, not a manual edit, so it replays on refresh.
3. Build the star schema. Fact table of transactions; dimensions for date, product, customer and region. Set relationship cardinality deliberately and leave cross-filter direction single unless you can articulate why not.
4. Create the date table. Generate it, do not import it. Mark it as a date table so time intelligence functions work correctly.
5. Write the measures. Base measures first — total sales, quantity, average order value — then time intelligence built on top of them rather than duplicating logic.
6. Design the report page. Start from the question the sales manager is asking, not from the visuals you want to use.
7. Write the summary. Three findings, each with a caveat.
How to review your own work
Before calling it finished, check each of these.
- Can you explain why every table exists and why every relationship points the way it does?
- Does your year-on-year measure return correct values for the first period in the data, where there is no prior year?
- What happens to your percentage measures when the denominator is zero?
- If you filter to a single product, do the totals still reconcile?
- Does the report load in under three seconds?
The interview questions this project invites
Build it well and you will be asked these. Have answers ready.
“Why a star schema and not one table?” Because a flat table cannot express two fact tables at different grains, and because filter propagation becomes ambiguous once relationships multiply.
“Walk me through your year-on-year measure.” Be ready to explain filter context and why the date table has to be marked as such.
“What does this dashboard not tell you?” The best answer in the whole interview. Every dashboard has blind spots — data quality issues, missing dimensions, a date range that excludes something relevant. Knowing yours is what separates an analyst from a report builder.
Extending it
If you want to go further: add row-level security so a regional manager sees only their region, then test it properly from each role’s perspective. That single addition takes the project from a portfolio piece to something that resembles production work, and almost nobody applying at entry level has done it.