ValueinValuein
Data Catalog

What's in the datasets

Two datasets, one catalog: financial fundamentals (Free tier and up) and the smart-money dataset — insider and institutional ownership filings, on the Institutional tier. Browse every queryable field, its SEC XBRL tag, and how the tables relate.

120.5M+
Total Facts
19,000+
Entities
1993–Now
History
23
Tables

Schema Browser

Every queryable field across both datasets, with its SEC XBRL tag. Start with how the tables relate, then search the full field list below. Fields from the smart-money dataset carry an
Institutional
tag.

How the catalog tables relate

entity is the hub; every fact ties back to it and to the SEC filing it came from. Hover or focus a table to highlight its joins.

The financials core — the fact-lineage spine. Foreign keys point child → parent.
Core financialsReferenceDerived
How the catalog tables relate. 9 tables, 9 foreign-key relationships. Full text below the diagram.∞1∞1∞1∞1∞1∞1∞1∞1∞1entity● cik name sector statussecurity● id◇ entity_id symbol valid_from/tofiling● accession_id◇ entity_id form_type accepted_atfact● fact_id◇ entity_id◇ accession_id◇ standard_conceptstandard_concept● standard_concept statement_type leveltaxonomy_guide● standard_concept human_name unit_typeratio◇ entity_id ratio_name value accepted_atreferences◇ cik symbol sector is_activeindex_membership◇ cik index_name effective_date removal_date
Relationships (text)
  • security references entity via entity_id → cik (many → 1)
  • filing references entity via entity_id → cik (many → 1)
  • fact references entity via entity_id → cik (many → 1)
  • fact references filing via accession_id (many → 1)
  • fact references standard_concept via standard_concept (many → 1)
  • standard_concept references taxonomy_guide via standard_concept (many → 1)
  • ratio references entity via entity_id → cik (many → 1)
  • references references entity via cik (many → 1)
  • index_membership references references via cik = cik (many → 1)

Field reference

Field NameTypeTableDescriptionSEC Tag
cikVARCHAR
references
SEC Central Index Key — 10-digit unique company identifier (from entity)dei:EntityCentralIndexKey
nameVARCHAR
references
Legal registered company name (from entity)dei:EntityRegistrantName
sectorVARCHAR
references
Broad market sector (from entity)—
industryVARCHAR
references
Industry classification description (from entity)—
sic_codeVARCHAR
references
Standard Industrial Classification code 4-digit (from entity)dei:EntitySICCode
statusVARCHAR
references
Entity status: ACTIVE, INACTIVE, or DELISTED (from entity)—
entity_typeVARCHAR
references
SEC-defined filer category (from entity)—
security_idINTEGER
references
Surrogate PK of the security record (from security)—
symbolVARCHAR
references
Exchange ticker symbol (from security)dei:TradingSymbol
exchangeVARCHAR
references
Stock exchange name e.g. NASDAQ, NYSE (from security)—
micVARCHAR
references
Market Identification Code ISO 10383 (from security)—
valid_fromDATE
references
SCD Type 2 start date — when this ticker became active (from security)—
valid_toDATE
references
SCD Type 2 end date — NULL means currently active (from security)—
is_activeBOOLEAN
references
TRUE when valid_to IS NULL — use to filter current tickers only (from security). For index membership, JOIN index_membership ON references.cik = index_membership.cik — there is no is_sp500 flag (dropped 2026-05-02 because it was snapshot-only and single-index).—
figiVARCHAR
references
Financial Instrument Global Identifier share-class level (from security)—
composite_figiVARCHAR
references
Composite FIGI at the exchange level (from security)—
share_class_figiVARCHAR
references
Share class FIGI (from security)—
cikVARCHAR
entity
SEC Central Index Key — 10-digit unique company identifierdei:EntityCentralIndexKey
nameVARCHAR
entity
Legal registered company namedei:EntityRegistrantName
leiVARCHAR
entity
Legal Entity Identifier (ISO 17442 20-character code)—
industryVARCHAR
entity
Industry classification description—
sectorVARCHAR
entity
Broad market sector, SIC-derived with GICS-style labels (e.g. Information Technology, Health Care, Financials)—
sic_codeVARCHAR
entity
Standard Industrial Classification code (4-digit)dei:EntitySICCode
sic_descriptionVARCHAR
entity
Full SEC SIC industry label (e.g. 'Electronic Computers'). Companion to sic_code — use this when a human-readable string is more useful than the raw 4-digit code.—
fiscal_year_endVARCHAR
entity
Fiscal year end as MMDD (e.g. 1231 = December 31)—

