What CompanyGraph is
Companies, and the claims that hold them together
CompanyGraph is a system that turns financial evidence into bounded claims about how companies hold together. Instead of presenting numbers in isolation, it looks for relationships that reveal something structurally important. High return on equity alongside high debt, for example, may show strong returns to shareholders within a company that has less financial flexibility. CompanyGraph makes patterns like this visible on company pages and searchable, filterable and measurable across the market.
14,093 companies, 144 industries and 7 coordination roles, open to anyone who arrives.
The interpretation on the left is real. Return on equity above its industry, debt to equity above its industry, and a high equity multiplier together read as: return on equity reads high on a balance sheet carrying a lot of debt against that equity. That is a description of a structure, not a verdict on it.
What membership adds
The library, and your credits
A report is a long-form structural reading of one company, synthesised from evidence already verified. You never write one. Every report a member synthesises joins a single shared library, and every member reads all of it.
Free account
No charge, and no card
An email address gets you:
- Every company page, industry and coordination role
- Two to five companies side by side, or one company against its own industry
- The price tab on every company page5 structural lenses, 40 indicator panels, 89 price observations.
- The screener, with every filter and every observation to filter on10 searches a month, and the first page of whatever matches.
- The observation trust ledger and the corrections record
- Every report's summary and the evidence sheet under it
- The glossary, the method pages and everything written about how it works
Member
€90 the first year, then €60 a year
Everything in a free account, and:
- Read every report in the shared library, in fullIt grows whenever any member synthesises one.
- Synthesise the ones that are missingIt opens with 10 credits and adds one an active month, so 21 in the first year and 12 a year after. One credit a report.
- Compare two to five companies as a reportOne credit flat, including any single-company reports it has to write first.
- Ask one question per report, answered against the whole company context
- Copy a company for your own AIA layer-labelled export of what CompanyGraph knows about it.
- Search without a limitEvery company that matches, not the first page of them, and grouped by coordination, role, shared interpretation or industry.
- More credits when you want them: 5 for €25, 25 for €80
Credits do not expire. Reports you synthesised stay readable to you, member or not. One membership, no feature tiers, cancel any time from your account.
What it costs
Payment is handled by Stripe. Cancel any time from your account.
What holds it up
Nothing here is asked to be taken on trust
Every level of the graph rests on something, and it is a different something each time. This is what sits underneath each one. Today 214 of 220 observations reproduce, and the ones that do not are named.
It was filed, imported, and put through the checks
The company published it. A data provider imported it. Before CompanyGraph computes anything from it, it has to survive rules that a real filing cannot break.
A year that fails goes whole. The provider mis-scales income, balance sheet and cash flow together, so a single line cannot be repaired on its own. The fiscal year is withheld and the page says so, rather than quietly serving four fifths of it.
Separate code re-derives it and has to reach the same answer
The engine scores the observation. A second implementation, written independently, recomputes it from the company's own reported figures. If the two disagree, the observation is marked untrusted.
Different code, on purpose. A checker that shares the claim-maker’s code proves only that it agrees with itself. Independence is the entire value of the check, so the two implementations are never allowed to be unified.
Kept as a durable record, so the check can be re-read later rather than re-trusted. Change the formula and the trust resets to nothing and has to be earned again.
It has no evidence of its own
An interpretation is not measured. It stands entirely on the observations that fired underneath it, and it is published together with the things it is not entitled to say.
What it does not say
- That the leverage is inappropriate
- That financial distress is coming
- That the company should deleverage
- Whether the equity multiplier is unusual for this industry
- How much of the return comes from operations rather than leverage, because no observation in the set can separate them
Those limits are written with the interpretation, not added afterwards, and they travel with it wherever it appears.
Only claims that reproduced are allowed in
The writer never sees a raw firing. It is handed verified claims, each with its status, its arithmetic and the date of the figures behind it.
What the writer receives
- claim
- Return on equity above its industry
- status
- reproducible
- working
- net income over shareholders’ equity, 0.3142
- as of
- the 2024 filing
Never a raw firing.
The two that were stopped are not hidden. They still appear on the company page, labelled with exactly how far they have been checked. They simply never become sentences in a report.
What it costs
Payment is handled by Stripe. Cancel any time from your account.