Dados B3 › Transparency
Transparency
Transparency — how you check the number isn't lying
What is checked, before every publication
Accounting — the statements tie
I-B01— Total assets = total liabilities — the balance sheet ties.I-B02— Gross result = Revenue + Cost — the income statement ties.I-B02b— Pre-tax income + tax = result from operations — the tax identity.I-B09— Gross margin recomputed straight from CVM's raw file matches.
Point-in-time — no look-ahead
I-B15/18— The price in a multiple is NEVER earlier than the filing's publication (no look-ahead).I-B16— market_cap = price × share count, recomputed outside the code that produced it.I-B19— TTM earnings match the TTM recomputed via an independent path.
Series integrity
I-B06— No gap in the middle of a company's series (a load defect can't ship).I-B07— Every restatement is recorded — never silently corrected.I-B20— Every year, 2010 to today, has prices in the database.
Honest flagging
H-B08— |ROIC| > 200% without the roic_extremo flag is a defect.H-B17— |P/E| > 200 without an extreme flag is a defect.H-B25— A bank ROE outside [-100%, 150%] gets a flag.I-B26— The Piotroski F-Score can only be an integer from 0 to 9.
Reconstruct it yourself — net margin across 5 companies, 4 sectors
We don't ask you to trust the numbers. Here's the net margin of five companies in four different sectors, each rebuilt straight from its annual report (DFP) at the CVM — net income ÷ revenue, matching the published figure exactly:
| Company · sector | Net income (CVM acct) | Revenue (CVM acct) | Margin =÷ |
|---|---|---|---|
| WEGE3 · industrial | R$ 6.78 bn DRE:3.11 | R$ 40.80 bn DRE:3.01 | 16.6% |
| VALE3 · mining | R$ 11.81 bn DRE:3.11 | R$ 213.59 bn DRE:3.01 | 5.5% |
| PETR4 · oil & gas | R$ 110.61 bn DRE:3.11 | R$ 497.55 bn DRE:3.01 | 22.2% |
| ITUB4 · bank | R$ 45.85 bn DRE:3.09 | R$ 387.12 bn DRE:3.01 | 11.8% |
| BBAS3 · bank | R$ 16.78 bn DRE:3.11 | R$ 319.46 bn DRE:3.01 | 5.3% |
Download any of these DFPs from the CVM, take the income and revenue accounts, divide — you get the same number. Banks use interest income as revenue (what makes sense for a bank), so the reconciliation is sector-aware; the others use sales revenue. Figures are the latest fiscal year.
Why we may differ from another site (and it's not an error)
A difference between two sites usually isn't one being wrong — it's a method choice. We disclose ours:
- Average vs ending capital: ROE and ROIC use average equity/capital (this year + last ÷ 2), not the ending balance — so they're not a naive single-year division.
- Controlling vs consolidated: we state which one each item uses.
- TTM vs annual: quarterly multiples use trailing-twelve-months earnings.
- IFRS 16, goodwill, cash, exceptional tax: each handled explicitly and flagged when it distorts.
Do the tests bite? Yes — real cases the suite has caught
A test that never fails could mean perfect data — or a weak test. These were born from real errors that slipped through, and now fail:
- I-B20 · the missing COTAHIST 2023: on the first deploy one year of prices failed to download silently; the API shipped with ~50k fewer prices and the suite passed, because nothing checked coverage. We added I-B20 — a year without prices now fails the build loudly.
- I-B16 · banks' P/E = 0: the CVM reports share count sometimes in units, sometimes in thousands (varying by company and year); market cap came out 1000× too small and P/E was zero. I-B16 (price × shares recomputed) caught it — we fixed 661 annual and 2,027 quarterly multiples.
- H-B23 · the 800% dividend yield: old B3 dividends carry a price not adjusted for splits; without H-B23 the yield would look absurdly real. The flag keeps the record and warns.
- I-B24 · the vanishing profit: the profit/equity account varies by bank (Itaú 3.09, BB 3.11); if the label search fails, the number vanishes silently and ROE is born wrong. I-B24 makes that hole fail.
Live coverage
437 companies · 648,058 price points · 7,320 recorded restatements · last refresh 2026-08-12 20:34:40. Full live counts at /saude.