[ SME_ANALYTICS ]

Spreadsheet Chat & Visualisation

2025Document IntelligenceCapability

What it is

Upload a CSV or Excel file and ask it questions in plain language.

Client work is shown without identifying imagery

[ THE_PROBLEM ]

Why this existed

The person who needs the answer has the spreadsheet but not the formula, and the person with the formula has a queue. The question waits three days for something that takes two minutes.

[ WHAT_WE_BUILT ]

What we built

File upload and parsing for CSV and XLSX, a persistent file sidebar, a chat interface over the uploaded data, and a visualisation panel that renders charts from the conversation. Sessions and messages persist per user.

  • CSV and XLSX upload with parsing
  • Persistent file sidebar across sessions
  • Chat interface over the uploaded data
  • Visualisation panel rendering charts from the conversation
  • Per-user session and message persistence

[ HOW_IT_IS_USED ]

How a company uses it

A finance or ops person who lives in spreadsheets gets answers and a chart without writing a formula or waiting on the data team.

Built with

Next.jsGeminiMongoDBClerkPapaParse

[ COMMON_QUESTIONS ]

Questions clients ask

How reliable are the answers on real data?

Reliable for aggregation, filtering and comparison; less so for questions requiring domain judgement about what a column actually means. The practical guardrail is showing the working — a chart the user can sanity-check beats a number they have to trust.

Can it connect to a database instead of a file?

That is the natural next step and a common request. Uploading files is right for ad-hoc analysis; a live database connection is right when the same question gets asked weekly. They are different products and it is worth being clear which one you need.

What file sizes does it handle?

Comfortably into the tens of thousands of rows. Beyond that the design should change — you want the model writing queries against a database rather than reasoning over raw rows in context.

Is this close to your problem?

Most engagements start with a version of something on this page. Tell us what is different about yours and we will tell you what it changes.

Start a conversation