Showing 25 of 374 fields

Standard Concepts

The canonical standard_concept dictionary — 291 normalized financial concepts that the raw XBRL tags map onto. Filter fact.standard_concept by any of these for clean, comparable cross-company queries.

ConceptNameStatementDefinition
AntidilutiveSharesAntidilutive Shares
Income Statement
Shares excluded from diluted EPS as antidilutive.
ClaimsAndBenefitsClaims And Benefits
Income Statement
Insurance claims and policyholder benefits incurred.
ClinicalTrialCostsClinical Trial Costs
Income Statement
Costs incurred running clinical trials. Not always disclosed as a separate line — often embedded in R&D. When broken out, reveals development-stage focus.
CostOfRevenueCost Of Revenue
Income Statement
Direct costs attributable to revenue generation (COGS + COS).
CurrentIncomeTaxExpenseCurrent Income Tax Expense
Income Statement
Aggregated current-period income tax expense (federal + state + foreign). Distinct from the deferred-tax component, which moves through DeferredTaxExpense. Companies that report only an aggregated figure surface here; per-jurisdiction filers expose CurrentTaxFederal / CurrentTaxState / CurrentTaxForeign.
CurrentTaxFederalCurrent Tax Federal
Income Statement
Federal/national current income tax.
CurrentTaxForeignCurrent Tax Foreign
Income Statement
Foreign jurisdiction current income tax.
CurrentTaxStateCurrent Tax State
Income Statement
State and local current income tax.
DeferredTaxExpenseDeferred Tax Expense
Income Statement
Deferred income tax provision from timing differences.
DepletionExpenseDepletion Expense
Income Statement
Period write-down of natural-resource asset basis based on units extracted. Energy/mining specific cousin of depreciation.
DepreciationAndAmortizationDepreciation And Amortization
Income Statement
D&A expense from income statement or supplemental disclosure.
DiscontinuedOpsIncomeDiscontinued Ops Income
Income Statement
Net income from discontinued business segments.
DividendPerShareDividend Per Share
Income Statement
Cash dividends declared per common share.
EPSBasicEPS Basic
Income Statement
Basic earnings per share (US-GAAP + IFRS).
EPSBasicAndDilutedEPS Basic And Diluted
Income Statement
Combined basic and diluted EPS (equal when no dilutive securities).
EPSContinuingOpsBasicEPS Continuing Ops Basic
Income Statement
Basic EPS from continuing operations.
EPSContinuingOpsDilutedEPS Continuing Ops Diluted
Income Statement
Diluted EPS from continuing operations.
EPSDilutedEPS Diluted
Income Statement
Diluted earnings per share — most conservative, standard for valuation.
EPSDiscontinuedOpsEPS Discontinued Ops
Income Statement
EPS from discontinued operations.
EffectiveTaxRateEffective Tax Rate
Income Statement
Effective income tax rate.
EquityMethodIncomeEquity Method Income
Income Statement
Share of income from unconsolidated affiliates (20-50% ownership).
ExplorationCostsExploration Costs
Income Statement
Cost of exploring for new oil/gas/mineral reserves. Often written off in the period (successful efforts vs full cost accounting choice matters here).
ExplorationExpenseExploration Expense
Income Statement
Exploration costs for extractive industries (oil/gas, mining).
FederalIncomeTaxFederal Income Tax
Income Statement
US Federal income tax expense/benefit (current + deferred).
FeesAndCommissionsFees And Commissions
Income Statement
Fee and commission income for financial institutions.

Showing 25 of 291 concepts

Example Queries

Copy-ready SQL that runs unchanged in the Python SDK's client.run_query(), or in plain DuckDB once each table is a view (see the SQL cookbook).

Annual Revenue Trend for AAPL

Annual revenue per fiscal year with the filing it came from. A 10-K repeats earlier years, so QUALIFY keeps the latest-filed value per period.

