What is Run Optimizer in Tableau?

Cody Schneider••8 min read

Nothing kills the momentum of a data BI session faster than a slow-loading Tableau dashboard. You’re ready for that "aha!" moment, but instead, you're stuck watching a loading icon spin. This article will show you how to use Tableau's built-in Run Optimizer to diagnose exactly what’s causing the lag and how to fix it.

GraphedGraphed

Build AI Agents for Marketing

Build virtual employees that run your go to market. Connect your data sources, deploy autonomous agents, and grow your company.

Watch Graphed demo video

What is Run Optimizer, and Why Bother?

Tableau’s Run Optimizer is a native performance recording tool that acts like a diagnostic scan for your workbook. When you enable it, Tableau meticulously logs every single action that happens behind the scenes as you interact with your dashboard - from the queries sent to your database to the time it takes to render a chart. Once you stop the recording, Tableau presents you with a detailed new workbook that breaks down this activity, showing you precisely which actions are eating up the most time.

Think of it as a doctor’s stethoscope for your dashboard. Instead of just guessing that "the filters are slow," you can see that a specific quick filter on a high-cardinality dimension is generating a query that takes 12 seconds to execute every single time a user clicks it. This level of detail transforms performance tuning from a guessing game into a methodical process.

Slow dashboards aren't just a minor annoyance, they're a direct barrier to a data-driven culture. When a dashboard is sluggish:

  • User adoption plummets. If your sales team has to wait 30 seconds for a dashboard to update every time they filter for a new region, they'll eventually stop using it and go back to old spreadsheets.
  • Decision-making stalls. The "flow" of analysis is broken by long pauses, making it harder for users to ask follow-up questions and explore data organically.
  • Confidence erodes. People start to question the reliability and usability of the entire analytics setup, leading back to gut-feel decisions.

Using the Run Optimizer is the first step in turning a frustrating user experience into a seamless and empowering one.

How to Use Run Optimizer: A Practical Guide

Using the Run Optimizer is straightforward, but knowing how to interpret the results is where the real value lies. Let's walk through the process from start to finish.

Free PDF · the crash course

AI Agents for Marketing Crash Course

Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.

Step 1: Start the Performance Recording

Before you do anything else, you need to tell Tableau to start listening. Starting a performance recording is as simple as a few clicks.

Navigate to Help → Settings and Performance → Start Performance Recording.

Once you click this, nothing on your screen will visually change, but Tableau is now actively logging every event in the background. Don't worry, this doesn't significantly impact performance while it’s running, so the results will be accurate.

Step 2: Recreate the Sluggish Action

This is the most important step. With the recording active, interact with your workbook in the exact way that your users do - specifically, perform the action that feels slow. A few examples include:

  • Loading the dashboard for the first time.
  • Selecting a value from a slow drop-down filter.
  • Changing a date parameter.
  • Clicking on a chart that triggers a filter action on another sheet.

It's best to perform the action and wait for it to complete fully before you stop the recording. This will give you a clean, isolated view of the bottleneck.

Step 3: Stop the Performance Recording

Once you’ve completed the action you want to test, go back to the menu and click Help → Settings and Performance → Stop Performance Recording.

The moment you click stop, Tableau will automatically open a new, temporary workbook titled "PerformanceSummary." This is your diagnostic report.

GraphedGraphed

Build AI Agents for Marketing

Build virtual employees that run your go to market. Connect your data sources, deploy autonomous agents, and grow your company.

Watch Graphed demo video

Step 4: Analyze the Performance Summary Dashboard

The Performance Summary workbook can look intimidating at first, but it's organized into three key sections that are easy to understand once you know what to look for.

The Timeline View

At the top of the dashboard is a Gantt chart that visually represents all the events that occurred during your recording, ordered by when they happened. The length of each bar corresponds to its duration. This is where you can immediately spot the troublemakers.

  • Executing Query (Dark Blue): This is the time Tableau spent waiting for the data source to execute a query and return the results. Long blue bars are almost always the primary cause of slow performance. This is your number one area to investigate.
  • Computing Layouts (Orange): This represents time spent by Tableau arranging the visual elements of a worksheet or dashboard. It can sometimes be long if you have a very complex table with many rows and columns.
  • Connecting to Data Source (Teal): The initial handshake between Tableau and your data source. This should usually be very brief after the initial connection.
  • Other (Gray): These are miscellaneous events like compiling queries or geocoding. They are typically not sources of major slowdowns.

