Bird
Raised Fist0
Tableaubi_tool~10 mins

Difference and percent difference in Tableau - Interactive Code Practice

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
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to calculate the difference between sales of the current and previous month.

Tableau
SUM([Sales]) - LOOKUP(SUM([Sales]), [1])
Drag options to blanks, or click blank then click option'
A-1
B0
C1
D2
Attempts:
3 left
💡 Hint
Common Mistakes
Using 1 instead of -1 as offset.
Using 0 which returns the current row value.
Confusing the direction of offset.
2fill in blank
medium

Complete the code to calculate the percent difference between sales of the current and previous month.

Tableau
(SUM([Sales]) - LOOKUP(SUM([Sales]), [1])) / ABS(LOOKUP(SUM([Sales]), [1]))
Drag options to blanks, or click blank then click option'
A1
B0
C-1
D2
Attempts:
3 left
💡 Hint
Common Mistakes
Using 1 instead of -1 as offset.
Dividing by current sales instead of previous sales.
Not using ABS which avoids division by negative.
3fill in blank
hard

Fix the error in the calculation to correctly compute percent difference in sales.

Tableau
(SUM([Sales]) - LOOKUP(SUM([Sales]), [1])) / LOOKUP(SUM([Sales]), [1])
Drag options to blanks, or click blank then click option'
A0
B1
CABS
D-1
Attempts:
3 left
💡 Hint
Common Mistakes
Using positive offset which looks forward.
Using 0 which looks at current row.
Using ABS as offset which is invalid.
4fill in blank
hard

Fill both blanks to calculate the difference and percent difference between current and previous sales.

Tableau
Difference: SUM([Sales]) - LOOKUP(SUM([Sales]), [1])
Percent Difference: (SUM([Sales]) - LOOKUP(SUM([Sales]), [2])) / ABS(LOOKUP(SUM([Sales]), [2]))
Drag options to blanks, or click blank then click option'
A-1
B1
C0
D2
Attempts:
3 left
💡 Hint
Common Mistakes
Using different offsets for difference and percent difference.
Using positive offsets which look forward.
Using 0 which refers to current row.
5fill in blank
hard

Fill all three blanks to create a calculated field that returns percent difference formatted as a percentage string.

Tableau
ROUND(((SUM([Sales]) - LOOKUP(SUM([Sales]), [1])) / ABS(LOOKUP(SUM([Sales]), [2]))) * 100, [3]) + "%"
Drag options to blanks, or click blank then click option'
A-1
B0
C2
D1
Attempts:
3 left
💡 Hint
Common Mistakes
Using 0 or positive offsets which refer to current or next rows.
Not rounding or rounding to wrong decimal places.
Forgetting to multiply by 100 to get percentage.

Practice

(1/5)
1. What does the Difference calculation in Tableau typically show?
easy
A. The total sum of all values
B. The average value over time
C. How much a value changed between two points
D. The maximum value in a dataset

Solution

  1. Step 1: Understand the meaning of Difference

    Difference measures the change in value from one point to another, showing increase or decrease.
  2. Step 2: Compare with other options

    Sum, average, and maximum describe different calculations unrelated to change between points.
  3. Final Answer:

    How much a value changed between two points -> Option C
  4. Quick Check:

    Difference = Change amount [OK]
Hint: Difference = New value minus old value [OK]
Common Mistakes:
  • Confusing difference with total sum
  • Thinking difference shows average
  • Mixing difference with maximum value
2. Which of the following Tableau calculations correctly computes the percent difference between the current and previous value?
easy
A. ([Current Value] - [Previous Value]) / [Previous Value]
B. ([Previous Value] - [Current Value]) / [Current Value]
C. [Current Value] + [Previous Value] / [Previous Value]
D. [Current Value] * [Previous Value]

Solution

  1. Step 1: Recall percent difference formula

    Percent difference = (New - Old) / Old, showing change relative to original.
  2. Step 2: Match formula to options

    ([Current Value] - [Previous Value]) / [Previous Value] matches formula exactly; others either reverse or misuse operations.
  3. Final Answer:

    ([Current Value] - [Previous Value]) / [Previous Value] -> Option A
  4. Quick Check:

    Percent difference = (New - Old) / Old [OK]
