Apache Superset Cheat Sheet

Last Updated: November 21, 2025

📉 Apache Superset

Modern open-source business intelligence

Analytics Open Source

Installation & Setup

Docker Compose git clone https://github.com/apache/superset && cd superset && docker-compose up
pip install pip install apache-superset && superset db upgrade && superset init
Create Admin User superset fab create-admin
Load Examples superset load_examples
Start Server superset run -h 0.0.0.0 -p 8088 --with-threads
Default Port localhost:8088

Database Connections

Settings > Database Connections Add new database
Supported Databases PostgreSQL, MySQL, SQLite, BigQuery, Snowflake, Redshift, Presto, 40+ more
Connection String postgresql://user:pass@host:5432/database
Test Connection Click "Test Connection" before saving
SQLAlchemy URI Use SQLAlchemy format for connections
Install Drivers pip install psycopg2 (PostgreSQL), pymysql (MySQL), etc.

SQL Lab

SQL Lab Tab Top navigation > SQL Lab
New Tab Click "+" to open new query tab
Select Database Dropdown to choose database connection
Schema Selection Choose schema from dropdown
Table Browser Left panel shows tables and columns
Run Query Ctrl/Cmd + Enter or click "Run"
Run Selection Highlight SQL, then Ctrl/Cmd + Enter
Query History View past queries in history tab
Save Query Name and save for reuse
Visualize Results Click "Explore" to create chart from SQL results
Download CSV Export query results as CSV
Autocomplete Tab for table/column suggestions

Charts

Create Chart Charts > + Chart
Choose Dataset Select table or saved query
Chart Type 50+ visualizations: Line, Bar, Pie, Map, Sankey, Treemap, etc.
Time Series Line chart with time on X-axis
Big Number Single KPI display with trend
Table Tabular data with sorting
Pivot Table Multi-dimensional crosstab
World Map Choropleth for country-level data
Deck.gl Charts Advanced geospatial visualizations
Sankey Diagram Flow between categories

Chart Configuration

Query Section Left panel for data configuration
Dimensions Categorical columns for grouping
Metrics Aggregations: COUNT, SUM, AVG, MAX, MIN
Filters Add WHERE conditions
Time Grain Group by Second, Minute, Hour, Day, Week, Month, Year
Time Range Last day, week, month, year, or custom range
Row Limit Max rows to return (default 10,000)
Sort By Order results by column
Run Query Click "Create Chart" to execute and visualize

Dashboards

Create Dashboard Dashboards > + Dashboard
Edit Mode Click pencil icon to enter edit mode
Add Chart Your charts & dashboards > Drag chart to canvas
Resize Charts Drag corners to resize; grid-based layout
Add Markdown Components > Markdown for text/headers
Add Tabs Components > Tabs for multi-page dashboards
Dashboard Filters Add filter that applies to all charts
Cross-Filtering Click chart element to filter other charts
Save Dashboard Click "Save" in top right
Publish Save and exit edit mode for viewers

Filters

Chart Filters Query panel > Filters > Add filter
Filter Operators =, !=, >, <, IN, NOT IN, LIKE, IS NULL, IS NOT NULL
Simple Filter Column = Value
Advanced Filter SQL expression for complex conditions
Dashboard Filters Dashboard edit mode > Add filters
Filter Scope Choose which charts filter applies to
Time Filter Relative or absolute date ranges
Filter Box Legacy filter component (deprecated)

Datasets

Data > Datasets Manage tables available for charting
Add Dataset + Dataset > Select database > table
Virtual Dataset SQL query saved as reusable dataset
Edit Dataset Modify columns, metrics, calculated fields
Calculated Columns SQL expressions for derived fields
Certified Datasets Mark trusted datasets with checkmark
Sync Columns Refresh schema from source database

Metrics & Calculations

Simple Metric COUNT(*), SUM(column), AVG(column)
Custom Metric Dataset > Edit > Metrics > Add SQL metric
SQL Expression SUM(CASE WHEN status='complete' THEN 1 ELSE 0 END)
Percentage Metrics SUM(column) / COUNT(*) * 100
Certified Metrics Mark official KPIs with certification

Sharing & Permissions

Share Dashboard Dashboard > Share > Copy link
Embed Dashboard Share > Embed code (iframe)
Public Access Enable public role for no-login access
Manage Access Settings > Security > Manage roles and permissions
Row-Level Security Filter data based on user role
Download as PDF Dashboard > ... > Download as PDF
Email Reports Configure alerts/reports (Enterprise)

Performance & Caching

Query Caching Cache query results to improve load times
Cache Timeout Set in superset_config.py or database settings
Force Refresh Ctrl/Cmd + Shift + R to bypass cache
Async Queries Enable for long-running queries
SQL Lab Timeout Configure in superset_config.py
Pro Tips:
  • SQL Lab First: Develop queries in SQL Lab, then "Explore" to create charts
  • Virtual Datasets: Save complex SQL as virtual datasets for reusability
  • Certified Metrics: Pre-define KPIs in datasets so users use consistent calculations
  • Dashboard Filters: Add global filters (date, region) for interactive dashboards
  • Cross-Filtering: Enable on charts for drill-down analysis
  • Deck.gl for Maps: Use Deck.gl charts for advanced geospatial visualization
  • Row-Level Security: Implement RLS for multi-tenant dashboards
  • Docker for Production: Use docker-compose for easier deployment and scaling
← Back to Data Science & ML | Browse all categories | View all cheat sheets