The Events Table

Directly below the timeline is a table that provides the raw data for all the recorded events. The best practice here is to sort the table by Duration (ms) in descending order. This immediately brings the longest-running events to the top. This simple sort is often all you need to pinpoint the exact action that’s dragging your dashboard down.

The Query View

This is where you find your smoking gun. Click on any "Executing Query" event in the events table. A new section will appear at the bottom of the dashboard displaying the full query that Tableau generated and sent to your data source - most often, this will be SQL.

Even if you don't read SQL, you can often spot the problem just by looking at the query. You might see a reference to the slow filter you clicked or a mention of a complex calculation you wrote. For those who are more technical, this is a goldmine. You can copy this query and run it directly against your database to analyze its execution plan and work with a database administrator (DBA) to get it optimized, perhaps by adding an index.

Common Problems Exposed by Run Optimizer (And How to Fix Them)

Once you've run the Optimizer, you'll likely encounter one of a few common culprits. Here’s what they are and how to approach fixing them.

1. Complex Filters on "Live" Connections

The Symptom: A specific quick filter takes many seconds to update. In the Optimizer's timeline, you see a long "Executing Query" bar appear every time you use that filter.

The Cause: The filter is running a query on a large, unindexed column in your live database. This is common with free-text fields or unique IDs with millions of distinct values (high cardinality).

The Fixes:

  • Create an Extract: If the data doesn't need to be absolutely real-time, creating a Tableau Extract is the single most effective performance fix. Extracts pre-aggregate and store the data in Tableau's fast in-memory engine, making filters nearly instantaneous.
  • Use Context Filters: If you have multiple filters, make one of them a context filter. This creates a temporary table that a subsequent filter runs against, dramatically reducing the scope of the slow query.
  • Use Custom Lists or Parameters: Instead of "show all values," set the filter to a custom value list, search box, or use a parameter if the list of choices is small.

Free PDF · the crash course

AI Agents for Marketing Crash Course

Learn how to deploy AI marketing agents across your go-to-market — the best tools, prompts, and workflows to turn your data into autonomous execution without writing code.

2. Too Many Worksheets on One Dashboard

The Symptom: The entire dashboard takes a long time to load initially.

The Cause: You have 10 worksheets on your dashboard, and when it loads, Tableau sends 10 different queries to your data source simultaneously. The combined load is what's causing the slowdown.

The Fixes:

  • Consolidate and Simplify: Can some of those worksheets be combined? Is every chart absolutely critical for the initial view? Pare your dashboard down to the essential KPIs.
  • Use Filter Actions: Design the dashboard so that detailed charts only appear after a user clicks on a high-level summary chart. This staggers the queries instead of firing them all at once.

3. Data Blending with Large Secondary Sources

The Symptom: Any interaction with a chart that uses blended data sources is extremely slow.

The Cause: Data blending requires Tableau to first execute a query on the primary data source, bring those results back, and then send a separate query to the secondary data source. If the secondary source contains a lot of data, this aggregation step can be very slow.

The Fixes:

  • Join or Relate the Data Instead: The best fix is to avoid blending altogether. Use Tableau's Relationships (the "noodle") or push the join logic down to the database level by creating a view or using a tool like Tableau Prep before the data even gets to your workbook. This results in a single, more efficient query.

Final Thoughts

Tableau's Run Optimizer demystifies performance tuning by giving you a clear, actionable report on what’s happening under the hood. By identifying long-running queries through the performance summary, you can move from frustrating guesswork to targeted enhancements, creating a faster, more effective analytics experience for everyone.

While powerful tools like Tableau offer deep customization, they often require a hands-on approach to optimization. At Graphed, we simplify this entire process by rethinking dashboard creation itself. Since our platform builds dashboards from simple, natural language prompts, we handle the complex query generation and optimization behind the scenes. This allows you to connect your data sources - like Google Analytics, Shopify, or Salesforce - and instantly see performant, real-time dashboards without ever having to debug a slow query, letting your team focus entirely on the insights, not the infrastructure.

Related Articles