Tableau 2020.1: Set Controls and Dynamic Parameters

The 2020.1 Release: Why This Matters

Tableau dropped version 2020.1 in February, and honestly, it’s one of the meatier releases in a while. Not just incremental improvements, but actual features that change how you build dashboards.

Two features in particular caught my attention: set controls and dynamic parameters. I’ve been testing them for the past few weeks, and they’re solving problems I’ve had to work around for years. Let me show you why these matter and how to use them.

Set Controls: Finally, Proper Multi-Select Filters

Imagine the problem: You want users to select multiple dimension values without using a clunky multi-select dropdown or parameter workaround. Before 2020.1, your options were limited and none of them were great.

Set controls fix this. They give users a clean interface to select multiple values, and the selections persist across dashboard actions. It’s what parameter controls should have been all along.

How Set Controls Work

Think of sets as dynamic filters that users can modify directly. Unlike parameters (which can only hold a single value), sets can contain multiple members of a dimension.

The basic workflow:

  1. Create a set based on a dimension
  2. Show the set control in your view
  3. Use the set in calculations or as a filter
  4. Users can add or remove values from the set interactively

Creating a Set Control: Step by Step

Step 1: Create Your Set

Right-click on any dimension (let’s use Category as an example) and select “Create” > “Set.” Give it a name like “Selected Categories.”

In the dialog, you can pre-select some initial values, but users will be able to change these later. For most use cases, I start with all values selected or none selected.

Step 2: Build Your Visualization

Create your chart as normal. Let’s say you have Sales by Product with Category as a dimension.

Step 3: Apply the Set as a Filter

Drag your set to the Filters shelf. Choose “In” to show only members that are in the set. Now your viz will respond to whatever users select in the set control.

Step 4: Show the Set Control

Right-click on the set in the Data pane and select “Show Set Control.” Choose your display style:

  • Single value list: Works like a standard filter, shows one value at a time
  • Single value dropdown: Compact version for limited space
  • Multi-value list: Checkboxes for each value (this is the good one)
  • Multi-value dropdown: Compact multi-select

The multi-value list with checkboxes is what most people want. It’s clean, obvious, and works on mobile.

Advanced Set Control Techniques

Using Sets in Calculations

Sets become powerful when you use them in calculated fields. Here’s a pattern I use constantly:

IF [Selected Categories] THEN
    [Sales]
ELSE
    NULL
END

This only shows sales for selected categories. You can get fancier:

// Highlight selected items
IF [Selected Categories] THEN
    "Selected"
ELSE
    "Not Selected"
END

Use this calculation to color your marks differently based on set membership.

Combined Sets

You can combine multiple sets using set actions (more on this in a minute). This lets users build complex filters through interaction rather than configuration.

Example: One set for Category, another for Region. Users can select values from both, and your viz updates to show only items matching both sets.

Set Actions: The Real Game Changer

Here’s where it gets interesting. Set actions let you populate sets based on user interaction with the dashboard.

Go to Dashboard > Actions > Add Action > Change Set Values.

Configure it like this:

  • Source sheet: The viz users will click on
  • Target set: The set you want to populate
  • Run action on: Select (when user clicks)
  • Clearing the selection will: Remove all values from set

Now when users click on your visualization, those values get added to the set. Other sheets using that set automatically update.

Real-world example: I built a dashboard with a map showing store locations. Clicking on stores adds them to a set. A separate table shows sales details for only the selected stores. No custom JavaScript, no URL actions—just Tableau.

Dynamic Parameters: Finally

Parameters have been static since forever. You define the list of values when you create the parameter, and that’s it. If your data changes, tough luck—you’re manually updating parameters.

2020.1 changes this. Parameters can now populate their values from a dimension field dynamically.

Setting Up Dynamic Parameters

Create a new parameter (or edit an existing one). When choosing the list of values, you now see three options:

  • All: The old behavior, manually typed values
  • List: Still manual, but better formatting
  • When workbook opens: Populate from a field (this is new!)

Choose “When workbook opens” and select your dimension field. The parameter will automatically include all distinct values from that field.

Important: It populates when the workbook opens, not continuously. If your data updates, users need to refresh the data source to see new parameter values.

Use Cases for Dynamic Parameters

Date Selection

Before 2020.1, date parameters were a pain. You had to manually add new months/years as time passed. Now you can populate a parameter from your Date dimension, and it automatically includes the latest dates in your data.

// Filter using dynamic date parameter
[Order Date] >= [Start Date Parameter]

Product Selection

Your product catalog changes frequently. With dynamic parameters, the selection list updates automatically:

// Show data for selected product
[Product Name] = [Product Parameter]

Customer/Account Selection

Great for account-specific dashboards where the list of customers grows over time.

Combining Dynamic Parameters with Calculations

Here’s a powerful pattern: Use a parameter to control which measure gets displayed.

Create a parameter with measure names (Sales, Profit, Quantity). Make it dynamic by pulling from a dimension that contains these strings.

Then create a calculation:

CASE [Measure Parameter]
WHEN "Sales" THEN [Sales]
WHEN "Profit" THEN [Profit]
WHEN "Quantity" THEN [Quantity]
END

Users can switch between measures using the parameter control, and the viz updates accordingly. Add this to a dashboard with multiple views, and you’ve got a measure switcher that affects everything at once.

Sets vs. Parameters: When to Use Which

Now that both are more powerful, which should you use?

Use Sets When:

  • Users need to select multiple values
  • You want interactive selection (clicking on marks)
  • You need to combine selections from multiple sources
  • Filtering dimensions is your primary goal

Use Parameters When:

  • Users select a single value
  • You need the value in calculations (measures, not dimensions)
  • You want to control behavior, not just filter data
  • You need the value accessible across different data sources

Use Both When:

You want complex dashboard behavior. Example: A parameter controls which measure to display, and sets filter which dimension values to include. Best of both worlds.

The Bottom Line

Set controls and dynamic parameters are the kind of features that make you wonder how you lived without them. They’re not flashy but they solve real problems that dashboard developers face every day.

Set controls finally give us proper multi-select filters with a clean UI. No more parameter hacks or custom extensions. Just native Tableau functionality that works everywhere.

Dynamic parameters eliminate the tedious maintenance of parameter lists. Your dashboards stay current with your data automatically.

If you’re still on 2019.x, these features alone make 2020.1 worth the upgrade. Start with a simple dashboard using a set control for category selection. Once you see how much cleaner it is than the old parameter workarounds, you’ll be sold.