Bird
Raised Fist0
Tableaubi_tool~10 mins

Rolling period calculations in Tableau - Cell-by-Cell Formula Trace

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
Sample Data

Daily sales data for five consecutive days in January 2024.

CellValue
A1Date
B1Sales
A22024-01-01
B2100
A32024-01-02
B3150
A42024-01-03
B4200
A52024-01-04
B5130
A62024-01-05
B6170
Formula Trace
WINDOW_SUM(SUM([Sales]), -2, 0)
Step 1: SUM([Sales]) at 2024-01-01
Step 2: WINDOW_SUM(SUM([Sales]), -2, 0) at 2024-01-01
Step 3: SUM([Sales]) at 2024-01-02
Step 4: WINDOW_SUM(SUM([Sales]), -2, 0) at 2024-01-02
Step 5: SUM([Sales]) at 2024-01-03
Step 6: WINDOW_SUM(SUM([Sales]), -2, 0) at 2024-01-03
Step 7: SUM([Sales]) at 2024-01-04
Step 8: WINDOW_SUM(SUM([Sales]), -2, 0) at 2024-01-04
Step 9: SUM([Sales]) at 2024-01-05
Step 10: WINDOW_SUM(SUM([Sales]), -2, 0) at 2024-01-05
Cell Reference Map
Sales
Sales
Sales
Sales
Sales
The formula uses sales values from the current and previous two dates to calculate the rolling sum.
Result
     A          B          C
1  Date       Sales    Rolling Sum
2  2024-01-01  100         100
3  2024-01-02  150         250
4  2024-01-03  200         450
5  2024-01-04  130         480
6  2024-01-05  170         500
Column C shows the rolling sum of sales for the current day and the two previous days.
Sheet Trace Quiz - 3 Questions
Test your understanding
What is the rolling sum value on 2024-01-03?
A450
B200
C350
D300
Key Result
WINDOW_SUM(SUM([Measure]), -N, 0) calculates a rolling sum over the current and previous N rows.

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