sql
SELECT  f.period_end,  f.numeric_value / 1e9 AS revenue_billions,  fi.form_type,  fi.filing_date,  f.accepted_atFROM fact fJOIN "references" r ON r.cik = f.entity_idJOIN filing fi      ON fi.accession_id = f.accession_idWHERE r.symbol = 'AAPL'  AND r.is_active  AND f.standard_concept = 'TotalRevenue'  AND f.fiscal_period = 'FY'QUALIFY ROW_NUMBER() OVER (  PARTITION BY f.period_end ORDER BY f.accepted_at DESC) = 1ORDER BY f.period_end DESCLIMIT 10;

Debt-to-Equity — S&P 500 Information Technology

Leverage across the sector from each company's latest annual values. Index membership comes from index_membership; one row per company from is_primary_ticker.

sql
WITH members AS (  SELECT r.cik, r.symbol, r.name  FROM "references" r  JOIN index_membership im ON im.cik = r.cik  WHERE im.index_name = 'SP500'    AND im.removal_date IS NULL    AND r.is_active    AND r.is_primary_ticker    AND r.sector = 'Information Technology'),latest AS (  -- Latest annual value of each concept, latest-filed vintage.  SELECT f.entity_id, f.standard_concept, f.numeric_value  FROM fact f  JOIN members m ON m.cik = f.entity_id  WHERE f.fiscal_period = 'FY'    AND f.standard_concept IN ('LongTermDebt', 'StockholdersEquity')  QUALIFY ROW_NUMBER() OVER (    PARTITION BY f.entity_id, f.standard_concept    ORDER BY f.period_end DESC, f.accepted_at DESC  ) = 1)SELECT  m.symbol,  m.name,  MAX(CASE WHEN l.standard_concept = 'LongTermDebt'       THEN l.numeric_value END) / 1e9 AS long_term_debt_billions,  MAX(CASE WHEN l.standard_concept = 'StockholdersEquity' THEN l.numeric_value END) / 1e9 AS equity_billions,  long_term_debt_billions / NULLIF(equity_billions, 0)                                     AS debt_to_equityFROM latest lJOIN members m ON m.cik = l.entity_idGROUP BY m.symbol, m.nameORDER BY debt_to_equity DESC NULLS LAST;

Free Cash Flow — Latest Quarter (S&P 500)

Quarter-only operating cash flow minus capex. derived_quarterly_value turns year-to-date 10-Q figures into single quarters, and the FY row carries Q4.

sql
WITH members AS (  SELECT r.cik, r.symbol, r.name, r.sector  FROM "references" r  JOIN index_membership im ON im.cik = r.cik  WHERE im.index_name = 'SP500'    AND im.removal_date IS NULL    AND r.is_active    AND r.is_primary_ticker),quarters AS (  -- Quarter-only cash flow: Q2/Q3 are filed year-to-date and the FY row  -- carries Q4, so read derived_quarterly_value first.  SELECT f.entity_id, f.period_end, f.standard_concept,         COALESCE(f.derived_quarterly_value, f.numeric_value) AS quarter_value  FROM fact f  WHERE f.standard_concept IN ('OperatingCashFlow', 'CAPEX')    AND f.fiscal_period IN ('Q1', 'Q2', 'Q3', 'FY')    AND (f.fiscal_period <> 'FY' OR f.derived_quarterly_value IS NOT NULL)  -- FY only for its Q4  QUALIFY ROW_NUMBER() OVER (    PARTITION BY f.entity_id, f.standard_concept, f.period_end    ORDER BY f.accepted_at DESC  ) = 1),latest AS (  SELECT    entity_id,    period_end,    MAX(CASE WHEN standard_concept = 'OperatingCashFlow' THEN quarter_value END) AS ocf,    MAX(CASE WHEN standard_concept = 'CAPEX'             THEN quarter_value END) AS capex  FROM quarters  GROUP BY entity_id, period_end  HAVING ocf IS NOT NULL AND capex IS NOT NULL  QUALIFY ROW_NUMBER() OVER (PARTITION BY entity_id ORDER BY period_end DESC) = 1)SELECT  m.symbol,  m.name,  m.sector,  l.period_end                     AS quarter_end,  l.ocf / 1e6                      AS ocf_millions,  ABS(l.capex) / 1e6               AS capex_millions,  (l.ocf - ABS(l.capex)) / 1e6     AS fcf_millionsFROM latest lJOIN members m ON m.cik = l.entity_idORDER BY fcf_millions DESC NULLS LASTLIMIT 20;

Ready to query 120.5M+ facts?

Get a free API key and start querying in 60 seconds.