Financial Statements Scraper avatar

Financial Statements Scraper

Pricing

Pay per event

Go to Apify Store
Financial Statements Scraper

Financial Statements Scraper

Extract clean financial data from SEC EDGAR XBRL API. Enter stock tickers, get structured income statements, balance sheets, and cash flow data. Supports annual and quarterly periods with automatic concept fallback resolution.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Extract structured financial statements from SEC EDGAR XBRL data for any U.S. public company. A free alternative to Bloomberg Terminal and S&P Capital IQ.

📊 What does Financial Statements Scraper do?

Financial Statements Scraper extracts clean, structured financial data from SEC EDGAR's XBRL API for any U.S. public company. Enter stock tickers and get ready-to-use financial statements:

🔹 Key Metrics — Revenue, Net Income, EPS, Assets, Equity in one view 🔹 Income Statement — Revenue through Net Income with all line items 🔹 Balance Sheet — Assets, Liabilities, and Stockholders' Equity 🔹 Cash Flow Statement — Operating, Investing, and Financing activities 🔹 All Statements — Complete financial data in one run

❓ Why use Financial Statements Scraper?

🔹 Free data source — SEC EDGAR XBRL API is free and public. No API key needed 🔹 Bloomberg alternative — Get the same financial data that costs $24,000/year on Bloomberg 🔹 Ticker resolution — Just enter stock tickers (AAPL, MSFT, TSLA) — CIK numbers resolved automatically 🔹 Clean output — Data is normalized and deduplicated. No XBRL complexity to deal with 🔹 Concept fallbacks — Handles different XBRL tags used by different companies (e.g., Apple's revenue tag) 🔹 Annual and quarterly — Supports both 10-K and 10-Q data

💡 Use cases

🔹 Financial analysis — Build DCF models, compare companies, track growth trends 🔹 Investment research — Screen stocks by financial metrics across thousands of companies 🔹 Fintech data pipelines — Feed structured financials into trading algorithms or dashboards 🔹 Academic research — Study corporate finance, profitability trends, and market dynamics 🔹 Competitive intelligence — Compare revenue, margins, and R&D spend across competitors 🔹 Journalism — Fact-check corporate claims with actual SEC filings

📊 Sample output

Apple Inc. (AAPL) — Key Metrics

Fiscal YearRevenueNet IncomeEPSAssetsEquity
FY2025$416.2B$112.0B$7.46$359B$88B
FY2024$391.0B$93.7B$6.08$365B$57B
FY2023$383.3B$97.0B$6.13$353B$62B

💰 Pricing

Financial Statements Scraper uses pay-per-event pricing:

EventPrice
Start (per run)$0.005
Statement period scraped$0.002

Free plan estimate: ~50 statement periods per month on the Apify Free plan ($5/month platform credit). That's 10 companies x 5 years of annual data.

🔢 How to get financial statements

  1. Go to the Financial Statements Scraper page on Apify
  2. Select the statement type (key metrics, income statement, balance sheet, cash flow, or all)
  3. Enter stock tickers (e.g., AAPL, MSFT, TSLA)
  4. Choose annual or quarterly data and how many years of history
  5. Click "Start" and wait for results
  6. Download data as JSON, CSV, Excel, or connect via API

📥 Input parameters

ParameterTypeDescription
modestringStatement type: key-metrics, income-statement, balance-sheet, cash-flow, or all
tickersstring[]Stock ticker symbols (e.g., AAPL, MSFT, TSLA)
ciksstring[]SEC CIK numbers (alternative to tickers)
periodstringannual (10-K) or quarterly (10-Q)
maxYearsnumberYears of historical data (default: 5, max: 30)

📤 Output fields

Key Metrics

Revenues, NetIncomeLoss, EarningsPerShareDiluted, Assets, Liabilities, StockholdersEquity, CashAndCashEquivalentsAtCarryingValue, LongTermDebt, OperatingIncomeLoss, GrossProfit, CommonStockSharesOutstanding, NetCashProvidedByUsedInOperatingActivities

Income Statement

Revenues, CostOfRevenue, GrossProfit, ResearchAndDevelopmentExpense, SellingGeneralAndAdministrativeExpense, OperatingExpenses, OperatingIncomeLoss, InterestExpense, IncomeTaxExpenseBenefit, NetIncomeLoss, EarningsPerShareBasic, EarningsPerShareDiluted

Balance Sheet

CashAndCashEquivalentsAtCarryingValue, AccountsReceivableNetCurrent, InventoryNet, AssetsCurrent, PropertyPlantAndEquipmentNet, Goodwill, Assets, LiabilitiesCurrent, LongTermDebt, Liabilities, StockholdersEquity

Cash Flow

NetCashProvidedByUsedInOperatingActivities, DepreciationDepletionAndAmortization, PaymentsToAcquirePropertyPlantAndEquipment, NetCashProvidedByUsedInInvestingActivities, NetCashProvidedByUsedInFinancingActivities, PaymentsOfDividends, PaymentsForRepurchaseOfCommonStock

💡 Tips

🔹 XBRL concept names — Output field names use standard XBRL US-GAAP taxonomy names. These are consistent across all companies and are the same as used in SEC filings. 🔹 Null values — Some fields may be null if the company doesn't report that line item or uses a non-standard XBRL tag. Key concepts have automatic fallback resolution. 🔹 Foreign companies — Works with foreign companies that file with the SEC (20-F filers like BABA, TSM). 🔹 Up to 30 years — SEC EDGAR has XBRL data going back to 2009 for most companies. Set maxYears=30 for full history.

🔗 Integrations

Export financial data to Google Sheets, Excel, Slack, Zapier, Make, or any webhook. Connect via the Apify API to build automated financial analysis pipelines.

💻 API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('automation-lab/financial-statements-scraper').call({
mode: 'income-statement',
tickers: ['AAPL', 'MSFT', 'GOOGL'],
period: 'annual',
maxYears: 5,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('automation-lab/financial-statements-scraper').call(run_input={
'mode': 'key-metrics',
'tickers': ['TSLA', 'RIVN', 'LCID'],
'period': 'quarterly',
'maxYears': 3,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

cURL

curl "https://api.apify.com/v2/acts/automation-lab~financial-statements-scraper/runs" \
-X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{"mode": "all", "tickers": ["AAPL"], "period": "annual", "maxYears": 10}'

⚖️ Legality

Financial Statements Scraper only accesses publicly available data through the official SEC EDGAR XBRL API. SEC filings are public records under U.S. law. The SEC explicitly provides these APIs for programmatic access.

❓ FAQ

Q: What companies are covered? A: All U.S. public companies that file with the SEC — over 8,000 companies including all S&P 500, NASDAQ, and NYSE listed companies.

Q: How current is the data? A: Data is updated as companies file their 10-K and 10-Q reports with the SEC. Annual reports are typically filed within 60-90 days of fiscal year end.

Q: Can I get quarterly data? A: Yes. Set period to "quarterly" to get 10-Q data. Note that quarterly data may have more null fields as companies report less detail in 10-Q filings.

Q: What about non-GAAP metrics? A: This scraper extracts GAAP (Generally Accepted Accounting Principles) data from XBRL filings. Non-GAAP metrics like adjusted EBITDA are not standardized in XBRL and require parsing 10-K text.

Q: Why are some fields null? A: Companies use different XBRL tags for the same concept. The scraper has fallback resolution for common variations (e.g., Apple's revenue tag), but some companies may use tags not yet mapped.

🔹 Company Funding Tracker — Track startup funding rounds from SEC Form D filings 🔹 SEC EDGAR Scraper — Search all SEC filing types (10-K, 10-Q, 8-K) 🔹 Yahoo Finance Scraper — Stock quotes, market data, and financial news