Skip to main content
Skip to main content

SEC XBRL Annual Fundamentals — 15 US-GAAP Concepts For Every Filer, Calendar Years 2009–2025

DatasetCSV.GZOpenSECXbrlFundamentalsFinancial StatementsEdgarEquitiesFree

1,152,906 filer-concept-year facts for 16,041 SEC registrants across 15 US-GAAP concepts (revenue, cost of revenue, gross profit, operating income, net income, total assets, liabilities, shareholders' equity, cash, long-term debt, operating cash flow, capital expenditure, diluted EPS and shares outstanding) for calendar years 2009 to 2025, from the SEC's XBRL frames API as of 2026-09-06. Long format: one row per company, concept and calendar-year frame with CIK, entity name, state or country of incorporation, unit, period start and end, value and the accession number of the filing the fact came from, 250 frames fetched. Join to the SEC Company Tickers set on CIK.

Use Cases

  • Fundamental screens across the whole US filer universe
  • Point-in-time training data for financial models
  • Margin, leverage and cash-conversion time series by company
  • Reconciling vendor fundamentals to the filed source

Methodology

One frames API call per concept and year (CY<year> for duration concepts, CY<year>Q4I for balance-sheet instants); the SEC assigns each filer's fact to the calendar frame closest to its fiscal period, so non-calendar fiscal years appear under the nearest calendar year. Frames the SEC does not publish (e.g. ASC 606 revenue before 2018) are skipped. The frames API carries no fiscal-period, form or filing-date fields, so none are included.

Update Schedule

Static snapshot. Frames change as new filings and restatements arrive; refresh monthly.

Attribution

Source: U.S. Securities and Exchange Commission, XBRL frames API (public domain).

Schema

nametype
cikinteger
entity_namestring
locationstring
conceptstring
unitstring
framestring
calendar_yearinteger
period_typestring
period_startdate
period_enddate
valuenumber
accession_numberstring

Sample Data

cikunitframevalueconceptlocationperiod_endentity_nameperiod_typeperiod_startcalendar_yearaccession_number
0000001750USDCY2010Q4I1557227000AssetsUS-IL2010-11-30AAR CORP.instant20100001104659-10-063683
0000001750USDCY2011Q4I1821612000AssetsUS-IL2011-11-30AAR CORP.instant20110001104659-11-070822
0000001750USDCY2012Q4I2189300000AssetsUS-IL2012-11-30AAR CORP.instant20120001104659-12-085900
0000001750USDCY2013Q4I2155900000AssetsUS-IL2013-11-30AAR CORP.instant20130001104659-13-091455
0000001750USDCY2014Q4I2227700000AssetsUS-IL2014-11-30AAR CORP.instant20140001104659-14-087894

Get this via API

# 1. Add dAgentBase once, in any MCP client. No install, no vendor keys.
#    Claude.ai / Claude Desktop: Settings -> Connectors -> Add custom connector
#    Cursor / Claude Code / others: mcp.json
{
  "mcpServers": {
    "dagentbase": {
      "url": "https://dagentbase.com/api/mcp",
      "headers": { "Authorization": "Bearer dm_live_YOUR_KEY" }
    }
  }
}

# 2. Then ask your agent, in plain language:
#    "Preview 'SEC XBRL Annual Fundamentals — 15 US-GAAP Concepts for Every Filer, Calendar Years 2009–2025' and, if it fits, claim it and download the files."
#    Tools it will use: search_listings -> preview_listing -> purchase_listing -> get_download_urls

# 1. Add dAgentBase once, in any MCP client. No install, no vendor keys.
#    Claude.ai / Claude Desktop: Settings -> Connectors -> Add custom connector
#    Cursor / Claude Code / others: mcp.json
{
  "mcpServers": {
    "dagentbase": {
      "url": "https://dagentbase.com/api/mcp",
      "headers": { "Authorization": "Bearer dm_live_YOUR_KEY" }
    }
  }
}

# 2. Then ask your agent, in plain language:
#    "Preview 'SEC XBRL Annual Fundamentals — 15 US-GAAP Concepts for Every Filer, Calendar Years 2009–2025' and, if it fits, claim it and download the files."
#    Tools it will use: search_listings -> preview_listing -> purchase_listing -> get_download_urls
Free

one time · open license

Details

Date Range2009-06-302026-06-28
Rows1,152,906
Size13 MB
Files1
FormatCSV.GZ

Available formats

CSV.GZ13 MB
Freeopen