Data and analytics
Data, asked in plain English.
Type a question the way you'd say it out loud. Get a clear answer, a chart, and the query behind it so every number can be checked.
Ask the warehouse
Which product lines grew fastest this quarter?
- Cartons+92%
- Sheets+61%
- Trays+44%
- Inserts+28%
Show the query it ran
select line, round(100.0 * (q3 - q2) / q2, 1) as growth from product_quarter where fy = 2026 order by growth desc
What this usually looks like before we start.
- Everyone with a question joins a queue behind one person who can write SQL.
- By the time the report arrives the question has moved on.
- Two dashboards disagree and nobody can say which is right.
What we build.
Modelled on the questions, not the source tables
We start from what the business cannot currently answer and build the warehouse against that.
A question box over the top
Ask it the way you'd say it out loud, and get the answer, the chart, and the query it ran.
Every answer shows its working
The SQL is on screen, so a number can be checked before it is trusted, and read-only access means a question can never change a record.
Migration rehearsal
| Set | Old system | New system |
|---|---|---|
| Customers | 4,182 | 4,182 |
| Open invoices | 917 | 917 |
| Opening balances | 2,412,600 | 2,412,600 |
Every set reconciles
Modelled on the questions, not the source tables
We start from what the business cannot currently answer and build the warehouse against that.
Migration rehearsal
Set Old system New system Customers 4,182 4,182 Open invoices 917 917 Opening balances 2,412,600 2,412,600 Every set reconciles
A question box over the top
Ask it the way you'd say it out loud, and get the answer, the chart, and the query it ran.
Ask the warehouse
Which product lines grew fastest this quarter?
- Cartons+92%
- Sheets+61%
- Trays+44%
- Inserts+28%
Show the query it ran
select line, round(100.0 * (q3 - q2) / q2, 1) as growth from product_quarter where fy = 2026 order by growth desc
Every answer shows its working
The SQL is on screen, so a number can be checked before it is trusted, and read-only access means a question can never change a record.
Trial balance, August
Account Debit Credit Sales — 2,486,400 Inventory 1,942,800 — Receivables 2,869,500 — Payables — 2,325,900 Balanced 4,812,300 4,812,300
How we work on it
- 01Describe the question your data should already answer.
- 02The model, the semantic layer and what has to reconcile.
- 03A working demo every two weeks, answering your own questions.
- 04Live, with the model and the semantic layer handed over as documents.
- 05We run the pipelines and extend the model as the questions change.
Retail analytics
A 2.5-million-row warehouse learns to answer in plain English.
Anyone can ask a 2.5-million-row warehouse a business question in plain English.
A read-only AI analyst over a PostgreSQL star schema that answers business questions in plain English and shows its SQL.
Read the case study
Tell us the question your data should answer.
Describe it in plain language. We will respond with a proposed architecture, a first milestone and the key risks.
We respond within one business day. If we are not the right fit, we will tell you.



