Skip to content

Where the data comes from

View as Markdown

Everything the API serves comes from official sources: company figures from filings on the SEC’s EDGAR system, and two macro series from the U.S. Bureau of Labor Statistics. We don’t buy data from other vendors, and we don’t fill gaps with estimates. When a figure can’t be settled from the filings, it’s left out.

Dataset Source What it is
Metrics SEC Company Facts Every XBRL figure each company has filed, in one file per company.
Statements, Financials, Segments SEC Financial Statement Data Sets The SEC’s quarterly extract of the financial statements in periodic filings.
Insider trades SEC Forms 3, 4 and 5 data sets Transactions reported by officers, directors and large holders.
Form 13F holdings, Holders SEC Form 13F data sets Holdings reported by institutional investment managers. Holders also uses Schedules 13D and 13G and the SEC’s official list of 13(f) securities to link each holding to a company.
Ownership SEC Schedules 13D and 13G Structured filings by large holders, from 2024-12-18.
Filings SEC submissions Each company’s list of filings.
Earnings releases SEC 8-K filings with Item 2.02 The press-release exhibit furnished with the filing, since 2024-01-01.
Company SEC ticker file and filer records Names, tickers, CIKs and fiscal year ends.
Macro U.S. Bureau of Labor Statistics CPI and the unemployment rate.

Every figure can be traced to the filing it came from:

  • Metrics carry source (accession, EDGAR link, form and filing date) and first_reported (the first filing to report the same period, and its value). A quarter we computed carries both filed figures in operands instead.
  • Statements, segments, insider trades, 13F holdings, ownership and filings carry the filing’s accession, and most carry its filing_url on EDGAR.
  • Financials carry source_accession and the XBRL tag of the printed line.
  • Earnings releases carry the filing’s accession, its filing_url and the exhibit’s exhibit_url on EDGAR.
  • Macro points carry the BLS source_url they were read from.

An accession number such as 0000000000-00-000000 identifies one SEC filing. To open it, follow filing_url, or look it up in Filings.

As little as we can, and we say when we do:

  • Values are as filed. A blank in a filing is null, never 0. Statements keep the sign the company tagged in value, and the sign it displays in display_value.
  • When filings disagree, metrics follow written rules: which filing is the company’s own, which figure is a thousand times off, which tag is a sub-line. Every time a rule changes a figure, the point lists it in adjustments. The rules are on Metrics and Known limits.
  • When we can’t tell, we leave the figure out. Holders are linked to a company only when two independent pieces of evidence agree.
  • Restatements replace earlier figures. The API serves the current reading. first_reported shows what was first filed for a metric; there’s no history of other versions.
  • Metrics arrive the morning after the SEC publishes its Company Facts file.
  • Statements can lag by about a quarter. The SEC publishes its data sets once a quarter: the 2026q3 set holds filings accepted through 2026-09-30, and it was posted on 2026-10-07. A filing accepted just after a set closes waits for the next one, about 14 weeks at that timing. So a company’s metrics can be a quarter ahead of its statements.
  • Every dataset reports its own as_of and age on /v1/status, and every answer carries meta.as_of.

Data is derived from filings on the U.S. Securities and Exchange Commission’s EDGAR system. Belfort is not affiliated with or endorsed by the SEC. Macro data comes from the U.S. Bureau of Labor Statistics, which asks that it be cited as the source. This is data, not investment advice.