SEC XBRL Company Financials Extractor avatar

SEC XBRL Company Financials Extractor

Pricing

from $5.00 / 1,000 financial facts

Go to Apify Store
SEC XBRL Company Financials Extractor

SEC XBRL Company Financials Extractor

Extract company financials (revenue, net income, EPS, assets, cash flow) from SEC XBRL company facts by ticker or CIK. Official SEC data, values never invented.

Pricing

from $5.00 / 1,000 financial facts

Rating

0.0

(0)

Developer

Inn Corp

Inn Corp

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Pull real financial figures (revenue, net income, EPS, assets, cash flow) straight from the SEC's XBRL company facts API, by ticker or CIK. One clean row per reported fact, with the period, unit, filing form, and accession number attached. Built for analysts, spreadsheets, and AI agents that need actual reported numbers instead of guesses.

What it does

  • Give it tickers (AAPL, MSFT) or CIK numbers (0000320193), mixed freely.
  • Ask for US-GAAP concepts by exact tag (NetIncomeLoss, Assets, EarningsPerShareDiluted), or leave the list empty for a default set of ten common income-statement, balance-sheet, and cash-flow concepts.
  • The special alias revenue handles the fact that companies tag revenue under different concepts: it tries RevenueFromContractWithCustomerExcludingAssessedTax, then Revenues, then SalesRevenueNet, uses the first tag that has any facts, and reports which one matched in the matchedTag field of every row. No silent merging.
  • Filter to annual facts, quarterly facts, or both, and to a fiscal-year range.
  • Restatement handling: the same period is re-reported in later filings as a comparative. By default the Actor keeps only the most recently filed value per concept, unit, and period (dedupe: true); turn it off to see every reported instance.

What it deliberately does not do

  • No invented numbers. Every value comes from the SEC's XBRL payload. Missing data is null, never estimated or filled in by a model.
  • No derived ratios. You get the reported facts; margins, growth rates, and multiples are your job (or your model's), with the inputs cited.
  • No IFRS foreign filers in v1. The Actor reads the us-gaap taxonomy. Companies that file only under IFRS are skipped with a clear warning.

Data source and compliance

All data comes from the U.S. Securities and Exchange Commission's official XBRL company facts endpoint, which is public domain. The SEC permits scripted access with a declared User-Agent and a rate under 10 requests/second; this Actor declares its User-Agent (with the contact email you provide) and stays well under that limit with built-in throttling and retries. The dataset contains company-level financials only; no personal data.

Output example

Real output row (Apple's fiscal 2024 revenue, as reported in the FY2025 10-K):

{
"ticker": "AAPL",
"cik": "0000320193",
"entityName": "Apple Inc.",
"concept": "revenue",
"matchedTag": "RevenueFromContractWithCustomerExcludingAssessedTax",
"label": "Revenue from Contract with Customer, Excluding Assessed Tax",
"unit": "USD",
"value": 391035000000,
"periodStart": "2023-10-01",
"periodEnd": "2024-09-28",
"fy": 2025,
"fp": "FY",
"form": "10-K",
"filed": "2025-10-31",
"accession": "0000320193-25-000079",
"frame": "CY2024"
}

Note the fy/fp fields describe the filing that reported the fact, exactly as the SEC tags them: the fiscal-2024 period above was most recently reported in the fiscal-2025 10-K, so fy is 2025. Because fy is the filing's year, fromYear: 2020 can still return periods before 2020; filter on periodEnd if you need the period's own year. The period itself is always periodStart/periodEnd (instantaneous facts like Assets have a null periodStart). Per-share concepts come back in USD/shares, share counts in shares.

Typical uses

  • Feed an AI agent (via MCP or the API) real reported financials so its analysis cites periods, forms, and accession numbers.
  • Pull ten years of annual fundamentals for a watchlist into a spreadsheet.
  • Track quarterly net income across companies without touching a filing PDF.
  • Build datasets of as-reported (or latest-restated) figures for research.

Input

FieldMeaning
companiesTickers or CIKs, mixed. Required.
conceptsUS-GAAP tags, plus the revenue alias. Empty = default set of ten.
periodTypeannual (fiscal-year facts only), quarterly (Q1-Q4 facts), or both.
fromYear / toYearFiscal-year window, applied to the SEC's fy field.
dedupeKeep only the latest-filed value per concept, unit, and period. Default on.
maxRowsPerCompanyNewest period first, default 500. When the cap bites, it is shared across the requested concepts (round-robin, remainder to the concepts listed first), so a low cap trims every concept evenly instead of silently dropping the ones listed last. Trims are logged per concept.
contactEmailUsed only inside the SEC User-Agent header and sent only to sec.gov. Never written to the output dataset or the logs. (Like any Actor input, the Apify platform keeps it in your run's input record.)

Annual note: older filings tag quarterly comparative facts fp: "FY" inside 10-Ks, so annual mode additionally requires duration facts to span at least 340 days (a full 52- or 53-week fiscal year). Instantaneous facts like Assets are point-in-time and are kept by the FY/10-K rule alone.

Quarterly note: the SEC tags year-to-date durations with the same fp as the quarter they end in, and fourth quarters usually appear only inside the annual (FY) facts. Both behaviors are the SEC's own tagging, passed through honestly; use periodStart/periodEnd to tell a three-month fact from a year-to-date one.

Fair pricing

Pay per financial fact returned once pay-per-event pricing is enabled, plus a small per-company charge for each company processed. No subscription.