Introduction
This week, we’re cooking up something a little different – waffle charts!
Your challenge is to build a report that compares actual sales to a dynamic monthly target and visualizes progress in a clean, impactful way.
Requirements
Get and Prepare Data
Start by downloading the CSV file provided. It contains 8 columns:
ORDERNUMBER
QUANTITYORDERED
PRICEEACH
ORDERLINENUMBER
SALES
ORDERDATE
YEAR_ID
PRODUCTLINE
Power Query Setup
Build four key tables in Power Query:
Source Data
Load the raw CSV file and ensure all 8 columns have the correct data types.Product Dimension
Create a lookup table with these columns:ProductKey
ProductLine
ProductCategory
(you can make this up or group product lines)
Sales Fact
Join the Source Data to the Product Dimension.
Add aDateKey
column (based onORDERDATE
) for joining to the Date table.Date Dimension
A calendar table spanning 2003–2005 with:DateKey
Year, Month, Month Name
Prior year/month flags or calculations
Waffle Table
Create a simple table with values from 1 to 100 to use in the waffle chart.
Create Key Measures
You’ll need a few core calculations:
Base Measures
Sales
Prior Month Sales
Target
(Prior Month Sales + 2%)
Comparison Metrics
Target Variance (Absolute)
Target Variance %
Formatting Measures
Use currency formatting (abbreviate with K/M/B)
Apply conditional text labels (e.g., “On Track” / “Behind Target”)
Color Logic Measures
Conditional colors for waffle chart squares
Use blue/red/green to reflect performance status
Labels/Dynamic Titles
Titles should update based on slicer/filter context
Build the Report
Your visuals should include:
Performance Cards
Show Sales, Target, and Variance with conditional formatting.10×10 Waffle Chart
Visualize the % of target achieved. Each square = 1%.Slicers
Add slicers for:Year
Month
ProductLine
Dynamic Text Box
Add commentary that changes based on selections (e.g., “Sales in July for Classic Cars exceeded target by 5%!”)
Formatting Tips
Make it clean and cohesive:
Use conditional colors throughout (blue = on track, red = below, green = above)
Keep chart backgrounds transparent with subtle borders
Apply currency formatting with abbreviations for readability
Document Your Model!
You might notice a second tab in the report (above) that includes detailed information about the tables and measures that are included! Now – let’s bring model documentation together with waffles 😉
When I build a Power BI report, I think of it like making the perfect waffle – you can’t just throw ingredients together and hope for the best. You need a good recipe, and just as importantly, you need to write it down so others can follow it, tweak it, or make it again later.
The data model is like a waffle iron:
- The tables are the compartments that give the model structure
- The measures are the heating elements that make it all work
So when I built this week’s report, I treated it like a proper recipe. I documented each piece of the model so anyone looking at it, whether now or six months from now, can understand what’s going on and why.
Here’s how I approached it:
- Each table includes an “ingredient list” that explains its purpose in the model
- Every measure has a clear set of “cooking instructions”—a breakdown of the calculation logic and what the measure is meant to show
- I also added documentation tables using the SUMMARIZE and INFO functions to catalog all the key pieces in one place
Think of those tables as your master recipe book. They tell the full story of what’s in the model and how it all fits together. No secrets, no guesswork.
This kind of documentation turns a one-off report into something scalable and repeatable. It makes it easier for teammates (or future me!) to understand the model, build on it, and deliver consistent results—whether it’s a casual breakfast or a full-on executive brunch.
So yeah—waffles and Power BI might not seem related at first, but trust me: if you want great results every time, you need a recipe, and you need to document it.
Reminder
The most important requirement? Have fun. Whether you’re new to waffle charts or a seasoned Power BI pro, we want you to explore, experiment, and learn something new.
Dataset
Share
After you finish your workout, share on social media using the hashtags #WOW2025 and #PowerBI. Tag me (James) on LinkedIn, along with organizers Meagan, Kerry, and Shannon.
On Bluesky, tag @mmarie.bsky.social, @shan-gsd.bsky.social, and @merrykerry.bsky.social.