AI for insights and analytics
AI sales analytics is a plain question answered by a measure: where is revenue coming from, who has gone quiet, are we covering the accounts that matter, will the pipeline hold. The model chooses the measure and writes the sentence; a tool computes the figure from your ledger and CRM, and every line links to its rows.
These are the questions sales teams ask. Each one maps to a measure our tools compute from your files. The AI model chooses the measure and explains the result; the arithmetic is done by our code, and every total is checked.
| The question | The measure behind it | What comes back |
|---|---|---|
| Explain where my revenue is coming from. | Price, volume and mix bridge | The change split into price, volume, mix, new and lost, by customer and product, summing to the change exactly. |
| Are we covering the accounts that matter? | Value coverage at cadence | Revenue of accounts touched within their tier cadence over revenue assigned, by rep. |
| Which accounts have gone quiet? | Dormant accounts, by prior value | Accounts past their own order gap by prior-year revenue, with the owner. |
| Where do similar customers buy more from us? | Share of wallet against similar customers | Account spend against the median for its segment, with the gap valued. |
| What is our real win rate? | Win rate from a stated stage | Won over opportunities that reached the stage you name, by rep and segment, count and value. |
| Is there enough pipeline for the quarter? | Pipeline coverage against required | Weighted pipeline over the amount required for target, by rep and quarter. |
Every figure below was computed by a tool from the rows and checked before it was shown. The lines sum; the percentages match; each line opens to the rows that make it.
Explain where my revenue is coming from this quarter.
Revenue is up $4.1m on the prior year, split across 3 effects that sum to the change. New customers contributes $2.1m, 51% of the movement.
| New customers | $2.1m | 51% of the total |
| Volume from existing customers | $1.4m | 34% of the total |
| Price | $600k | 15% of the total |
| The 3 lines sum to | $4.1m | 0 unexplained |
Which new customers?
3 customers account for $2.1m of the $2.1m from New customers, 100% of it. Two came through the partner channel, and one is a reactivated account that had been dormant for two years.
| Northline Foods | $900k | partner channel; first order March |
| Meridian Care Group | $700k | reactivated after 2 years dormant |
| Corvid Logistics | $500k | partner channel; ramping |
| These 3 are | $2.1m | 100% of New customers |
What should the sales director do with this?
Ask the next question. New customers explain most of the growth, so the follow-up is whether the existing book is flat because of coverage or because of lost lines, and the tool answers that too, from the same files.
| Sales director | Ask what happened to existing-customer volume by segment | Now |
| Partner manager | Review the partner pipeline behind the two new accounts | This week |
| Sales operations | Put the revenue bridge in the monthly pack | Monthly |
Each measure has one formula, one source and one meaning. They are computed per rep and team and in total, and every one carries an identity that must hold before it is shown.
| Measure | Formula | From | What it tells you |
|---|---|---|---|
| Value coverage at cadence | Revenue of accounts touched within tier cadence ÷ revenue of assigned accounts | CRM activity; assignment file; ledger | Whether the accounts that matter are being reached |
| Dormant accounts, by prior value | Prior-year revenue of accounts past k × own order gap ÷ prior-year revenue | Ledger | Revenue that stopped quietly |
| Share of wallet against similar customers | Account spend by category against the median for its segment; valued gap | Ledger; account master | Where customers buy elsewhere |
| Win rate from a stated stage | Won ÷ (won + lost + stalled), from the stated stage, by count and value | CRM opportunities | The rate coverage and forecast depend on |
| Pipeline coverage against required | In-period pipeline, aged deals removed ÷ target, against 1 ÷ win rate | CRM opportunities; targets | Whether there is enough real pipeline |
| Forecast bias per rep | Mean signed error at a fixed horizon over four quarters | Weekly forecast snapshots; closed revenue | Who sandbags and who hopes |
| Time to first touch | Days from assignment to first two-way contact, by tier | Assignment history; CRM | Reassigned accounts left waiting |
| Rep load against capacity | Touches owed by the book per year ÷ touches available | Assignment file; tiers; calendar | Books too large to cover |
| Meeting to opportunity conversion | First meetings that became a qualified opportunity within the window ÷ first meetings | CRM | Meetings that lead nowhere, by rep and source |
| Customer concentration | Top ten share; largest customer; effective number of customers | Ledger, rolled up to parent | Dependence, and its direction |
From your question and the measures declared for sales teams, the model picks the one that answers it, and the period and comparison the question implies.
Deterministic code reads the rows, computes the measure, and checks the identities below. The same question on the same data gives the same answer, every time.
The AI model writes the sentence around the result, naming the rep or account behind it. It states no figure that is not in the result, and every figure links to its rows.
| Coverage | Assigned accounts = covered + overdue + never touched; one owner each |
| Pipeline | Deals = won + lost + open; open = in period + out of period |
| Forecast | Every actual is matched to a snapshot at the stated horizon |
| Load | Touches owed sum across tiers; every account has a tier |
The exports sales teams already produce. Column names are mapped once and the mapping is reused. A file is the way in; scheduled delivery and connections to your systems come with the plan, and every source is listed here.
An answer is a list with an owner and a cadence, or it is a chart nobody works.
| Measures | Owner | Cadence |
|---|---|---|
| Coverage; dormancy; time to first touch | Sales managers; reps | Weekly |
| Pipeline coverage; meeting conversion | Sales managers | Weekly to fortnightly |
| Win rate; forecast bias | Sales director | Monthly to quarterly |
| Share of wallet; rep load; concentration | Sales director; sales operations | Quarterly |
You ask in your own words and the answer is a measure with its rows, not a chart to interpret. The model's job is to pick the right measure and explain the result; the arithmetic is done by a deterministic tool on your data. That is why the figures can go into a forecast meeting without being checked first.
No, and that is a design rule, not a preference. Language models get arithmetic wrong in ways that look right. Every figure on the page was computed by a tool from the rows, carries a control total, and links back to the rows. If a question needs a measure the tools cannot compute, the assistant says so.
The invoice ledger by customer and product, the CRM activity and opportunity exports, and the assignment file. That is enough for the revenue bridge, coverage, dormancy, win rate and pipeline coverage. A file is the way in; scheduled delivery and connections come with the plan.
The rows stay where you run it; the model only receives a formatted result to describe. On Enterprise, customer names are replaced with identifiers before anything is uploaded, and the mapping stays with you. Every answer cites the rows it came from.
Bring a few thousand rows. The data map opens next, every column mapped once, and the first question is answered in minutes. Free, in your browser, no account.