Ask a question of your data. Get work you can check.
Reportable connects to your databases, files and tools, then writes and runs the queries. What comes back is a report, a dashboard or a notebook, with every figure linked to the query behind it. Put it on a schedule and it keeps itself current.
In beta. No payment details to sign up, and your sources are read-only.
I'll pull MRR by plan and month from subscriptions, then look at what changed.
- Checking connected sourcessubscriptions.csv
- Reading the schemasubscriptions · 11 columns
- Querying dataMRR by plan and month · 36 rows
- Charting MRR by planline · 3 series
- Writing the narrative
MRR grew from $38.2k to $61.4k over twelve months, up 61%. The Team plan accounts for 58% of the increase, mostly annual Starter accounts upgrading around their sixth month. Monthly logo churn stayed under 2% throughout.
- Saving "MRR growth"report · v1
I've put the same chart on the revenue dashboard, next to active accounts and churn.
- Saving "Revenue overview"dashboard · 1 cell added
How it works
Connect a source, ask a question, put the answer on a schedule.
Connections
Connect what you already have
A Postgres database, a folder of files, an S3 bucket, an API. Sources are only ever read, and credentials are encrypted and never shown again, not on screen and not to the agent.
Build
Ask in plain language
The agent reads the schema, writes SELECT-only queries, runs analysis in a sandbox and shows each step as it works. Steer it mid-run; it asks when something is ambiguous.
Schedules
Keep it current
Re-run it on a cadence and deliver it to email, Slack, Teams or a webhook. Ask it to narrate what moved since the previous run.
Library
Reports, dashboards and notebooks, in one library.
The agent saves its work as any of the three, and people edit them too. They share folders, sources and metric definitions, and each can be shared, exported or embedded.
Report
A versioned document: narrative, key figures, charts and tables, with the query behind every figure and the caveats written down. The agent writes it; you can edit it.
Dashboard
A grid of cells: headings, text, callouts, and chart or metric widgets the agent fills from its queries. Arrange it, keep adding to it, share it as a page.
Notebook
The same cells in one column, for analysis that reads top to bottom: the question, the query, the numbers, the reasoning. The work behind a report, kept.
Provenance
Open any number and read the work.
A report here, though a dashboard and a notebook carry the same lineage. Hover a note to see where it points.
MRR growth — last twelve months
MRR grew 61% over twelve months, from $38.2k to $61.4k. The Team plan drove 58% of the increase, most of it annual Starter accounts upgrading at their sixth month. Churn stayed low, so this is expansion rather than new logos.
MRR by plan
Monthly recurring revenue by plan. Team steepens from March, when the first annual Starter accounts reach their sixth month and upgrade.
▸ Show data tableNotes & caveats
- August is a partial month. Data runs through the 28th, so the last point will move.
- Two accounts changed plan twice in one month. Each is counted at its month-end plan.
select month, plan, sum(mrr) as mrr from subscriptions group by 1, 2 order by 1
- The summary is written by the agent. Figures stated in the text are checked against the report's own tables and charts before it saves. A mismatch goes back to the agent to correct or to say where the number came from.
- Key figures with their change. Each tile carries the value, its movement against the previous period, and which direction counts as good.
- Charts come with a caption and their data table. Twelve chart kinds, from line and bar to funnel, waterfall and cohort heatmap, each with reference lines and annotations where they help.
- Caveats are written down. Partial periods, ambiguous joins, anything that should change how you read a number. They stay with the report.
- Every figure links to its query. The source, the SQL, the row count and when it ran, for each chart, table and KPI. Open any number and read the work.
- Versions, exports, sharing. Every save is a version you can compare. Export to PDF, PowerPoint, Excel or CSV. Share a snapshot with the workspace, with specific people, or with anyone who has the link.
Schedules · Automation · Alerts
It keeps going after you close the tab.
Most reports are asked for more than once. Set the cadence, the trigger or the threshold, and the next one arrives without anyone rebuilding it.
- Schedules
- A cron expression and a timezone. Delivered to email, Slack, Microsoft Teams or a webhook, with a note on what changed since the last run.
- Triggers
- Re-run when a source refreshes, when a certified metric crosses a line you set, or when something posts to a webhook.
- Monitors
- Watch a metric and get told when it moves in a way its own history does not explain. Detection is seasonality-aware, so an ordinary Monday is not news.
- Data quality
- Sources are checked for staleness, schema drift, empty tables, null rates and volume swings. A problem opens an issue you can see, and the agent sees it too.
Connections
Connect what you have. Planned connectors say planned.
This list is the product's own connector registry, rendered as-is. Every source is read-only.
- PostgresAvailable
Postgres and anything that speaks it — Neon, Supabase, Timescale, Redshift, AlloyDB.
- File uploadAvailable
Drop in files or a whole folder — CSV, TSV, JSON, Parquet, Avro, Excel, YAML, compressed or not. Each file becomes a table you can query.
- S3Available
Query Parquet, CSV, JSON, or Avro straight out of a bucket — Amazon S3, or anything that speaks the same API.
- OpenAPIAvailable
Any REST API with an OpenAPI or Swagger document — introspect it, pick the endpoints you want, query them as tables.
- GraphQLAvailable
Any GraphQL endpoint — introspect the schema, pick the queries you want, read each one as a table.
- MySQLPlanned
MySQL, MariaDB, and PlanetScale.
- BigQueryPlanned
Google BigQuery datasets.
- SnowflakePlanned
Snowflake warehouses and shares.
- Google SheetsPlanned
A spreadsheet as a live table.
- StripePlanned
Charges, subscriptions, and invoices.
Tools
And any MCP server, for the things a query cannot answer.
Sources are read and charted. Tools are called: an issue tracker, a deploy log, an internal service, your own server. Point Reportable at any Model Context Protocol endpoint and its tools join the agent's reach, one tick at a time.
- Any server, not a fixed list
- A URL and an optional bearer token, which is encrypted at rest and never returned to the browser. The tool list is read on save and can be re-read later, and a server that adds a tool does not gain a permission.
- Approved by name
- Choose only the tools you tick, everything except the ones you tick, or every tool the server offers. A source is queried; a tool is called, so the decision is made where the connection is made.
- What comes back is data, not instructions
- Tool results arrive wrapped as untrusted content, because a description or a response from somebody else's server is text the agent would otherwise read as an order.
- Reportable is an MCP server too
- Point your own agent at it and, with an API-key scope you set, it can list sources, read a schema, run a query, and read or build a report. There is a REST API for the same jobs.
Trust
What is in place, what is partly there, what is planned.
Connecting a source does not hand an agent the keys. Sources are read-only, every query passes a SELECT-only gate, workspaces are isolated, and every query, share and settings change lands in an audit log you can export. The columns below are the same list the trust center renders.
In place 11
- Encryption in transit
- Encryption at rest
- Read-only data access
- Tenant isolation
- Per-source access control
- Audit logging
- Data retention
- Data export and erasure
- Prompt-injection defence
- Rate limiting
- Sub-processor notification
Partly 3
- Key management
- Single sign-on
- SCIM provisioning
Planned 3
- Data residency
- SOC 2 Type II
- Penetration testing
Questions
Before you connect anything.
Do I need to write SQL?
No. Ask in plain language and the agent writes and runs the queries. Every query it ran is listed under the report, so if you do read SQL you can check the work.
What can it connect to today?
For data: Postgres and anything that speaks it (Neon, Supabase, Timescale, Redshift, AlloyDB), file uploads (CSV, TSV, JSON, Parquet, Avro, Excel, YAML), S3-compatible object storage, and OpenAPI or GraphQL APIs. MySQL, BigQuery, Snowflake, Google Sheets and Stripe are planned and marked as such above. For tools: any MCP server that speaks streamable HTTP. If your system has an MCP server, it connects today, and you decide tool by tool what the agent may call.
How do I know a number is right?
Open the query behind it. Each chart, table and KPI links to the SQL that produced it, the source, the row count and when it ran. Before a report saves, figures stated in the prose are checked against the report's own tables and charts, and caveats the agent found are written into the report rather than rounded away.
Will it write to my database?
No. Every query passes a SELECT-only gate before it runs. Connect with a read-only role anyway; the connection card flags a role that could write.
Does this replace our BI tool?
For many teams it is the place reports, dashboards and notebooks live, with one definition per metric. It can also sit alongside what you have: export to PDF, PowerPoint, Excel or CSV, embed a report, or read everything through the API.
What does it cost?
Reportable is in beta and pricing is not announced yet. Signing up takes no payment details.
Can our security team review it before we sign up?
Yes. The trust center lists each control as in place, partial or planned, with the sub-processors and data-handling terms. SOC 2 Type II is planned, not done; the page says so.
Connect a database, or upload a file.
The first one takes a question and a few minutes. Everything the agent did is attached to what it built.