The workbook is a snapshot
Next year the table is rebuilt from scratch. The reasoning that produced it — which rows counted, which were excluded — lives in somebody's head, and leaves when they do.
Data governance · Statistical production · Decision support
SIGESTAT produces publication-ready yearbook tables from an operational relational database, keeps every figure versioned and traceable, and lets a decision-maker ask a question in plain language and get a number that cites its source. No SQL. No upfront data-modelling project.
The problem
Collect, check, clean, build views over the database, then assemble the tables in Excel pivot tables — every year, largely by hand, by the one person who knows how. That last stretch has three failure modes, and they compound.
Next year the table is rebuilt from scratch. The reasoning that produced it — which rows counted, which were excluded — lives in somebody's head, and leaves when they do.
Nothing records how a figure was obtained. When a published number is challenged, there is nothing to re-run and no trail to follow back to the source.
Look up a value across a one-to-many relationship and the total inflates without a word. The error is invisible in exactly the place where being wrong costs the most.
What it does
The same table serves the statistician who publishes it, the institution that has to stand behind it, and the director who needs an answer this afternoon. That is the whole idea: not three tools, one thing used three ways.
Publication-ready tables straight from the operational database — nested headers, merged cells, totals — exported to Excel and Word, and assembled into a complete yearbook document.
Every table versioned, every publication recorded, changes in the source database detected, and the institution's own rules written down instead of living in one person's head.
A decision-maker asks in plain language — no analyst to go through, no yearbook to page through — and gets a figure that cites the table it came from and the date it was computed, or an honest "no table covers this yet".
How it works
Four stages. Nothing in this chain asks the user to write code, and nothing in it requires a preparatory project first.
The structure of the database — its tables and how they relate to one another — is read from the source. Nothing has to be described by hand.
The published layout is what you build: nested headers, merged cells and totals, plus what each cell counts and what it leaves out.
Dozens of checks run before anything reaches the database — including the one that catches figures about to be counted twice.
Excel, Word, JSON and Stata, with several tables assembled into a single yearbook document. Versioned, so next year is a re-run.
Time to publication
A yearbook is normally produced strictly in order. Collect the data. Run the entry checks. Clean it. Then build database views on top of it, and only then start assembling the tables — in practice, in Excel pivot tables. Each stage waits for the one before, and the two design stages sit at the very end of the chain.
SIGESTAT breaks that dependency. A table is built against the structure of the database, not against the rows in it. The checking and cleaning still have to happen — that is about data quality, and nothing removes it. But the design work no longer waits behind it: the whole yearbook can be built and reviewed while collection is still running, and when the data is ready a single refresh fills every table at once.
Each stage waits for the one before. Designing the tables — the part that takes judgement — happens when there is least time left.
The data-quality work is unchanged — that is about the data itself, and nothing removes it. The design work moves off the critical path and runs beside it, with no views and no pivot tables left to build.
Reference tables — regions, levels, school types — exist from the first day of a campaign. Everything that defines a yearbook table can be settled against them while the facts accumulate.
No database views to prepare, and no pivot tables to assemble. SIGESTAT reads the operational database directly and produces the published table itself, so the two design stages at the end of the usual chain are simply not there.
When the data is in, a single refresh repopulates every table in the project. Getting the yearbook out becomes something measured in a run, not in a season.
See it work
Each clip is a real screen recording against a live instance and a synthetic education dataset. No slides, no mock-ups.
Point it at the database you already run. It reads the structure straight from the source — no preparation, no reorganisation, nothing to build first.
Nested headers, merged cells, totals. What you draw is the published table — and every field you place in it is checked against the real database.
The database stores codes; the yearbook has to print words. You draw the link between them, and say explicitly which column is a total.
Which cases each figure counts is built up from blocks, cell by cell — no query language, and no ambiguity about what a number includes.
Describe the table in plain language. What comes back is a proposal you can inspect — and a change to an existing table waits for your decision.
Combine two things carelessly and every pupil gets counted once per teacher. SIGESTAT catches it before the figure reaches a published page.
A director asks in plain language, without going through an analyst or opening the yearbook. The answer names the table it was read from and the date that table was computed.
Decision support
A director who needs a figure has two options today. Ask someone to look it up, and wait. Or open the yearbook and find the right table among hundreds — which assumes they already know which table holds the answer.
SIGESTAT adds a third: ask. No analyst in the loop, no document to navigate. And what comes back is not a plausible-sounding figure — it is a figure they can quote in a meeting and defend afterwards.
The assistant does not query the database when it answers. It reads the published tables of the project, at the values they were last computed with — the same values the yearbook was printed from — and every figure it returns carries a citation and a date.
Each number in an answer records where it came from: which table, which row and column, and when that table was last computed. A figure with nothing behind it cannot be returned at all.
If the table behind an answer was last computed more than thirty days ago, the answer says so. The decision-maker sees the age of the number at the same moment they see the number.
Every answer is labelled grounded, not found or needs clarification, with a confidence level. When no published table covers the question, the assistant says what is missing and offers to build the table — rather than inventing a figure that looks right.
A yearbook is meant to be an official reference, not something anyone should have to page through to settle a question. It stays exactly what it was — while the answers become reachable without opening it.
No request to a statistician, no place in a queue, no waiting for someone to come back from leave. The question goes straight to the tables the institution has already published and validated.
If the answer needs a table nobody has built, the assistant can build it — checked exactly as a hand-built one would be, marked as assistant-created, and clearable in one go.
Supervised AI, not a black box
Elsewhere, an AI assistant on a database writes the query itself. If it gets a relationship wrong, the result looks perfectly normal and nobody finds out.
Here the model describes what the table should contain — and the software checks that description and writes the query. A mistake is caught by a check, or shown on screen before anyone approves it. It cannot slip through as a plausible number.
The assistant is a co-author with a human veto. Every lever below is in the interface, on every turn.
For the people who build the tables
A director asks it for a figure. A statistician asks it to build the table that figure comes from — and, just as often, to go and find out why a number looks wrong. That second job saves the most time, because it is the one nobody can do quickly by hand. It looks, and brings back concrete cases: rows, counts, actual offenders. What they mean stays the expert's call.
Describe the table you want and get a working one back — structure, labels and scope — then take it into the builder and adjust. Faster than starting from a blank grid, and the result is an ordinary table with nothing special about it.
The classic cause of an inflated figure is a record that appears more than once where it should appear once. The assistant can go and look, and it comes back with the actual offending records — "this establishment has two statuses in the same year" — not a suspicion.
How full is it, how many nulls, how many zeros, how many distinct values, and is it collected everywhere or only in some regions? Enough to catch the two silent failures: a column that is empty, and one that only exists for part of the country.
A category renamed in the source, a code retired, a new value nobody declared — and a published table quietly stops counting part of its population. The assistant can compare what a table expects against what the database actually contains.
It can scan the project's saved configurations for damage — empty templates, broken references. That kind of corruption is quiet: the table keeps refreshing from what was stored, so nothing complains until someone looks.
Data governance
A published statistic outlives the person who produced it and the month it was produced in. Everything below exists so that, two years later, someone can establish where a number came from, reproduce it, and know what has changed underneath it since.
The rules that used to live in one analyst's head — which cases count, which are excluded, what a column really means — are written down against the data source, with a record of who vouched for each one.
Any earlier version can be looked at and restored, and a version holds the complete recipe rather than a fragment of it.
The structure of the source is recorded each time it is read. When the operational database changes underneath a table, that table is held back rather than quietly producing different numbers.
Generations keep the parameters they ran with and the documents they produced. A published yearbook can be traced back to the exact run that made it.
Nothing the assistant does is a closed box. Each step is kept and can be reopened, and whatever it produced can be changed by hand afterwards, because it built the same object a person builds.
User accounts with role-based access control who can author, who can publish and who can only read. Deleted projects go to a recoverable trash rather than disappearing, and the database is backed up daily on a rolling retention.
There is somewhere to go. The assistant can be sent back into the source database to look for what usually causes it, and it returns concrete cases rather than an opinion — see what it can look for.
Working together
It is written by a team, over months, alongside an assistant, and usually under deadline. Most of what goes wrong in that setting is not a bad figure — it is two people, or a person and a machine, quietly undoing each other's work.
Each table carries a marker of when it was last changed. If it moved while you were working on it, the save is refused and you are told to look at what changed first. The system will not resolve that conflict by picking a winner behind your back.
If a colleague edits a table while the assistant is preparing a change to it, the proposal is rejected as out of date and has to be rebuilt on top of their work. An AI collaborator gets no privilege a human colleague would not have.
Conversations, proposals and decisions are kept with the project, not with a session. A colleague can open the thread, read what was asked and what was decided, and carry on — or take the table into the builder and finish it by hand.
A project-wide refresh can take a while. Several people can follow the same run at once and see the same progress, instead of each launching their own and wondering which one counts.
The rules about what a column really means are attached to the data source, where the next person will find them — rather than in a document on somebody's laptop.
A project exports as a single bundle — its data sources, its tables and their history — and imports into another instance. Useful between a test and a production server, and between one institution and the next.
The heavy operations — building a query, exporting a document, running an assistant turn — are kept off the path that serves everyone else's clicks. One colleague exporting a large yearbook does not freeze the interface for the rest of the office.
Alternatives
Each of these does part of the job well, and part of it not at all.
| Instead of | Where it stands |
|---|---|
| Excel or Google Sheets | Unbeatable for a last-minute adjustment, and the tool SIGESTAT actually replaces. What it cannot give you is a result you can reproduce next year, a trail back to the source, or a warning when a figure quietly doubles. |
| The established statistical platforms | Reliable, because the data has been reorganised in advance to make it so. That reorganisation is a project in itself — months of work before the first table exists. SIGESTAT works with the database as it already is. |
| Power BI or Tableau | Complements rather than competes. They are built for exploring data and building dashboards; a yearbook is a different craft — three-level headers, merged cells and footnotes, in Word. |
Honest limits
Three limits worth knowing before a procurement conversation rather than after one.
The template encodes the final structure, so you have to know what you want. To go looking through a dataset, use a BI tool — the two are complementary, not substitutes.
Every check can pass and the figure still be wrong, because the population chosen was not the right one. No software knows that a particular group should have been left out.
Nothing has to be prepared in advance, but each genuinely new table shape takes a round of effort. Repeating a table across years or regions is already handled.
Scope
Education is where SIGESTAT is deployed, not what it is made of. Nothing about schools, pupils or school years is written into the software: the structure comes from whichever database you connect, and the vocabulary comes with it. Health facilities, civil registration, agriculture, taxation — the tool does not know the difference, and does not need to.
PostgreSQL, SQL Server, MySQL, MariaDB, Oracle, SQLite and Microsoft Access, connected as they are. Relational sources are what SIGESTAT reads today; other kinds of source are on the roadmap.
Nobody technical is needed between the question and the table. The person responsible for the indicator is the person who builds it — by hand, with the assistant, or both.
It runs inside your own infrastructure. The data never leaves the institution, and nothing depends on a foreign cloud service.
The interface runs in English and French, and error messages are localised too — which matters where the working language of the report is not the working language of the database.
In the field
SIGESTAT is not a prototype looking for its first user. It has been deployed and tested in Cameroon, within the country's education management information system (SIGE), under the PAREC programme with the support of the World Bank.
It runs against the databases of STATEDUC, the UNESCO school data management application — an operational system already in place across the administration, exactly as it stands. That is the whole premise of the product, tested where it counts: nothing was rebuilt beforehand, and nothing was rewritten to accommodate the tool.
Who built it
SIGESTAT builds software that turns raw statistical data into publication-ready yearbooks and tables — for statistical offices and organisations that publish numbers.
SIGESTAT grew out of years of producing statistical yearbooks by hand: collecting data from dozens of sources, formatting tables, checking figures, and redoing it all the next year. The tools that finally took that work off the table became this product.
The system is designed to be handed over. A whole project moves between servers as a single bundle, and the institution that owns the data owns the tables built from it. Nothing here depends on us to keep running.
In one sentence