Every figure traceable to its source
Board-ready reports,
written from your documents
Upload the memorandum, the spreadsheet, the market research. Describe the document you need. Reportly plans it, writes it across A4 pages that never overflow, draws the charts from your actual numbers — and keeps the link from every figure back to the passage it came from.
Grounded mode refuses to invent a number · Your documents stay in your workspace
27
block types
each with its own schema and editor
4
chart types
drawn from your numbers, not generated as images
20 MB
per document
PDF, Word, Excel, CSV, Markdown, HTML
12
web searches
indexed alongside your own sources
Why this exists
Generating the text was never the hard part
01
It reads beautifully and fits nothing
Prose arrives as one continuous stream. Cutting it into pages that end where they should, with tables that do not straddle a page break, is manual work — and it is most of the work.
02
The numbers look right
That is the problem. A plausible figure in a document going to a committee is worse than a missing one, because nothing about it invites checking.
03
The source is in a chat you closed
Three weeks later someone asks where 34 % came from. The conversation that produced it is gone, and the document itself has no memory of it.
How it works
Six stages, and you can see all of them
Not one prompt and a shrug. Each stage has a job, an output you can inspect, and a way to intervene when it gets something wrong.
01Read
Your documents are indexed, not pasted
A 120-page memorandum is split into ~1 200-character passages and embedded once, at upload. Generation retrieves only what each page needs, so the source material never has to fit inside a prompt.
PDF · DOCX · XLSX · CSV · MD · HTML · JSON — 20 MB per file
02Research
The web, at the depth you choose
One slider, from a single search to twelve. Results are indexed into the same store as your uploads, so a web finding and a page of the memorandum compete on equal terms for a place in the document.
Depth switches to deep from 8 searches
03Plan
A structure before a single sentence
The outline decides sections and page counts, then each section gets its own blueprint: which blocks, in which zones, on which page. Structure is the cheapest thing to get right and the most expensive to fix later.
One blueprint call per section, never one for the whole report
04Write
Pages written in parallel, and validated
Every page is generated against the schema of each block it contains. Output that does not match is repaired, then retried with the validation errors fed back — a malformed block is reported, never written into your document.
27 block types, each with its own schema
05Fit
A4 that genuinely fits on A4
The canvas measures the rendered height of every column and compares it to the real usable space. Overflow moves to a continuation page at an item boundary; a half-empty page is flagged so you can fill it.
Measured, not estimated — the same numbers drive the export
06Check
Twelve checks before anything leaves
Cut content, a block that failed, an untouched placeholder, a working note, a figure with no source. Blockers stop the export and each one clicks through to the block at fault.
Grounded mode turns unsourced figures into blockers
Traceability
A number you cannot source
is a risk, not a detail
In an investment memo, an unsourced figure that reaches a committee is an incident. So the link from a sentence back to the passage that justifies it is kept all the way to the finished document.
Every figure keeps its passage
Retrieval knows which extracts were put in front of the model, and the writer marks each figure with its source. Both are kept, so the finished report can answer where a number came from.
It says “page” when it only knows the page
A block that cites a source is attributed to that source. A block that cites none inherits the page’s sources and says so, rather than claiming a precision that was never there.
Grounded mode refuses to invent
Switch it on and a figure with no support becomes a visible gap for a human to fill — and a blocker on the export — instead of a plausible number nobody checked.
Synthèse du marché
Le marché français du SaaS mid-market a progressé de 18 % en 2025, porté par la digitalisation des directions financières. Les acteurs de taille intermédiaire captent désormais 34 % de la dépense logicielle.
2 sourcesCited by this block
IM Target SA 2026.pdf
p. 14Le chiffre d’affaires consolidé atteint 12,4 M€ au 31 décembre 2025, en progression de 18 % par rapport à l’exercice précédent.
Web research — SaaS mid-market France
Les éditeurs de taille intermédiaire captent 34 % de la dépense logicielle des ETI françaises, contre 27 % trois ans plus tôt.
Hover any block in the editor to see this.
Charts
Drawn from the spreadsheet, not imagined around it
Most AI documents illustrate their numbers with a generated picture of a chart — beautiful, expensive, and correlated to nothing. Upload the sheet instead: the chart is built from its cells, and rebuilt when the file changes.
CA par segment 2023-2025.xlsx
| Segment | 2023 | 2024 | 2025 |
|---|---|---|---|
| Licences | 4,1 | 4,8 | 5,6 |
| Services | 2,2 | 2,4 | 2,7 |
| Maintenance | 3,0 | 3,4 | 4,1 |
| Total | 9,3 | 10,6 | 12,4 |
The totals row is left out of the chart — it would dwarf every other series.
- Licences5,6 M€
- Services2,7 M€
- Maintenance4,1 M€
Source : CA par segment 2023-2025.xlsx.
The axis always includes zero
A truncated axis exaggerates every difference, and this goes into a document someone signs.
A gap is a gap
An empty cell is drawn as missing, never as zero. A chart that shows nothing as zero says something untrue.
Vector, not pixels
SVG all the way to the PDF: sharp at any size, selectable, and no image credits spent.
The editor
A first draft is where the work starts
Anything can produce a wall of text. What decides whether a document ships is how fast you can fix the three things that are wrong with it.
76 block types — the list the generator picks from, and the one you insert from.
Edit anything, in place
Double-click a block and edit its fields — a table gets a grid, a chart gets its data, a list gets its items. All 27 types, no exceptions and no round trip through the model to change a word.
Undo that covers everything
Deletes, reflows, imports, page moves — fifty steps back, and forward again. Every destructive action also carries an Undo button in its own notification, because that is the one people find.
Keyboard all the way through
Blocks take focus, Enter opens the editor, Delete removes, arrows move between them. Ctrl+Z and Ctrl+Shift+Z do what they do everywhere else.
Ask for a change, get a patch
“Make the tone more formal” rewrites the blocks it needs to and leaves the rest untouched — your manual edits survive. A refinement is a patch, never a regeneration.
Control
The checks that stand between a draft and a client
A generator that always says yes is a liability. These are the moments the product refuses, and the reasons it gives.
Pages that fit, measured not guessed
The canvas measures every rendered column against the real usable height of an A4 sheet. Overflow is moved to a continuation page at an item boundary — never mid-sentence — and what is left is what the PDF will contain.
975 px of usable height per column
Two people, one report, no silent loss
Autosave runs every five seconds. Each write carries the version it started from, so a save that would replace someone else’s work is refused and you are asked which side to keep.
Optimistic locking on every write
Your session survives a refresh
Undo, redo and history are kept per tab, so closing a laptop lid or reloading the page does not take away the way back from a mistake.
50 undo steps · 20 named snapshots
You know the cost before you spend it
An estimate of tokens, euros and minutes sits next to the brief, and moves as you change the research depth. No more launching a generation blind and finding out on the invoice.
Per-phase model configuration
Export PDF
12 pages · Target SA — Revue stratégique T3
2 issues to fix before exporting · 2 warnings
- “Analyse des revenus” overflows by 295 px — that content is cut from the PDF.
- A figure on “Synthèse du marché” is not tied to a source.
- “Annexes” is only 31 % full (target 92 %). Use Expand, or merge it.
- An illustration on “Couverture” has no description.
Blockers stop the export. Warnings ask once. Every line clicks through to the block at fault.
Fix them and the same dialog says: all checks passed.
Use cases
Built for documents that get signed
Long, structured, sourced, printed. The kind where the layout matters and an invented number is a problem — not a blog post with a hero image.
Alternatives
Where the other ways stop working
A general assistant writes well. A template lays out well. A long, sourced, printed document needs both at once — plus something that says no when a page is wrong.
| What you need | AI chat | Template | Reportly |
|---|---|---|---|
| Reads a 120-page documentWithout pasting it, and without losing the parts that did not fit | Partly | No | Yes |
| Fits an A4 page, exactlyMeasured against real rendered height, with overflow moved not clipped | No | Yes | Yes |
| Charts from your numbersVector, rebuilt when the spreadsheet changes | Partly | Partly | Yes |
| Traces a figure to its sourceIn the finished document, not in the conversation that produced it | No | No | Yes |
| Refuses to ship a broken pageCut content, unwritten blocks and unsourced figures block the export | No | No | Yes |
| Edit a word without regeneratingInline editing on every block, with undo behind it | No | Yes | Yes |
| Keeps its structure across reportsThe same sections, in the same order, every quarter | No | Yes | Yes |
Questions
The things people ask before trying it
What does Reportly actually produce?
A multi-page A4 document — an investment memo, a due-diligence report, a board pack, a market study — laid out for print and exported to PDF. It is not a slide deck and not a web page: pages have a fixed height, and the content is fitted to them.
Does it invent figures?
Not in grounded mode. There, a figure the sources do not support becomes a visible gap for a human to fill, and the export refuses to run until those gaps are dealt with. In illustrative mode plausible figures are allowed, and they are never presented as audited. The mode is a switch in the toolbar, and it is visible in the document at all times.
Which files can I upload?
PDF, Word (.docx), Excel (.xlsx, .xlsm), CSV and TSV, Markdown, plain text, HTML and JSON, up to 20 MB per file. Spreadsheets are read twice: as text for retrieval, and as typed tables so a chart can be built from their cells.
How does it handle a document too long to fit in a prompt?
It is indexed rather than pasted. The file is split into passages of roughly 1 200 characters, embedded once at upload, and each page of the report retrieves only the passages relevant to it. A 120-page memorandum never has to travel through a prompt in full.
Can I edit the document afterwards?
Every block is editable in place — text, tables, lists, charts and all the rest. Editing never goes through the model, so a one-word change costs nothing and takes no time. Fifty steps of undo sit behind it, and they survive a page refresh.
What happens if the content does not fit on the page?
The canvas measures the real rendered height of every column against the usable height of an A4 sheet. When a column overflows, the excess moves to a continuation page at an item boundary rather than being clipped mid-sentence. If any overflow is left, the export is blocked and tells you which page.
Where do the charts come from?
From your data. Upload a spreadsheet, pick the sheet, and the chart is built from its cells as vector graphics — bar, line, donut, or a bridge for value creation. Re-import the file and one click brings every bound chart up to date.
Can two people work on the same report?
Yes, and a save that would overwrite someone else’s work is refused rather than silently applied. You are shown that the report changed elsewhere and asked whether to load their version or keep yours. Simultaneous editing in the same document is not there yet.
What does a report cost to generate?
It depends on length and research depth, and the estimate is shown next to the brief before you start — tokens, euros and minutes — updating as you change the settings. Each generation phase can be pointed at a different model, so cost and quality are tuned where they matter.
Where do my documents live?
In your own workspace, behind authentication. Every AI route requires a signed-in user and is rate-limited per account; uploaded files are indexed into your workspace and are never shared between accounts.
Your next report is already in your documents
Upload what you have, describe what you need, and see the first pages come back with their sources attached. No template to set up first.
Grounded mode on · Your files stay in your workspace · Export to PDF from the browser