Importing and Exporting Dashboards
Export dashboards as portable JSON files and import them into other companies or environments. This works for migrating between staging and production, or sharing dashboards across organizations.
What gets exported
Section titled “What gets exported”The export includes the dashboard and everything it needs:
| Component | Included | Notes |
|---|---|---|
| Dashboard | Yes | Layout, title, settings |
| Widgets | Yes | All widget configurations |
| Datasets | Yes | Table schemas and column info |
| Join tables | Yes | Mappable to existing join tables |
| Modified datasets | Yes | Mappable to existing modifiers |
| Filter variables | Yes | Including dynamic variables |
| Template links | No | Imported dashboards do not stay linked to templates |
| Data sources | No | Mapped by engine type during import |
| Filter views | No | User-specific views not included |
| Dashboard variable state | No | Current filter selections not included |
Exporting a dashboard
Section titled “Exporting a dashboard”From the Import / Export page
Section titled “From the Import / Export page”- Click Data Settings in the sidebar
- Select Import / Export
- In the Export section, choose a dashboard from the dropdown
- Click Download File to save as JSON, or Copy to Clipboard to copy the JSON text
The exported file will be named {dashboard_title}_export.json.
Importing a dashboard
Section titled “Importing a dashboard”Prerequisites
Section titled “Prerequisites”Before importing, your company needs:
- At least one data source with a matching engine type (e.g.,
postgresql,mysql,connectwise) - Permission to create dashboards and datasets (staff role or higher)
- Available dashboard slots within your tier limit
Import methods
Section titled “Import methods”| Method | Steps |
|---|---|
| File upload | Click Browse Files and select a JSON export file |
| Drag and drop | Drag a JSON file onto the drop zone |
| Clipboard | Click Paste from Clipboard to import copied JSON |
Import process
Section titled “Import process”-
Load the export file
- The dashboard title auto-populates from the export
- You can edit the title before importing
-
Map data sources
- The system detects which engine types the exported dashboard requires
- Auto-mapped: If you have exactly one data source of that type, it auto-selects
- Manual selection: If you have multiple matching sources, choose from the dropdown
- Missing: If no matching data source exists, add the integration first
-
Map filter variables, modifiers, and join tables (optional)
- Filter variables: Map to existing filter variables or create new ones. Compatible variables (matching type, mode, name, and column settings) appear in green.
- Modifiers: Map to existing data modifiers or create new ones. Matching modifier names appear in green.
- Join tables: Map to existing join tables or create new ones. Matching table names appear in green.
- Leave unmapped to create new copies automatically
-
Review and import
- Verify all data sources are mapped (green checkmarks)
- Click Import Dashboard
- The dashboard appears in your dashboard list
Data source mapping behavior
Section titled “Data source mapping behavior”The import handles data sources as follows:
- New datasets: Created if the table does not exist in your company
- Existing datasets: Reused if a table with the same name exists on the mapped source
- Repeated imports: Existing datasets with the same dataset ID are reused instead of imported again
- Join tables: Mappable to existing join tables or recreated with correct parent relationships
- Resync: New and updated datasets automatically resync after import
Imported dashboards are standalone copies. Template links from the export are removed during import, so the new dashboard does not stay connected to the original dashboard, widget, or calculation templates.
Filter variable mapping
Section titled “Filter variable mapping”Filter variables can be mapped to existing variables in your company during import. The UI shows candidate variables from your company, with compatible matches highlighted in green based on:
- Type and mode (e.g., Static Single-select, Dynamic Multi-select)
- Variable name
- Column configuration
- User metadata settings
Mapping behavior:
- Each source variable can map to at most one target variable
- Each target variable can only be selected once
- Create New: Select this option to create a copy of the filter variable
- Dynamic variables: When created new, dynamic filter variables do not preserve static values from the export (they populate dynamically from your data)
- Static variables: When created new, static filter variables preserve their predefined values from the export
If you map a filter variable, all references in calculations and widget filters automatically update to use the mapped target variable.
Modifier and join table mapping
Section titled “Modifier and join table mapping”During import, you can optionally map modifiers and join tables to existing ones in your company:
- Modifiers: Map exported modifiers to existing data modifiers to avoid creating duplicates. Matching modifier names appear in green.
- Join tables: Map exported join tables to existing join tables. Matching table names appear in green.
- Create New: Select this option for any item to create a new copy instead of mapping
- Default behavior: If left unmapped, new copies are created automatically
This is useful when:
- Importing the same dashboard multiple times into one company
- Migrating dashboards that reference shared modifiers or join tables
- Consolidating duplicate modifiers after importing from multiple sources
Use cases
Section titled “Use cases”Migrating between environments
Section titled “Migrating between environments”Export from staging, import to production:
- Export the dashboard from your staging company
- In production, ensure data sources with matching engine types exist
- Import and map to production data sources
Sharing across organizations
Section titled “Sharing across organizations”Send dashboard exports to other companies:
- Export the dashboard
- Share the JSON file securely
- Recipients import and map to their own data sources
Backup and version control
Section titled “Backup and version control”Export dashboards before major changes:
- Export as a snapshot
- Store the JSON file
- Re-import if you need to revert
Limitations and considerations
Section titled “Limitations and considerations”Data source matching
Section titled “Data source matching”- Mapping is by engine type, not specific source instance
- Multiple PostgreSQL sources require manual selection during import
- Missing engine types block import until resolved
Dataset conflicts
Section titled “Dataset conflicts”- If a table with the same name exists on the target source, it gets reused
- If the same dataset ID already exists in your company, import reuses it instead of creating a duplicate row
- Column differences are merged (new columns added, existing columns preserved)
- Original table metadata is not overwritten
Tier limits
Section titled “Tier limits”Import respects your tier limits:
- Dashboard count
- Widget count per dashboard
- Dataset count
- Modified dataset tools tier
- Dynamic filter variable count
Permissions
Section titled “Permissions”Importing requires:
- Staff role or higher
- Full dataset access to create new datasets
- Read/write access to any existing datasets being reused
Troubleshooting
Section titled “Troubleshooting””No data source found” error
Section titled “”No data source found” error”Add a data source with the required engine type before importing.
”Cannot map multiple source variables to the same target” error
Section titled “”Cannot map multiple source variables to the same target” error”Each target filter variable can only be selected once. If you need to map multiple source variables, either create new filter variables or map to different existing variables.
Import fails with permission error
Section titled “Import fails with permission error”Check that you have:
- Staff role or admin access
- Full dataset creation permissions (not read-only dataset access)
Dashboard imports but shows no data
Section titled “Dashboard imports but shows no data”Check that:
- Data sources are syncing correctly
- Datasets completed their initial resync after import
- Filter variables reference valid columns
Missing widgets or calculations
Section titled “Missing widgets or calculations”Check that your tier supports:
- The number of widgets in the exported dashboard
- Any modified dataset tools used (filters, virtual columns, etc.)