Comprehensive and Detailed Explanation From Exact Extract:
The performance degradation originates from string parsing inside Tableau ("last word of Full Name") and then feeding that calculated field into another row-level IF-THEN calculation.
This creates:
Nested calculations
High per-row evaluation load
Slow extract query performance or slow live query generation
Tableau documentation recommends two best-practice approaches:
Solution 1: Precompute the “Last Name” field upstream (Option C)
When the parsing is performed in:
The database
ETL/ELT pipelines
Tableau Prep
then Tableau Desktop receives a clean field with no runtime computation needed.
This significantly reduces row-level calculation burden.
Solution 2: Replace Quick Filters with Action Filters (Option A)
Quick filters are expensive because Tableau:
Runs additional queries to populate filter controls
Re-queries every time the filter changes
Action Filters run directly from the visualization and are far more performant.
This improves the overall dashboard performance without changing logic.
Why the other options are incorrect:
B. Calculate “Last Name” inside the IF THEN calculation
This makes the expression even more complex — worse performance.
D. Change to a CASE statement
CASE does not improve performance when the heavy part of the logic is the string parsing, not the IF-THEN structure.
Thus, A and C are the correct performance-improving choices.
Performance guidance recommending upstream computation of string fields
Filter optimization best practices encouraging Action Filters over Quick Filters
Extract runtime cost reduction strategies