Hint: Percent difference = difference divided by previous value [OK]
Common Mistakes:
  • Swapping numerator terms
  • Dividing by current value instead of previous
  • Using addition or multiplication instead of division
3. Given this Tableau calculated field:
LOOKUP(SUM([Sales]), 0) - LOOKUP(SUM([Sales]), -1)
What does this calculation return?
medium
A. The percent difference in sales between current and previous row
B. The total sales for all rows
C. The sum of sales for the previous row only
D. The difference in sales between the current and previous row

Solution

  1. Step 1: Understand LOOKUP function usage

    LOOKUP(SUM([Sales]), 0) returns current row sales; LOOKUP(SUM([Sales]), -1) returns previous row sales.
  2. Step 2: Calculate difference

    Subtracting previous from current gives the difference in sales between rows.
  3. Final Answer:

    The difference in sales between the current and previous row -> Option D
  4. Quick Check:

    LOOKUP difference = sales change [OK]
Hint: LOOKUP with offset -1 gets previous row value [OK]
Common Mistakes:
  • Thinking it calculates percent difference
  • Assuming it sums all sales
  • Confusing current and previous row values
4. You wrote this Tableau formula to calculate percent difference:
(SUM([Sales]) - LOOKUP(SUM([Sales]), -1)) / SUM([Sales])
But the results seem incorrect. What is the likely error?
medium
A. Not using WINDOW_SUM instead of SUM
B. Dividing by current sales instead of previous sales
C. Subtracting current sales from previous sales
D. Using LOOKUP with offset -1 incorrectly

Solution

  1. Step 1: Analyze denominator in formula

    The formula divides by SUM([Sales]) which is current sales, but percent difference should divide by previous sales.
  2. Step 2: Identify correct denominator

    Correct formula divides by LOOKUP(SUM([Sales]), -1) to get previous sales as denominator.
  3. Final Answer:

    Dividing by current sales instead of previous sales -> Option B
  4. Quick Check:

    Percent difference denominator = previous value [OK]
Hint: Divide by previous value, not current, for percent difference [OK]
Common Mistakes:
  • Using current value as denominator
  • Confusing subtraction order
  • Misusing LOOKUP offset
5. You want to create a Tableau dashboard showing monthly sales percent difference compared to the previous month. Which approach correctly calculates this and handles months with zero sales without errors?
hard
A. Use (SUM([Sales]) - LOOKUP(SUM([Sales]), -1)) / NULLIF(LOOKUP(SUM([Sales]), -1), 0) to avoid division by zero
B. Use (SUM([Sales]) - LOOKUP(SUM([Sales]), -1)) / SUM([Sales]) ignoring zero sales
C. Use SUM([Sales]) / LOOKUP(SUM([Sales]), -1) without subtraction
D. Use WINDOW_SUM(SUM([Sales])) - WINDOW_SUM(SUM([Sales])) for difference

Solution

  1. Step 1: Calculate percent difference with zero check

    Percent difference = (Current - Previous) / Previous; use NULLIF to avoid division by zero errors when previous sales are zero.
  2. Step 2: Evaluate options for correctness

    Use (SUM([Sales]) - LOOKUP(SUM([Sales]), -1)) / NULLIF(LOOKUP(SUM([Sales]), -1), 0) to avoid division by zero uses NULLIF to prevent errors; others either divide by current or ignore zero sales causing errors or wrong results.
  3. Final Answer:

    Use (SUM([Sales]) - LOOKUP(SUM([Sales]), -1)) / NULLIF(LOOKUP(SUM([Sales]), -1), 0) to avoid division by zero -> Option A
  4. Quick Check:

    Use NULLIF to handle zero denominator [OK]
Hint: Use NULLIF to prevent division by zero in percent difference [OK]
Common Mistakes:
  • Dividing by current sales instead of previous
  • Ignoring zero sales causing errors
  • Using sum differences without percent calculation