Bird
Raised Fist0
Tableaubi_tool~8 mins

Rolling period calculations in Tableau - Dashboard Guide

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Dashboard Mode - Rolling period calculations
Business Question

How have sales changed over the last 3 months compared to previous months? This dashboard helps track recent sales trends using rolling 3-month totals.

Sample Data
MonthSales
2024-01100
2024-02150
2024-03200
2024-04180
2024-05220
2024-06210
Dashboard Components
  • KPI Card: Rolling 3-Month Sales Total (Latest Month)
    Formula: WINDOW_SUM(SUM([Sales]), -2, 0)
    Explanation: Sums sales for the current month and previous 2 months.
    Value for 2024-06: 220 + 210 + 180 = 610
  • Line Chart: Monthly Sales and Rolling 3-Month Total
    Measures:
    - Monthly Sales: SUM([Sales])
    - Rolling 3-Month Total: WINDOW_SUM(SUM([Sales]), -2, 0)
    X-axis: Month
    Y-axis: Sales values
    Shows how monthly sales and rolling totals change over time.
  • Table: Sales with Rolling 3-Month Total
    Columns: Month, Sales, Rolling 3-Month Total
    Rolling 3-Month Total formula same as above.
    Example row for 2024-04: Sales=180, Rolling Total=150+200+180=530
Dashboard Layout
+----------------------+-------------------------+
|      KPI Card        |      Line Chart          |
|  Rolling 3-Month     |  Monthly Sales & Rolling |
|  Sales Total (610)   |  3-Month Total Trend     |
+----------------------+-------------------------+
|                  Table: Sales with Rolling 3-Month Total            |
+---------------------------------------------------------------------+
Interactivity

A month filter allows selecting a range of months. When changed:

  • KPI Card updates to show rolling total for the latest selected month.
  • Line Chart updates to show data only for selected months.
  • Table updates to show rows only for selected months.

This helps focus on specific time periods.

Self Check

If you add a filter to show only months from 2024-03 to 2024-05, which components update and what is the KPI Card value?

  • All components update to show data only for these months.
  • KPI Card rolling total for 2024-05 is 180 + 220 + 210 = 610.
Key Result
Dashboard showing monthly sales and rolling 3-month sales totals to track recent sales trends.

Practice

(1/5)
1. What is the main purpose of a rolling period calculation in Tableau?
easy
A. To filter data based on a fixed date range
B. To calculate values over a moving window of past data points
C. To create a static total of all data points
D. To sort data alphabetically

Solution

  1. Step 1: Understand rolling period concept

    Rolling period calculations summarize data over a moving window, like last 3 months.
  2. Step 2: Identify purpose in Tableau

    Tableau uses rolling calculations to track recent trends dynamically, not fixed totals or sorting.
  3. Final Answer:

    To calculate values over a moving window of past data points -> Option B
  4. Quick Check:

    Rolling calculation = moving window summary [OK]
Hint: Rolling means moving window over recent data points [OK]
Common Mistakes:
  • Confusing rolling with fixed totals
  • Thinking rolling sorts data
  • Assuming rolling filters data
2. Which Tableau function is used to calculate a rolling sum over a window of data?
easy
A. RUNNING_SUM()
B. SUM()
C. WINDOW_SUM()
D. TOTAL()

Solution

  1. Step 1: Identify rolling sum function

    WINDOW_SUM() calculates sum over a specified window, perfect for rolling sums.
  2. Step 2: Differentiate from similar functions

    SUM() totals all data, TOTAL() sums entire partition, RUNNING_SUM() accumulates from start to current row, not a fixed window.
  3. Final Answer:

    WINDOW_SUM() -> Option C
  4. Quick Check:

    Rolling sum = WINDOW_SUM() [OK]
Hint: Use WINDOW_SUM() for sums over moving windows [OK]
Common Mistakes:
  • Using SUM() which sums all data
  • Confusing RUNNING_SUM() with rolling window
  • Using TOTAL() which sums entire partition
3. Given the Tableau calculation WINDOW_AVG(SUM([Sales]), -2, 0), what does it compute?
medium
A. Average of sales for the current and previous two rows
B. Average of sales for the next two rows only
C. Sum of sales for all rows
D. Average of sales for the current row only

Solution

  1. Step 1: Analyze WINDOW_AVG parameters

    WINDOW_AVG computes average over a window; -2 to 0 means from two rows before to current row.
  2. Step 2: Understand SUM inside WINDOW_AVG

    SUM([Sales]) aggregates sales per row, then WINDOW_AVG averages over the window of 3 rows.
  3. Final Answer:

    Average of sales for the current and previous two rows -> Option A
  4. Quick Check:

    Window from -2 to 0 = current + 2 previous rows [OK]
Hint: Negative start index means look back rows [OK]
Common Mistakes:
  • Thinking window looks forward only
  • Confusing sum and average
  • Ignoring window range parameters
4. You wrote this Tableau calculation for a 3-month rolling sum: WINDOW_SUM(SUM([Profit]), 0, 2). The results seem incorrect. What is the likely issue?
medium
A. SUM() cannot be used inside WINDOW_SUM()
B. The calculation needs to use RUNNING_SUM() instead
C. WINDOW_SUM() requires negative indices only
D. The window range is forward-looking, not backward-looking

Solution

  1. Step 1: Check window range meaning

    Range 0 to 2 means current row and next two rows, which looks forward, not backward.
  2. Step 2: Understand rolling sum intent

    Rolling sums usually look backward (previous periods), so range should be negative to zero, e.g., -2 to 0.
  3. Final Answer:

    The window range is forward-looking, not backward-looking -> Option D
  4. Quick Check:

    Rolling sum needs backward window range [OK]
Hint: Rolling sums usually use negative start index [OK]
Common Mistakes:
  • Using forward window range for rolling sums
  • Thinking SUM() is invalid inside WINDOW_SUM()
  • Confusing RUNNING_SUM() with rolling sum
5. You want to create a 6-month rolling average of sales in Tableau, but your data has missing months. Which approach ensures accurate rolling calculations?
hard
A. Use a continuous date axis and fill missing months with zero sales before applying WINDOW_AVG
B. Apply WINDOW_AVG directly on raw data without adjustments
C. Use RUNNING_SUM instead of WINDOW_AVG to ignore missing months
D. Filter out months with missing sales before calculation

Solution

  1. Step 1: Understand impact of missing months

    Missing months cause gaps, so rolling averages skip those periods, giving inaccurate results.
  2. Step 2: Fill missing months with zero sales

    Using a continuous date axis and filling missing months with zero ensures the rolling window covers all months evenly.
  3. Step 3: Apply WINDOW_AVG on adjusted data

    Now WINDOW_AVG calculates correctly over 6 months including zeros for missing months.
  4. Final Answer:

    Use a continuous date axis and fill missing months with zero sales before applying WINDOW_AVG -> Option A
  5. Quick Check:

    Fill gaps first for accurate rolling average [OK]
Hint: Fill missing dates with zeros before rolling average [OK]
Common Mistakes:
  • Ignoring missing months causing wrong averages
  • Using RUNNING_SUM which accumulates, not averages
  • Filtering out missing months, shrinking window size