Skip to main content
BlogPT

Chat With Your Data: Ask Questions in Plain English

·Francisco Ferreira·11 min read

Chatting with your data means asking a question in plain English and getting an answer straight from your database, with no SQL and no dashboard to build. You type "what was revenue last week, by plan?" and an AI assistant translates it into a query, runs it against your tables, and replies with the number and a chart. The mechanic is simple. The hard part, and the part most product pages skip, is making the answer trustworthy, because a confident wrong number is worse than no number at all.

Chat with your data is the practice of querying a database through natural-language questions instead of SQL. An AI layer interprets the question, generates the query, runs it, and returns a written answer with a chart. Its reliability depends on how well that layer understands your specific schema and metric definitions.

This guide covers what actually happens when you ask a question, where natural-language-to-SQL breaks down (the failure modes vendors rarely show you), how conversational analytics differs from a dashboard, and how to get answers you can act on. The throughline: a data assistant is only as good as the context it is grounded in.

What happens when you ask a question

Behind a single plain-English question sits a short pipeline. Naming the steps makes it obvious where accuracy comes from and where it leaks.

1
Interpret the question. The model maps your words to entities it knows: "revenue" to a column or a defined metric, "last week" to a date range, "by plan" to a group-by. If "revenue" is ambiguous (gross? net? recognized?), this is where the wrong path gets chosen silently.
2
Generate the query. The assistant writes SQL against your schema: the right table, the right joins, the right filters. This is the step that academic benchmarks measure and the step that fails most often on real, messy databases.
3
Run and read the result. The query executes read-only, returns rows, and the assistant turns those rows into a sentence plus a chart of the actual series. A good assistant shows the query and the source table so you can check its work.

Notice that accuracy is decided in steps 1 and 2, before any data is read. If the assistant guesses "revenue" wrong, the SQL runs perfectly and returns a perfectly wrong number. This is why grounding matters more than model size.

At a glance: what a data assistant answers (and what it misses)

Question type Example How well chat handles it Silent failure to watch for
Single defined metric "What was MRR yesterday?" Strong, if the metric is defined once Two definitions of MRR returning different numbers
Trend over time "Show signups by week this quarter" Strong, returns a chart of the real series A gap in the data read as a real dip
Breakdown / segment "Revenue by plan, last 30 days" Good, with a clean group-by column Null segment rows dropped without notice
Diagnostic "why" "Why did revenue drop 31% on Tuesday?" Only if grounded in alerts and history Plausible story with no query behind it
Open-ended multi-join "Compare cohort retention across two pricing changes" Weak on raw schemas, error-prone Wrong join silently inflates the result

The pattern: chat is excellent for defined metrics and trends, and fragile for open-ended questions over an unfamiliar schema. The fix is not a smarter model. It is a smaller, better-described surface to ask against.

Where natural-language-to-SQL actually fails

Natural-language-to-SQL is the task of converting a plain-English question into a correct database query. It is the core of every "chat with your data" product, and it is genuinely hard. A widely cited point from practitioners: 90 percent accuracy is effectively useless, because you cannot tell which 1 in 10 answers is the wrong one, and a single wrong revenue number in a board deck erodes trust in the whole tool.

Three failure modes cause most of the damage:

Failure mode What goes wrong How grounding prevents it
Ambiguous terms "Active users" could mean logged-in, paying, or non-churned. The model picks one. A business metric defined once, so "active users" always resolves the same way.
Schema overload Pointed at 100+ raw tables, the model cannot fit them in context and guesses joins. Asking only against monitored, documented tables instead of the whole database.
Confident hallucination The model invents a column or filter that does not exist, or maps to the wrong one. Citing the exact table and column used, so a wrong source is visible immediately.

The honest takeaway: a data assistant pointed at a raw production database with hundreds of unfamiliar tables will be impressive in a demo and unreliable in practice. The same technology becomes trustworthy when it asks against a narrow, well-described set of tables and metrics. Context, not cleverness, is what separates a toy from a tool.

Conversational analytics vs. a dashboard

A dashboard answers questions you already knew to ask. Chat answers the question you did not anticipate. They are complements, not rivals, and confusing them leads teams to expect the wrong thing from each.

A dashboard is the right tool for standing metrics: the DAU chart you check every Monday, the revenue tile finance watches. It is fixed, fast, and shared. The moment your question goes off the dashboard ("why is that number down, and is it down everywhere or just in one segment?"), you either file a ticket for an analyst or open a chat and ask. Conversational analytics fills the gap between "the dashboard raised a question" and "someone has time to investigate it."

Dashboard Chat with your data
Best for Known, recurring metrics One-off, unanticipated questions
Setup cost Someone builds it in advance Ask in plain English, now
Speed to a new question Hours to days (build a new view) Seconds
Risk Stale or wrong if a pipeline breaks Wrong if the question is misinterpreted

Both share one weakness: if the underlying table is stale or broken, both give you a wrong answer with full confidence. That is why chat and monitoring belong together, which is the next point.

The case that only grounding solves: "why did it drop?"

