Build an Interactive Dashboard in 5 Minutes with Kai

What Are Data Apps in Keboola?
Data Apps are interactive web applications that run directly in your Keboola project. They let you visualize, explore, and interact with your data without needing external BI tools. Think of Data Apps as your custom dashboards, built exactly how you need them. Now, let's see how Kai makes building Data Apps effortless.

What you can do with Data Apps:
Consume data in your project
Turn tables and transformations into visual dashboards that anyone on your team can explore.
Share insights with colleagues
Generate a shareable link. Your team can view live data, filter results, and explore insights without accessing the Keboola project.
Gather inputs in a structured way
Build forms for budget planning, data collection, or configuration - all connected to your data pipeline.
Replace external BI tools
For many use cases, Data Apps eliminate the need for separate BI platforms. Everything stays in Keboola.
In this tutorial, we'll walk you through creating an interactive product affinity dashboard that shows which products customers buy together:

Let's get started.
Optional Step 1: Prepare Your Data
I like to have clean, controlled data before jumping into visualization. So before building the dashboard, I asked Kai to create the transformation first.
I have Shopify input tables from our toy store (orders, products, customers). I asked Kai to analyze the order history and build a SQL transformation that produces a product_affinity_pairs table with four columns: product names (A and B), co-purchase count, and last purchase date.
Kai wrote the transformation, I reviewed the SQL, approved it, ran it.
Step 2: Open Kai and Describe Your Dashboard
Click the Kai icon in your project and describe your dashboard. Here's the prompt I used:

You can copy the prompt if you like
Create a Data App called "Buy Together Analysis" that visualizes which
products are frequently purchased together using an interactive heatmap.
Display the top 50 products (by purchase frequency) in a heatmap matrix showing co-purchase patterns
Include these interactive filters:
- Time Period dropdown: All Time, Last 30 days, Last 3 months,
Last 6 months, Last 12 months
- Select Product A dropdown: Filter to show one product's affinities
- Show Products B dropdown: Filter which products to display
- Minimum Pairs slider: Range 1-20, default 5
Show "Data last updated: [date/time]" from the last order date
On hover: Show tooltip with "Product A + Product B: X times"
Use a color-coded heatmap:
- White = 0 co-purchases
- Light blue = low frequency
- Dark blue = high frequency
- Diagonal cells (same product) = gray
Step 3: Kai Builds Your Data App
Over the next 90 seconds, Kai analyzed the table structure, wrote the Python/Streamlit code, created the Plotly heatmap, built all filter components, added a data freshness indicator, and deployed the app. All automatically deployed to Keboola's hosting infrastructure.
Kai provided a link to the live dashboard and a password to access it.

Step 4: Open Your Dashboard
To open your newly created dashboard, click the link or press the OPEN DATA APP button on the right panel. The dashboard will load in a new window. Depending on your choice, a password might be necessary - simply copy the password and insert it to open.
Total time from opening Kai to working dashboard: around 4 minutes.


Step 5: Make Adjustments
Found something to improve? Maybe it's a missing filter or a color scheme. Just ask Kai to adjust it. Don't forget to redeploy the app after any changes.

Step 6: Share & Manage Your App
Getting the link: Click "OPEN DATA APP" on the right, it opens in a new tab. Copy the URL and share it with your team. That's it.
Password protection: By default, Data Apps use Basic authentication (password-protected). You can change this in the Authentication section:
- Basic (default): set a password, share it alongside the link
- Public: anyone with the link can access, no password needed
- SSO: requires Keboola login credentials

Suspending the app: Click "Suspend data app" if you need to take it offline temporarily. The URL goes inactive, but your configuration and code stay saved. No resources consumed while suspended. To bring it back, click "REDEPLOY DATA APP."

Automatic refresh: Most dashboards don't need this, Data Apps query your tables fresh each time they're opened. But if your app needs scheduled redeployment (for example, to pick up code changes on a schedule), click "Automate" in the right-side menu and set an interval: every hour, daily, weekly - whatever fits.
When you make changes, just click "REDEPLOY DATA APP" and refresh your Data App tab to see updates.
Troubleshooting
While building you might encounter errors: connection issues, missing data, or code problems. Instead of manually debugging logs, you can use Kai to identify and fix issues.
I opened my "Buy Together Analysis" Data App and got an error instead of the dashboard. I navigated to the Terminal Logs tab in the Data App management interface and instead of interpreting them myself, I opened Kai:
My "Buy Together Analysis" Data App isn't loading. Can you check what's wrong?
Kai retrieved the logs, analyzed the error, and identified the issue (missing table). Kai found the transformation, ran it, and verified the Data App loaded correctly. Under 2 minutes from error to working dashboard.
The key here: Kai reads Terminal Logs automatically and understands context. You point it at the problem, it handles the rest.

After editing, don't forget to redeploy the app.
Try It Yourself
Enable Kai in your Keboola project (free during beta). Log in your Keboola Project and start now. Or check Kai Documentation.



