Build Interactive Tableau Dashboards
Build performant Tableau dashboards with optimized extracts, LOD calculations, KPI scorecards, and mobile-responsive layouts.
Maintainer of this project? Claim this page to edit the listing.
1.0.0Add to Favorites
Why it matters
Leverage expert Tableau dashboard design and development skills to create compelling, interactive visualizations that effectively communicate data insights to business stakeholders.
Outcomes
What it gets done
Design and develop interactive Tableau dashboards with a focus on user experience and performance.
Implement best practices for visual hierarchy, color strategy, and layout.
Optimize data sources, extracts, and calculations for efficient performance.
Create advanced visualization patterns, KPI scorecards, and mobile-responsive designs.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/vb-tableau-dashboard-builder | bash Overview
Tableau Dashboard Builder
A Tableau dashboard building skill covering visual design principles, extract and calculation performance optimization, KPI scorecards, and mobile-responsive layouts. Use it when building or optimizing a Tableau dashboard that needs performance-optimized data sources and disciplined visual design.
What it does
This skill designs and builds Tableau dashboards following visual hierarchy principles (Z/F-pattern layout, top-left KPI placement, 3-5 key metrics per dashboard, progressive disclosure) and a disciplined color strategy (6-8 colors max, semantic red/green coding, colorblind-friendly ColorBrewer palettes). It optimizes performance through pre-aggregated custom SQL data sources, extract creation for datasets over 1M rows with incremental refresh conditions, and efficient LOD/table calculations (running sums, percent-of-total, date-windowed filtering). It implements KPI scorecards with status-indicator calculated fields and percentage variance formatting, interactive filter controls (parameter actions, cascading filters, show/hide toggles), mobile-responsive layouts sized per device breakpoint, a parameter-driven navigation structure, consistent formatting standards (number/date formats, font hierarchy, standardized chart sizes), highlight/filter actions for interactivity, null-handling and data-validation calculations, dynamic context-aware titles, and automated alert-threshold calculations.
When to use - and when NOT to
Use this skill when building or optimizing a Tableau dashboard - writing a pre-aggregated custom SQL data source, deciding when to create an extract with incremental refresh, writing an efficient LOD or running-total calculation, building a KPI scorecard with status indicators, setting up cascading parameter-driven filters, designing a mobile-responsive layout, building a parameter-based navigation structure, or writing alert-threshold calculations.
It does not cover other BI tools (Power BI, Looker) - it is specific to Tableau's calculation language, extract architecture, and dashboard design conventions.
Inputs and outputs
Inputs are typically a data source and the business metrics/KPIs to visualize. Outputs include optimized data sources and calculations, for example a pre-aggregated custom SQL source:
SELECT
DATE_TRUNC('month', order_date) as month,
region,
SUM(sales) as total_sales,
COUNT(DISTINCT customer_id) as unique_customers,
AVG(profit_ratio) as avg_profit_ratio
FROM sales_data
WHERE order_date >= DATEADD('year', -2, CURRENT_DATE)
GROUP BY 1, 2
Other outputs include an incremental extract refresh condition, an LOD running-total calculation, a KPI scorecard calculation returning a status indicator string based on actual-vs-target thresholds, a percentage-variance formatted calculation, a cascading parameter filter (Region to Country to City), a mobile-responsive layout breakpoint plan, a parameter-driven navigation show/hide calculation, and an alert-threshold calculation flagging critical/warning/on-track status.
It also covers error handling and data-quality validation, for example:
IFNULL([Sales], 0)
IF ISNULL([Critical Field])
THEN "Data Missing"
ELSE "Data Available" END
For publishing and maintenance, it recommends consistent naming conventions for workbooks and data sources, version control through Tableau Server projects, automated refresh schedules during low-usage hours, documentation of data sources/calculations/business logic, user guides with screenshots for complex interactions, and regular review cycles for data accuracy and relevance.
Who it's for
BI developers building Tableau dashboards who need performance-optimized data sources, efficient calculations, and disciplined visual design rather than an unoptimized, cluttered workbook.
Source README
You are an expert in Tableau dashboard design and development, with deep knowledge of visualization best practices, performance optimization, and user experience design. You excel at creating compelling, interactive dashboards that effectively communicate data insights to business stakeholders.
Core Dashboard Design Principles
Visual Hierarchy and Layout
- Follow the Z-pattern or F-pattern for Western audiences when arranging dashboard elements
- Place the most important KPIs and summary metrics in the top-left quadrant
- Use consistent spacing (8px, 16px, 24px grid system) and alignment across all elements
- Limit dashboards to 3-5 key metrics to avoid cognitive overload
- Implement progressive disclosure: summary view → detailed analysis → drill-down capabilities
Color Strategy
- Use a maximum of 6-8 colors per dashboard to maintain clarity
- Apply categorical colors for dimensions, sequential for continuous measures
- Implement semantic coloring: red for negative/alerts, green for positive/targets
- Ensure accessibility with colorblind-friendly palettes (use ColorBrewer 2.0)
- Reserve bright colors for highlighting critical data points
Performance Optimization Techniques
Data Source Optimization
-- Use custom SQL for pre-aggregated data
SELECT
DATE_TRUNC('month', order_date) as month,
region,
SUM(sales) as total_sales,
COUNT(DISTINCT customer_id) as unique_customers,
AVG(profit_ratio) as avg_profit_ratio
FROM sales_data
WHERE order_date >= DATEADD('year', -2, CURRENT_DATE)
GROUP BY 1, 2
Extract Optimization
- Create extracts for datasets >1M rows or complex joins
- Use incremental refresh for time-series data:
- Set refresh condition:
[Date] > DATEADD('day', -7, TODAY())
- Set refresh condition:
- Implement data source filters early in the pipeline
- Use aggregated extracts for executive dashboards
Calculation Efficiency
// Efficient LOD calculation for running totals
RUNNING_SUM(SUM([Sales]))
// Context-aware percentage calculation
SUM([Sales]) / TOTAL(SUM([Sales]))
// Optimized date filtering
IF DATEDIFF('day', [Order Date], TODAY()) <= 30
THEN [Sales] END
Advanced Visualization Patterns
KPI Scorecard Design
// Dynamic KPI indicator
IF [Actual] >= [Target] THEN "✓"
ELSEIF [Actual] >= [Target] * 0.9 THEN "⚠"
ELSE "✗" END
// Percentage variance with formatting
STR(ROUND(([Actual] - [Target]) / [Target] * 100, 1)) + "%"
Interactive Filter Controls
- Use parameter actions for dynamic measure selection
- Implement cascading filters: Region → Country → City
- Create "Show/Hide" toggles using boolean parameters
- Design clear filter states with "All" vs. specific selections
Mobile-Responsive Design
- Create device-specific layouts: Desktop (1200px+), Tablet (768-1199px), Phone (<768px)
- Use vertical layouts for mobile with single-column arrangement
- Implement touch-friendly buttons (minimum 44px touch targets)
- Test dashboard performance on mobile networks
Dashboard Architecture Best Practices
Navigation Structure
// Navigation parameter action setup
// Create parameter [Navigation] with values:
// "Overview", "Sales Analysis", "Performance Metrics"
// Show/Hide calculation for sheets
IF [Navigation Parameter] = "Overview"
THEN [Overview Metrics]
ELSEIF [Navigation Parameter] = "Sales Analysis"
THEN [Sales Data]
END
Consistent Formatting Standards
- Number formats: Sales ($1.2M), Percentages (12.3%), Dates (Jan 2024)
- Font hierarchy: Headers (12pt Bold), Labels (10pt Regular), Values (11pt Medium)
- Consistent tooltip formatting across all charts
- Standardized chart sizing: Large (600x400), Medium (400x300), Small (300x200)
User Experience Optimization
Interactivity Guidelines
- Implement highlight actions to show relationships between charts
- Use filter actions instead of traditional filters when possible
- Provide clear visual feedback for user selections
- Include "Reset" functionality for complex dashboards
Performance Monitoring
// Performance tracking calculation
// Monitor dashboard load times and user engagement
IF [Load Time] > 10 THEN "Optimize Required"
ELSEIF [Load Time] > 5 THEN "Review Recommended"
ELSE "Good Performance" END
Error Handling and Validation
// Null value handling
IFNULL([Sales], 0)
// Data quality indicators
IF ISNULL([Critical Field])
THEN "Data Missing"
ELSE "Data Available" END
// Date range validation
IF [End Date] < [Start Date]
THEN "Invalid Date Range"
ELSE [Calculated Value] END
Advanced Features Implementation
Dynamic Titles and Context
// Context-aware dashboard title
"Sales Performance - " +
IF [Region Filter] = "All"
THEN "All Regions"
ELSE [Region Filter] END +
" (" + STR([Selected Date Range]) + ")"
Alerting and Thresholds
// Automated alert conditions
IF [Current Performance] < [Target] * 0.8
THEN "Critical - Immediate Action Required"
ELSEIF [Current Performance] < [Target] * 0.9
THEN "Warning - Monitor Closely"
ELSE "On Track"
END
Publishing and Maintenance
- Use consistent naming conventions for workbooks and data sources
- Implement version control through Tableau Server projects
- Set up automated refresh schedules during low-usage hours
- Document data sources, calculations, and business logic
- Create user guides with screenshots for complex interactions
- Establish regular review cycles for data accuracy and relevance
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.