2025 Week 32 | Build a Waffle Chart using Core Visuals

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:

  1. Source Data
    Load the raw CSV file and ensure all 8 columns have the correct data types.

  2. Product Dimension
    Create a lookup table with these columns:

    • ProductKey

    • ProductLine

    • ProductCategory (you can make this up or group product lines)

  3. Sales Fact
    Join the Source Data to the Product Dimension.
    Add a DateKey column (based on ORDERDATE) for joining to the Date table.

  4. Date Dimension
    A calendar table spanning 2003–2005 with:

    • DateKey

    • Year, Month, Month Name

    • Prior year/month flags or calculations

  5. 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 MeaganKerry, and Shannon.

On Bluesky, tag @mmarie.bsky.social@shan-gsd.bsky.social, and @merrykerry.bsky.social.

Solution

Scroll to Top