The most valuable question a team asks is rarely "what is the value?" It is "why did the value change?" A generic chat tool pointed at a raw database struggles here, because answering it requires history, baselines, and knowledge of what recently broke. This is where an assistant grounded in a monitoring workspace pulls ahead.

Without grounding: You ask "why did revenue drop 31% on Tuesday?" The assistant writes a query for Tuesday's revenue, confirms it is down, and offers a plausible-sounding guess ("possibly seasonality or a pricing change"). It has no way to know what actually happened upstream, so the explanation is a story, not a finding.

With grounding: The same question hits an assistant that already monitors your tables and metrics. It checks open anomaly alerts, sees that the payments table had a row-count drop at 02:00 UTC, correlates it with the revenue metric, and answers: "Revenue is down 31% because the payments table stopped receiving rows at 02:00. Most likely an upstream sync failure. Here is the diagnosis query and the affected series." That is the difference between a chatbot and a data assistant that knows your system.

This is exactly how Tabkeel's assistant, Ask Tabkeel, works. It uses agentic tool-use to fetch only the tables, metrics, and alerts relevant to your question rather than dumping a whole schema into a prompt, it plots the real series instead of describing it, and it cites its sources so you can verify. Because it sits on top of a monitoring layer, it can reason about your business metrics in production and your open alerts, not just raw rows.

Common mistakes when adopting a data assistant

Teams that get burned by "chat with your data" usually make one of these errors:

1
Pointing it at everything. Connecting the whole warehouse and expecting accuracy. Start with the handful of tables and metrics that actually drive decisions. A narrow, documented surface beats a broad, ambiguous one every time.
2
Not defining terms once. If "churn" is computed three different ways across the company, the assistant will pick one and you will argue about the number instead of acting on it. Define each metric in a semantic layer or glossary so the answer is consistent.
3
Trusting answers you cannot verify. If the tool will not show you the query or the source table, you cannot catch a wrong join. Require citations. The assistant should make checking its work a two-second glance, not an act of faith.

None of these require a data engineer to avoid. They require treating the assistant as something that needs good context, not as a magic box that reads your mind. That setup is well within reach for a small team, and it scales up cleanly when you hire data people who can extend the metric definitions and table coverage.

How to start chatting with your data

You do not need a warehouse or a modeling project to begin. The fastest path is to connect a read-only database, monitor the few tables that matter, define one or two key metrics, and start asking. A read-only role takes three lines of SQL and never lets the tool write to your data:

CREATE ROLE assistant_reader LOGIN PASSWORD 'your_password';
GRANT CONNECT ON DATABASE your_database TO assistant_reader;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO assistant_reader;

From there, ask the questions you currently wait on someone else to answer: "Is the events table fresh?" "What is DAU this week vs last?" "Which segment is driving the signup dip?" If you are a founder, PM, or full-stack engineer without a dedicated analyst, this is the lever that removes the bottleneck. See the guide on monitoring data quality without a data team for how the same connection covers freshness and anomaly alerts too.

See where your data stands first: the free 2-minute data quality health check grades your setup A to F with no signup. Or connect a Postgres, Supabase, or BigQuery database with Tabkeel's Free plan and ask your first question tonight: 10 tables and 2 business metrics, no card. Compare it to the alternatives in the data observability tools breakdown.

Frequently asked questions

What does it mean to chat with your data?

Chatting with your data means asking a question in plain English ("what was revenue last week?") and getting a direct answer from your database, without writing SQL or building a dashboard. An AI assistant translates the question into a query, runs it against your tables, and returns the number plus a chart. The quality of the answer depends entirely on whether the assistant knows your schema and metric definitions.

How accurate is natural-language-to-SQL?

On generic benchmarks, modern systems reach 80 to 90 percent on simple queries, but that figure collapses on real schemas with ambiguous column names, business-specific filters, and many joins. The practical fix is to narrow the surface: an assistant grounded in a defined set of monitored tables, metric definitions, and a business glossary is far more reliable than one pointed at a raw database with 100 unfamiliar tables.

Is chatting with data better than a dashboard?

They solve different problems. A dashboard answers questions you already knew to ask, on a fixed schedule. Chat answers the one-off question you did not anticipate ("why did signups drop in Brazil yesterday?") without waiting for someone to build a new view. The strongest setup uses both: dashboards for standing metrics, chat for the follow-up investigation.

Can I chat with my data without knowing SQL?

Yes. The point of a natural-language data assistant is that you ask in plain English and never see SQL unless you want to. The honest caveat is that you still need to phrase the question clearly and trust the assistant's understanding of your schema. A good assistant cites which table and column it used so you can verify, rather than asking you to take the number on faith.

What is the difference between an AI data assistant and a BI tool?

A BI tool (Looker, Metabase, Tableau) is built around pre-modeled dashboards and saved queries that someone configures in advance. An AI data assistant answers free-form questions on demand and is most useful for ad-hoc investigation. In a monitoring context, an assistant can also reason over your alerts and anomalies, answering "what broke last night?" rather than only "what is the value of X?"

Related posts