Supported BI Tools
Metabase
Open-source BI with native PostgreSQL support
Tableau
Industry-leading visualization platform
Looker
Modern business intelligence platform
Power BI
Microsoft’s enterprise BI solution
Hex
Collaborative data notebooks
Deepnote
Real-time collaborative notebooks
Connection Parameters
All BI tools connect to Materialize using these standard PostgreSQL parameters:| Parameter | Value |
|---|---|
| Database Type | PostgreSQL |
| Host | Your Materialize hostname (e.g., instance.region.aws.materialize.cloud) |
| Port | 6875 |
| Database | materialize |
| Username | Your Materialize user (email address) |
| Password | App-specific password (starts with mzp_) |
| SSL Mode | Require |
Metabase
Metabase is an open-source BI tool that makes it easy to create dashboards and visualizations.Setup
- In Metabase, click Add a database
- Select PostgreSQL as the database type
-
Configure the connection:
Field Value Display name MaterializeHost Your Materialize hostname Port 6875Database name materializeUsername Your Materialize user email Password Your app password ( mzp_...)SSL On (require) - Click Save
Connecting to a Specific Cluster
To connect to a specific cluster instead of the default:- After creating the connection, go to Connection details
- Navigate to Connection initialization settings
-
Under Bootstrap queries, add:
Refresh Rate
By default, Metabase dashboards refresh every 1 minute. You can set a faster refresh rate:- Add
#refresh=5to the dashboard URL for 5-second refresh - Or use
#refresh=1for 1-second refresh
Because Materialize maintains materialized views incrementally, frequent dashboard refreshes have minimal performance impact. We recommend adding indexes to objects queried by Metabase.
Tableau
Tableau supports Materialize through both Tableau Cloud and Tableau Desktop.Tableau Cloud
Connect directly using the PostgreSQL connector:- In Tableau Cloud, create a new data source
- Select PostgreSQL as the connector
-
Enter connection details:
Field Value Server Your Materialize hostname Port 6875Database materializeUsername Your Materialize user email Password Your app password Require SSL ✓ Checked - Click Sign In
Tableau Desktop
Setup
Tableau Desktop requires the PostgreSQL JDBC driver:- macOS
- Windows
- Linux
- Download the PostgreSQL JDBC driver
- Copy the
.jarfile to: - Create the directory if it doesn’t exist
- Restart Tableau Desktop
Connection
- In Tableau Desktop, go to Connect to a Server
- Select More → PostgreSQL
-
Enter connection details:
Field Value Server Your Materialize hostname Port 6875Database materializeAuthentication Username and Password Username Your Materialize user email Password Your app password Require SSL ✓ Checked - Click Sign In
Troubleshooting
If you see these errors, the JDBC driver wasn’t installed correctly:Configure Cluster
To use a specific cluster:Looker
Looker connects to Materialize using the PostgreSQL 9.5+ dialect.Setup
- In Looker, go to Admin → Connections
- Click Add Connection
-
Configure:
Field Value Dialect PostgreSQL 9.5+ Host Your Materialize hostname Port 6875Database materializeSchema publicUsername Your Materialize user email Password Your app password - Click Test then Connect
Known Limitations
1. Connection Test Warning
You may see this warning when testing the connection:This warning can be safely ignored. It occurs because Looker tests query cancellation using
pg_stat_activity, which Materialize doesn’t currently support.2. Symmetric Aggregates
Looker uses symmetric aggregates that rely on theBIT type, which Materialize doesn’t support.
Workarounds:
- Disable symmetric aggregates in your Looker project (documentation)
- Use non-symmetric aggregations (Looker remains fully functional)
- Contact Materialize support for optimization guidance
Configure Cluster
Power BI
Power BI is Microsoft’s business intelligence platform.Setup
- In Power BI Desktop, click Get Data
- Search for and select PostgreSQL database
-
Enter connection details:
Field Value Server instance.region.aws.materialize.cloud:6875Database materializeData Connectivity mode DirectQuery - Click OK
-
Enter credentials:
- Username: Your Materialize user email
- Password: Your app password
- Click Connect
Materialized Views Limitation
Power BI does not display materialized views in the table list (known limitation). Workarounds:-
Create a regular view:
Then use
my_view_biin Power BI. -
Use an indexed view instead:
-
Use Native Query Folding:
Troubleshooting
Error: “A non-recoverable error happened during a database lookup”- Check the server name format (should be
host:6875) - Don’t include protocol or trailing slash
- Go to File → Options and settings → Data source settings
- Delete any Materialize entries
- Try connecting again
Configure Cluster
Hex
Hex is a collaborative data workspace.Setup
- In Hex, go to Workspace Settings → Integrations
- Click Add → PostgreSQL
- Configure connection:
- Host: Your Materialize hostname
- Port:
6875 - Database:
materialize - Username: Your Materialize user email
- Password: Your app password
- SSL: Required
- Click Test Connection → Save
Using in Notebooks
Deepnote
Deepnote is a collaborative data notebook platform.Setup
- In your Deepnote project, click Integrations
- Select PostgreSQL
- Enter connection details:
- Hostname: Your Materialize hostname
- Port:
6875 - Database:
materialize - Username: Your Materialize user email
- Password: Your app password
- Click Create Integration
Using in Notebooks
Excel
Connect Excel to Materialize via ODBC:- Install the PostgreSQL ODBC driver
- In Excel, go to Data → Get Data → From Other Sources → From ODBC
- Configure the DSN with Materialize connection parameters
- Import data from tables and views
Best Practices
1. Use Clusters for Isolation
Separate BI workloads from production:2. Add Indexes
Improve dashboard performance with strategic indexes:3. Use Materialized Views
Pre-compute complex aggregations:4. Monitor Query Performance
Check slow queries in the Materialize console:5. Set Connection Limits
Limit concurrent connections per BI tool:Refresh Rates
Because Materialize maintains views incrementally, you can set aggressive refresh rates without performance penalties:- Metabase: 1-5 seconds
- Tableau: Live connection mode
- Looker: Real-time queries
- Power BI: DirectQuery mode
Unlike traditional databases, frequent queries against Materialize don’t trigger expensive computations. Results are always up-to-date.
Troubleshooting
Cannot Connect
- Verify hostname and port (6875)
- Check SSL is enabled/required
- Confirm app password is correct
- Test with
psqlfirst
Materialized Views Not Visible
Some BI tools don’t detect materialized views:- Create regular views that SELECT from materialized views
- Use native SQL queries
- Add indexes to regular views
Slow Queries
- Add indexes on filtered/joined columns
- Use appropriate cluster size
- Check query execution plan
- Monitor resource usage in console
Feature Not Supported
Some PostgreSQL features aren’t in Materialize:- Check SQL compatibility
- Use alternative SQL patterns
- Submit feature requests
System Requirements
All BI tools need:- Outbound network access to port 6875
- SSL/TLS support
- PostgreSQL driver/connector
- Materialize app password
Next Steps
Create Materialized Views
Pre-compute aggregations for dashboards
Add Indexes
Optimize query performance
Manage Clusters
Isolate BI workloads
Monitor Performance
Track queries and resource usage