Product
Reporting
Reporting fails in two ways: it answers questions no one asked, and it produces numbers nobody can check. Reporting in Consonas is built to avoid both.
Two failure modes
Most business reporting is either ignored or distrusted
There are two failure modes and most organisations have both at once.
The first is reporting that answers questions nobody asked. A dashboard arrives with eleven charts, somebody looks at it for a fortnight, and then it becomes wallpaper. The measures were chosen because they were easy to compute rather than because anybody makes a decision with them, and a measure nobody acts on is a measure no one needs.
The second is worse and more common: numbers no one can check. A figure appears, it disagrees with someone's spreadsheet, and there is no way to establish which is right because the calculation is somewhere nobody can see. What happens next is predictable. People stop using the number, go back to their own spreadsheet, and the organisation runs on several private versions of the truth that quietly disagree.
Both are avoidable and neither is avoided by better charts.
Only the measures a decision depends on
The dashboard covers five things, and they were chosen by asking what a small organisation actually looks at on a Monday morning. What is open and how long it has been open. What closed, and why. What is coming, weighted. What is late. Where enquiries came from, followed through to whether they converted.
That is a deliberately short list. Every additional measure competes for attention with the ones that matter, and a dashboard with eleven charts is one where nobody can tell you which two are important.
Every number opens
The second principle is that any figure can be clicked to see the records behind it. Not a summary of them, the actual rows, which you can read and count by hand if you want to.
This sounds like a convenience and it is a matter of trust. A number you can verify is a number you will argue with, and arguing with numbers is how an organisation discovers that its definition of an active customer is not what everyone assumed. A number you cannot get behind is one people quietly stop believing, and then quietly stop reading.
Checkable or not
Six questions, and whether the answer can be checked
The second column is what most small organisations have today.
| The question | Answered from a spreadsheet | Answered from the records |
|---|---|---|
| How are we doing this month? | A figure someone assembled on Monday, already out of date, that no one else can reproduce. | A live view, computed from the records, that anybody with permission can open themselves. |
| Where did that number come from? | A formula in a cell referencing a tab somebody hid in 2023. | Click it. The records behind it open, and you can count them by hand if you want to. |
| Why is the total different from mine? | Two spreadsheets, two definitions, and an hour of everyone being slightly right. | One definition, held as a shared view, that changes for everyone when it changes. |
| Can the whole team see it? | Only if they can see the whole file, which usually means they can see everything. | Yes, scoped to what each person may see, so the same report is safe for everyone. |
| How long does our process actually take? | Not answerable. The history was overwritten every time something moved. | Measured from the stage history, and reliably longer than the number people repeat. |
| Which marketing is working? | Enquiry counts by source, which rewards the channels producing the most unsuitable enquiries. | Conversions by source. Frequently the reverse of the enquiry ranking. |
Scope
The same report is safe for everyone
Every measure respects what the person reading it is allowed to see. A salesperson scoped to their own accounts sees their own numbers. A manager sees the team's. A record marked sensitive is excluded from the totals of anyone without the grant.
The consequence is that two people can legitimately see different totals for the same report, which occasionally confuses someone and is the correct behaviour. The alternatives are both worse: a report that leaks restricted records into a number anybody can see, or one that hides them from the people entitled to count them. The first of those is a disclosure of personal data by arithmetic, which the Information Commissioner's Office treats no differently from any other kind.
It also means reporting can be opened up rather than restricted to whoever is trusted with everything. In most small organisations the reason ordinary staff cannot see any numbers is that the only way to show them some was to show them all.
Stage history
The one measure that cannot be reconstructed later
How long each opportunity sat at each stage before moving. Averaged across a quarter it is the single most useful diagnostic a business has, and it is the one number that is impossible to recover if the system was not recording it at the time.
That is why it is kept from the first day on every plan. Most measures can be recalculated from the current state whenever somebody decides they want them. This one cannot: once a card moves and the previous state is overwritten, the information is gone permanently.
What it tells you is almost always surprising. The place a process is slow is rarely where people believe, and the belief is usually price because price is what customers say when they are declining politely.
Sources
Two numbers that point in opposite directions
Enquiries by source is the number everyone starts with. Conversions by source is the one worth spending against, and they frequently rank the channels in the opposite order.
A cheap listing site generating thirty enquiries a month of which two convert is worth considerably less than a referral source generating four of which three do, and it usually costs more. An organisation measuring volume will spend more on the first, which is the wrong decision arrived at through a real number.
This is the clearest example of why the measure has to be chosen carefully rather than because it is easy. Enquiry counts are trivial to compute and actively misleading. Conversion by source requires the outcome to have been recorded, which is a discipline rather than a feature.
Five measures
The measures a small organisation actually looks at
Five things, and the properties that make them trustworthy.
- Work in progress
- What is open, who has it, and how long it has been open. The last of those three is the one most systems leave out and the one that tells you something.
- What closed
- Won and lost, with the stage history behind each, so a bad month can be explained rather than merely noticed.
- What is coming
- The weighted forecast, and the arithmetic that produced it, visible enough to be argued with.
- What is late
- Tasks past their due date, and service targets past their response and resolution points. The service targets are counted in working hours; a task is counted against the day it was due.
- Where enquiries come from
- By source, followed through to whether they became customers. Those are two different numbers and only one of them is worth spending against.
- Scoped per person
- Every measure respects what the reader is allowed to see. A total including records you cannot open is a total you cannot check.
- Drill down
- Every number opens into the records behind it. A figure you cannot get to the rows of is a figure nobody can verify and therefore no one believes.
- Saved views
- A question you configure and keep: the filters, the order and the columns, run by the server and exportable as a file. Three on the free plan, more on the paid ones, and the allowances are on the pricing page. What does not exist yet is a report you can schedule and have arrive by email; that is on the roadmap by name.
A number a reader cannot drill into is a number a reader cannot check, and a number no one can check is eventually a number nobody believes.
Which is why every figure on the dashboard opens into the records behind it.
Deliberate limits
Four things this reporting will not do
Not a business intelligence tool
No pivot builder, no custom visualisations, no modelling layer, no joining against external data sets. If you want to do serious analysis, export and use something built for it. A weak version of a business intelligence tool inside a CRM helps nobody and we would rather not build one.
No scheduled reports yet
You cannot have a report arrive by email on the first of the month. For an organisation that wants a number without anybody remembering to look, that is a real gap. It is named on the roadmap rather than described as coming soon.
No individual scoring
You can see work by owner, which is the honest version of the question. What the product deliberately does not do is compute a performance score or a ranking per person. A number that summarises a person is a number that gets managed toward, and the behaviour it produces is worse than the behaviour it was meant to measure.
No forecast beyond arithmetic
The weighted forecast is value multiplied by the likelihood on the stage. There is no model, no prediction from historical patterns, and no confidence interval. That is deliberate: a forecast produced by something nobody can explain is one no one argues with, and no one has therefore checked.
The first quarter
Getting to numbers somebody acts on
A dashboard no one opens is not a reporting problem. It is usually four or five numbers that no one has a decision attached to.
Pick the decision before the measure
For each number you intend to watch, write down what you would do differently if it moved. If the honest answer is nothing, stop watching it. That single exercise removes about half of what most organisations put on a dashboard.
The numbers that survive are usually unglamorous: how much is due to close, what has not moved, what is overdue, what came in and from where. All four have obvious actions attached, which is precisely why they get looked at.
Wait a quarter before believing anything
The first month of any measure in a new system is describing your import and your adoption instead of your business. Conversion looks wrong because half the pipeline arrived on one afternoon. Cycle time looks short because nothing has had time to be long.
Read it, by all means, and treat it as a check that things are being recorded rather than as information about the business.
Compare against the same period last year, not against a target
Once you have a year of history. Most businesses of this size are seasonal in ways nobody has written down, and a month on month comparison in a seasonal business generates alarm and relief in roughly equal measure, both of them meaningless.
Let people see their own numbers
Reports are scoped by the same permissions as everything else, which is what makes this possible. In most small organisations ordinary staff see no numbers at all, and the reason is not secrecy, it is that the only way to show someone some was to show them everything.
Somebody who can see their own overdue list, their own pipeline and their own enquiries will act on them without being asked. That is worth considerably more than a monthly report to management, and it costs nothing to switch on.
Reading numbers
Five that mislead, and what to read instead
Not because the arithmetic is wrong. Because the question they answer is not the question anyone thinks they are asking.
An average of anything with a long tail
Average resolution time, average deal size, average days to close. All three are dominated by whichever end has the most items, so they improve when you do more small things and worsen when you finally finish something difficult.
Read the oldest, the largest, and the count over a threshold instead. Those are the items a decision would actually be about.
A total of the open pipeline
The most reassuring number in any business and the least informative. It is the sum of everything anyone has not yet given up on, which is a measure of optimism rather than of revenue.
The weighted figure is the one to read, and its value is that you can argue about the likelihoods, which is where the disagreement belongs.
Conversion rate with no denominator you trust
If unsuccessful enquiries are not closed properly, conversion rate is computed against a number that is missing everything that quietly died. It reliably reads high, and it reads highest for the sources that produce the most enquiries and the fewest customers.
Activity counts
Calls made, tasks completed, records touched. They measure effort rather than outcome, they are trivially inflated by anyone who realises they are being watched, and they change behaviour in exactly the direction you do not want.
If you want to know whether someone is doing their job, read what is overdue and what has not moved. Both are about the work rather than about the person, and neither can be improved by doing something pointless quickly.
Any number without a comparison
Forty seven enquiries. Good or bad? No one knows. The same figure against last quarter, against the same quarter last year, and against what closed is three genuine questions.
This is the most common reason a dashboard gets ignored: it is full of true statements that nobody can interpret.
On the page
What the overview holds, tile by tile
One screen. A period at the top, a row of tiles, and a single table underneath. This is what each figure counts and what it deliberately leaves out.
The period is offered as the last seven days, the last thirty, the last ninety or the last twelve months, and the page opens on thirty because that is the span someone running a small organisation is usually asking about. Not every tile obeys it, and the ones that do not are the ones people notice first, so they are marked below.
Open sales, and the weighted figure beside it
Open sales is the total value of every opportunity whose outcome is still open, with the count of them underneath. Next to it sits the weighted figure: each open opportunity multiplied by the likelihood recorded on the stage it is currently sitting in, then added up.
Neither obeys the period, and that is intentional. Work in progress is a statement about now. A pipeline total for the last thirty days would be an answer to a question nobody has ever asked out loud.
The arithmetic behind the weighted figure is worth saying plainly, because it is the entire model: value multiplied by stage likelihood, summed, and rounded once at the end rather than once per opportunity. There is nothing else in it, and nothing you cannot reproduce on paper.
Won and lost in the period
Two tiles, each carrying a value and a count, covering opportunities that closed inside the period you chose. Closed rather than opened: a deal that began in February and was won in May counts in May, where the work finished and where somebody will want the credit.
Lost is shown at the same size as won, in the same row, with the same prominence. A page that displays wins loudly and losses quietly teaches people not to close the things they lost, and a pipeline in which nothing is ever lost is the single most common way these numbers become useless.
Leads being worked
The headline figure is how many leads are open right now, meaning those marked new, working or qualified. Underneath it are two numbers that do obey the period: how many enquiries arrived in it, and how many converted in it.
Converted is counted at the moment of conversion rather than at the moment of capture. A January enquiry that becomes a customer in March lands in March, because that is where the work happened, and because counting it in January would mean last month's figures changing every time somebody finally closes something old.
Relationships
The total number of people and organisations you are allowed to see, with the number added during the period underneath. It is the least interesting tile on the page and it earns its place by being the denominator of half the questions anyone asks about the others.
Work overdue, and meetings ahead
Overdue counts tasks that have a due time in the past and that nobody has completed. The figure beneath it, labelled due today, means due within the next twenty four hours. Meetings ahead counts appointments starting in the next seven days that have not been cancelled.
All three read from the present moment rather than from the period you selected, which surprises people the first time they change the period to twelve months and watch these three tiles refuse to move. Lateness is a fact about now. There is no useful sense in which something was overdue during a period that has ended.
Where enquiries come from
One table below the tiles, four columns wide: the source, how many enquiries it produced, how many of those became customers, and the rate between the two. It is counted over everything you can see rather than over the chosen period, because a source is judged over time, and a referrer who sent you four customers last year should not disappear because you happened to be looking at a fortnight.
The sources are whatever your leads are carrying. A lead someone types in by hand carries the source manual, which means that table frequently has one large row in it describing your own staff at a keyboard. That row is not a channel and no marketing decision should be made about it.
What is absent, and why absent is not nought
Each block asks the permission that governs the records behind it. Sales asks the opportunity view permission, leads asks lead view, work asks task view, meetings asks appointment view. Somebody who holds none of them does not see a row of zeroes. They see nothing where that block would have been.
The distinction is the whole point. Nought is a claim about the business. Absence is a claim about access. Showing the second as the first tells a new starter that their organisation has no pipeline, and they will believe it, because there is no reason for a number on a screen to be lying.
Reading them wrongly
Where a figure means something other than what it appears to
Every one of these is deliberate, and every one of them catches someone out the first time they meet it.
Two people with identical roles, and different totals
Scope is the obvious explanation and it is not the only one. A single record can be shared with one named person, and once it has been, that record is inside their totals and outside their colleague's, though the two hold exactly the same role. Records marked sensitive behave the other way about: they are excluded from the totals of anyone without the separate grant that reaches them.
So the honest answer to why do our numbers differ is usually because you have been given something they have not, or they have been given something you have not. Both are visible on the records themselves. Neither is a fault in the arithmetic.
A scope of team, held by someone in no team
It resolves to their own records, not to everything. A new starter given team scope before anyone has put them into a team will see their own work, conclude the reporting is broken, and say so.
It is doing the only safe thing available. The other reading of a person with no team, that they belong to all of them, is the reading that quietly shows a new starter the whole company on their first afternoon.
Selling in more than one currency
Totals are computed per currency and never added together. The headline follows whichever currency holds the largest open pipeline, and the others are kept separately rather than folded in. Won and lost are then filtered to that same currency, which has a consequence worth stating flatly: a deal won in euros, in an organisation whose pipeline is mostly sterling, is not inside the headline won figure.
That is the uncomfortable half and we would rather you met it here than on a Monday. The tile is a true statement about one currency instead of a complete statement about the business. The alternative was adding pounds to euros, which produces a number that is not an amount of anything, and then labelling it with whichever deal happened to sort first.
The conversion rate in the table will not match the count above it
The converted figure under the leads tile is scoped to the period. The became customers column in the sources table is counted over all of your history. They are answers to two different questions and they are supposed to differ.
The one to read for a spending decision is the table, because a source needs a year before it has said anything. The one to read on a Monday is the tile, because that is about the month you are in.
An opportunity that never moved anywhere
A stage history entry is written when the opportunity is created, recording no stage before it and the stage it began in. So even a deal that goes from creation to won without ever being dragged across the board has a history with a beginning, and the time it spent in its first stage is measured from when it was created rather than from a move that never happened.
Each entry holds the stage it came from, the stage it went to, the moment of the move and the person who made it. That last field is there so that a strange looking history can be asked about rather than merely puzzled over.
A lead that turned into an opportunity
The first and last contact dates are copied across onto the new opportunity at the moment of conversion, and a stage history entry is written for it there and then. Both exist because the question gets asked later about the opportunity, and no one ever thinks to go back and look at the lead it came from.
A value corrected after the fact
Every figure is computed from the records at the moment you look. Correct a deal value today and last month's won total changes, because last month's won total was never stored anywhere. It was recomputed for you just now.
The benefit is that the dashboard and the records can never drift apart. The cost is that the page has no memory of what it told you yesterday, so if you need a figure fixed as at a date, for a board pack or a lender, you have to write it down yourself. The product does not keep one for you and does not pretend to.
An invented distributor
One quarter at an invented valve distributor
No such company exists. It is constructed to show what gets recorded at each step and what each number said when someone finally read it.
What they had
Nine people distributing industrial valves. Six sell, two are in the office, one owns the place. They sell in sterling at home and in euros to two customers in the Republic of Ireland. Enquiries arrive from a trade directory, from a search advertisement, from two manufacturers who pass work on, and from people ringing up because somebody recommended them.
Before the move, the owner assembled a figure in a spreadsheet on the first Monday of each month and nobody else could reproduce it. Sources were recorded in the sense that somebody usually remembered to ask.
The first Monday
The open sales tile reads considerably higher than the owner expected, and the weighted figure beside it reads considerably lower. Both are correct. The first is the sum of everything six salespeople have not yet given up on, and the second is that same set after each deal has been multiplied by the likelihood written on its stage.
The gap between them is the useful part, and the argument it starts is the right argument: not whether the software is wrong, but whether the likelihood on the proposal stage is really what everyone has been assuming.
The euro win that was not in the headline
In the second month they win a substantial order from Cork. It does not appear in the won tile, and one of the office staff spends twenty minutes convinced something is broken.
Nothing is. The open pipeline is overwhelmingly in sterling, so sterling is the currency the headline follows, and the euro figures are held separately rather than converted at a rate no one in the building has agreed. Once that is understood it becomes a fact about the business rather than a complaint about the software: they are two operations of very different sizes and one page cannot honestly average them.
What the stage history said at the end of the quarter
Everyone in the building would have told you the slow part was the customer deciding. The history says the slow part is between the site visit and the quotation going out, and that it is slow because quotations are written by one person who also does the buying.
No one could have discovered that from the current state of the board, because the current state of the board shows where things are and not how long they have been there. It is only visible because an entry was written every time something moved, from the first day, before anyone knew they would want it.
What the sources table said, which was worse
The trade directory produced the most enquiries by a wide margin and the fewest customers. The two manufacturers who pass work on produced a handful of enquiries and converted most of them. The directory was the only source anybody was paying for.
The manual row was also the largest row in the table, which told them something else entirely: most of what they were counting as an enquiry was a salesperson typing in someone they already knew. That is not a channel and it had been quietly inflating every conversion calculation they had ever done.
What they changed
They corrected the stage likelihoods from what the quarter actually did, which moved the weighted figure down and made it believable for the first time. They stopped paying the directory. They gave the quotation writing to someone else on Tuesdays and Thursdays.
They did not build a report. Nothing in that quarter required one, which is the part of this example most likely to be true of your organisation as well.
Why these numbers
Four decisions behind these numbers, and what each one rejected
Three of the four were changed after the first version was wrong in a way someone could have believed.
Fixed measures rather than a builder
The alternative was a configuration surface: let each organisation assemble the measures it wants and ship nothing opinionated. It was rejected on the grounds that a configuration surface built before anybody has said which numbers matter is a guess with a settings page attached, and that the guess is then permanent, because a settings page is much harder to withdraw than a tile.
The cost is real and it belongs in plain sight. If your trade turns on a measure we did not anticipate, the overview will not show it, and you will be working from lists and exports instead. We would rather say that than ship a builder that produces eleven charts no one has a decision attached to.
Totalled by the database, not by adding up the rows on the screen
The first version of the forecast listed the open opportunities and added them up in a loop. Lists are capped so that no single request can drag an unbounded number of rows out of the database, and the consequence was quiet and serious: an organisation with more open work than the cap was shown a smaller number, with nothing anywhere to say that something had been left out.
Totals are now computed by your organisation's own database, on Cloudflare's developer platform, across everything the reader may see, with no relationship to how many rows anybody fetched. The board columns were corrected the same way and for the same reason, and a column that is showing only part of itself now says so. A total computed by fetching rows is a total bounded by however many rows somebody once thought to fetch.
The same episode is why the weighted figure is summed before it is divided rather than rounded per opportunity. Rounding each line and then adding produces a forecast that disagrees with itself the moment someone adds the lines by hand, and the person who does that is always the person you least want to explain it to.
The likelihood lives on the stage, not on the deal
There is no per deal probability. A salesperson cannot mark their own opportunity as more likely than the others sitting beside it, because the weighting comes entirely from the stage the deal is in.
The rejected alternative is the common one and it is worse for a specific reason. A forecast built from per deal optimism is a collection of opinions, and it cannot be argued with in one place, because correcting it means correcting several hundred private judgements one at a time. With the likelihood on the stage, changing it changes every deal at that stage at once, and the argument happens once, in the open, about a number anyone can check against what actually closed.
The uncomfortable half: two deals at the same stage weigh exactly the same, even when everyone in the room knows one of them is far better than the other. That information genuinely is lost, and we think losing it is cheaper than the alternative.
Every measure asks its own permission, rather than one reporting permission
The obvious design is a single grant that means may see reports. It was rejected because it makes reporting a second route to the records, and a second route to the records is a second place where every restriction has to be remembered, and eventually is not.
Instead each block asks exactly the permission the corresponding list asks, and applies exactly the same visibility rules: the same scope, the same treatment of shared records, the same exclusion of anything marked sensitive. The consequence is that no figure on this page can be built from a record the reader could not have opened for themselves, and nobody has to maintain a parallel set of rules to keep that true.
The price is that you cannot give somebody the numbers for a part of the business without giving them sight of the records underneath it. Some organisations want exactly that, a manager who sees totals but not individual customers, and they cannot have it here. We think the trade is right and it is a real restriction instead of an oversight.
Asked about numbers
Asked about reporting
Can I build my own reports?
Yes, on every plan including the free one, and what you build is a saved view rather than a report: the filters, the order and the columns, kept under a name, run by the server and exportable. Three on Free, five on Starter, twenty five on Standard and no ceiling above that, which is the only thing about this that your plan decides. A report you configure separately from a view does not exist here, and the dashboard covers the standard measures without one.
Can reports be scheduled by email?
Not yet. That is a real gap for an organisation that wants a number on the first of the month without anyone remembering to look, and it is named on the roadmap rather than described as coming soon.
Why does my total differ from a colleague's?
Almost always because you are allowed to see different records, which is the correct behaviour rather than a fault. A report that showed everyone the same total would either leak restricted records into a number or hide them from the people entitled to count them. If two people with identical permissions get different totals, that is worth telling us about.
Can I export a report?
Yes, and the export is the report: the same rows, the same columns, in the shape you built. If you constructed the question in the product, the answer should not arrive as a generic dump you filter again in a spreadsheet.
Does it do charts?
There are simple visualisations of the standard measures. It is not a business intelligence tool: no pivot builder, no custom visualisation, no modelling layer. If you want to do serious analysis, export and use something built for it, which is a better answer than a weak version of one inside a CRM.
How current are the numbers?
Computed when you look, from the records, rather than from an overnight extract. There is no reporting database lagging behind the real one and no window during which the dashboard disagrees with the record you just changed.
Can I see how someone's individual performance compares?
You can see work by owner, which is the honest version of that question. What the product deliberately does not do is compute a score or a ranking, because a number that summarises a person is a number that gets managed toward rather than a number that describes what happened.
What is the single most useful thing here?
Stage history, and it is not close. How long things sit at each stage tells you where your process is actually broken, which is almost always somewhere different from where everyone believes. It is also the one measure that is impossible to reconstruct later if the system was not keeping it, which is why it is kept from the first day.
Who reads these hardest
Trades where the stage history changes a decision
The measures here are the same everywhere. Which of them earns its ten minutes on a Monday is not. A long cycle makes stage history the useful one, which is why it is the first thing to read in construction, in professional services and in consultancy, where the ordinary instinct for whether an opportunity is still alive stops working somewhere around month four.
Where the volume is higher the source table does more work. Recruitment agencies and marketing agencies both spend against channels, and both usually find that the channel producing the most enquiries is not the channel producing the customers. That gap is the reason conversion by source is on the page at all.
How the numbers are computed at all, one database at a time, is set out in why every customer gets their own database.
Look at the stage history first
After one quarter of real use, it will tell you something about your own process that nobody in the organisation currently knows.
Three people, a thousand relationships, no card and no time limit.