Data Studio · 7chart types · publish & embed

Connect a data source. Get dashboards on your live data.

Point DiMi at a read-only database and build the charts your team keeps asking for — the way you would in Power BI, except you describe what you want and the SQL writes itself.

Read-only connections · every query audited

Revenue overview
live
Revenue
$412k
+12%
Orders
8,940
+4%
AOV
$46
−2%
By region EU US
Ask for a chart

Describe it. Don't build it.

Type the question the way you'd say it out loud. Data Studio reads your schema, writes one pre-aggregated read-only SELECT, picks the chart type that suits the shape of the answer, and maps the columns onto axes.

  • It only sees the tables you allowed — the schema snapshot is the whole world it knows.
  • Generated SQL runs the same gauntlet as everything else, and is re-validated on every execution.
  • You get a draft, not a fait accompli. Review the SQL, tweak the chart, then save.
Your prompt

“Monthly revenue for the last 12 months, split by region”

generated widget
SELECT date_trunc('month', created_at) AS month,
       region,
       sum(total) AS revenue
FROM orders
GROUP BY 1, 2
ORDER BY 1
chart
line
x
month
y
revenue
series
region
Graphs

7 widget types, one grid.

Pick the shape that fits the answer. Every widget is driven by its own query, so a single dashboard can span as many tables as you like.

82%
KPI
One number that matters
Line
A trend over time
Area
Volume over time
Bar
Comparing categories
Pie
Parts of a whole
Donut
Share, with a total
Table
The rows themselves
Full manual control

When you want the wheel, take it.

The generator is a shortcut, not a cage. Every widget is editable down to the column mapping.

Map columns to the chart

Point x, y, series, category, value, and label at the columns your query returns. Pass an array to y and you get a multi-series chart; name a series column and long-format rows are pivoted for you.

Formatting that isn't an afterthought

Compact, full, percent, or currency number formats. Stacked bars, optional legends, a brand or categorical palette, and a comparison column to give any KPI its delta.

Four widget widths

Size each widget small, medium, large, or full-width and drag them into the order you want. Charts use CSS custom properties, so they re-colour themselves for light and dark embeds.

Saved query or inline SQL

Drive a widget from a query you already saved in Live Data, or freeze SQL onto the widget itself. Either way the query is yours — the dashboard just renders it.

Share it

One iframe, anywhere.

Publish a dashboard and it becomes an embeddable page — put it in your admin panel, your intranet, or a client-facing portal without giving anyone a login or a look at your database.

<iframe
  src="https://app.example.com/embed/dashboard/TOKEN"
  width="100%"
  height="640"
  style="border:0;border-radius:12px"
  loading="lazy"
></iframe>
How we keep your data safe
  • Off by default

    Every dashboard has a stable token for previewing, but the public route refuses to serve it until you explicitly publish.

  • Origin allowlist

    Leave it empty to embed anywhere, or list the origins allowed to load it. Embeds are cross-origin, so the browser always tells us where the request came from.

  • Auto-refresh

    Set a refresh cadence in seconds for wall displays and ops screens, or leave it at manual. Results are cached server-side so a hundred viewers don't become a hundred queries.

  • Never leaks the query

    The public path returns chart metadata and aggregated result rows — never your SQL, your connection details, or the bound parameter values behind a widget.

The data source

Your database, connected once.

Dashboards and your chatbot draw on the same read-only connection — set it up once and both can use it.

5 engines, one connection form

CockroachDB and Redshift speak the PostgreSQL wire protocol, so they behave exactly like Postgres once connected.

PostgreSQL
MySQL / MariaDB
Microsoft SQL Server
CockroachDB
Amazon Redshift

Read-only means read-only

  • A single SELECT (or WITH … SELECT), executed inside a read-only transaction. Writes and DDL are rejected before they reach your database.
  • An 8-second statement timeout and a per-widget row cap, so a heavy chart can't pin your production database.
  • Generated SQL is parsed in your engine's dialect and checked against your table allowlist on every single run — anything unverifiable fails closed.
Documents, APIs, and the rest
How it works

Connection string to dashboard

01

Connect a read-only database

Paste a connection string, pick the tables Data Studio may touch, and we snapshot the schema so it knows what's there.

02

Describe the chart — or build it

Ask in plain English and review the SQL and chart config it comes back with, or configure the widget by hand. Nothing is saved until you say so.

03

Publish and embed

Arrange the widgets, pick a light or dark theme, publish, and drop one iframe into your site, intranet, or client portal.

Data Studio is included from the Pro plan up, alongside live data sources — compare plans.

Stop exporting to spreadsheets.

Connect a read-only user, ask for the chart, publish the dashboard. Free to start.