1 · Too much data loaded
Every row and column in the data source is read, even if the view shows totals by month. Keep only the columns you use, filter old years out, and summarise data to the level the dashboard needs.
2 · A live connection to a busy database
Each click sends questions to a database that is also running the business. An extract, refreshed on a schedule, is often far faster.
3 · Too many sheets on one dashboard
Each sheet is a separate question to the data. Ten sheets means ten questions every time a filter changes. Split the dashboard or remove sheets nobody reads.
4 · Filters showing every value
Filters that list all values, especially "only relevant values", run extra queries. Use fewer filters, or ones that apply only when you press a button.
5 · Heavy calculations
Long text formulas, many IF statements and calculations that look at every row are recomputed on each click. Simplify them or move them into the data source.
6 · Detail-level calculations everywhere
Calculations that fix a level of detail are powerful but expensive. Use them where needed, not as a habit.
7 · Joins that multiply rows
A join to the wrong table can turn one million rows into ten million, and also makes totals wrong. Check row counts before and after each join.
8 · Huge tables shown on screen
A table with thousands of rows is slow to draw and hard to read. Show the top items and let people drill in.
9 · Large images and custom shapes
Big background images and many custom shapes slow the first load. Compress them or remove them.
10 · An overloaded Tableau Server
Sometimes the dashboard is fine and the server is not: too many refreshes at the same hour, or too little memory. Spread refresh schedules and check server load.
How to find your own causes
Tableau's built-in performance recording shows which step takes the time. Start with the slowest sheet and work down the list above.