SEC Company Financials: Clean Fundamentals from EDGAR
Pricing
from $5.00 / 1,000 company financials
SEC Company Financials: Clean Fundamentals from EDGAR
Clean annual and quarterly financials from official SEC EDGAR filings: revenue, net income, EPS, cash flow, assets, liabilities, cash, margins, YoY growth and TTM, plus company info and latest filings. Tickers, CIKs or names. No API key. $0.005/company, $0.0005/run.
Pricing
from $5.00 / 1,000 company financials
Rating
0.0
(0)
Developer
Plainfold
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a few seconds ago
Last modified
Categories
Share
At a glance (for AI agents)
- What it does: For each ticker, CIK or company name you give it, returns clean key financials from the company's official SEC filings (EDGAR XBRL data): revenue, gross profit, operating income, net income, basic and diluted EPS, operating cash flow, capex, free cash flow, total assets, total liabilities, equity, cash, current assets/liabilities, long-term debt and shares, for the latest fiscal years and quarters, with YoY and QoQ growth, margins and trailing twelve months (TTM). It also returns company info (CIK, tickers, exchange, industry SIC, state of incorporation, fiscal year end, business address) and the latest filings with links (10-K, 10-Q, 8-K, 20-F, 6-K...).
- When to use it: answering "how is company X doing?", comparing companies, checking growth and profitability before a sales call, investment research, enriching a list of public companies, or getting citable numbers (every period links to its source filing).
- When not to use it: stock prices or market data, private companies that don't file with the SEC, analyst estimates, or full line-by-line statements (this returns the key items, not every XBRL tag). No person data: insider (Form 3/4/5) and ownership filings are hidden by default, and individual filers are refused.
- Cost: pay-per-event: $0.005 per company returned with financial data, plus $0.0005 per run (Actor start, at the default 512 MB memory). Not-found companies, companies with no financial data on EDGAR and errors are free. 100 companies in one run cost at most about $0.50. Apify platform usage is included.
- Speed: about 0.5 to 2 seconds per company (two SEC API calls each; the Actor respects SEC's 10 requests/second limit).
- Auth: none. Uses SEC's official free APIs (data.sec.gov). AI agents can run it through the Apify API or Apify's MCP server.
- Input: just
companies: tickers (AAPL), CIKs (320193) or names (Figma). Everything else is optional.
Example input:
{"companies": ["AAPL", "Figma", "ASML"],"annualPeriods": 3,"quarterlyPeriods": 4}
Example output (shortened, real data from a test run):
{"input": "Figma","found": true,"status": "ok","matchedBy": "name","cik": 1579878,"name": "Figma, Inc.","tickers": ["FIG"],"exchanges": ["NYSE"],"sicDescription": "Services-Prepackaged Software","fiscalYearEnd": "12-31","stateOfIncorporation": "DE","accountingStandard": "US GAAP","currency": "USD","latestAnnual": {"fiscalYear": 2025, "fiscalPeriod": "FY", "periodStart": "2025-01-01", "periodEnd": "2025-12-31","revenue": 1055788000, "grossProfit": 870261000, "operatingIncome": -1290457000, "netIncome": -1250463000,"epsDiluted": -3.71, "operatingCashFlow": 250681000, "freeCashFlow": 246237000,"totalAssets": 2348207000, "totalLiabilities": 837566000, "cashAndEquivalents": 403469000,"grossMarginPct": 82.4, "netMarginPct": -118.4, "revenueGrowthYoYPct": 41,"form": "10-K", "filed": "2026-02-18","filingUrl": "https://www.sec.gov/Archives/edgar/data/1579878/000162828026009228/0001628280-26-009228-index.htm"},"latestQuarter": { "fiscalYear": 2026, "fiscalPeriod": "Q2", "periodEnd": "2026-06-30", "revenue": 370083000, "revenueGrowthYoYPct": 48.2, "revenueGrowthQoQPct": 11 },"ttm": { "periodEnd": "2026-06-30", "revenue": 1281471000, "netIncome": -1578125000, "freeCashFlow": 232314000 },"annual": ["... one object per fiscal year, newest first ..."],"quarterly": ["... one object per quarter, newest first ..."],"filings": [{ "form": "10-Q", "filingDate": "2026-08-05", "reportDate": "2026-06-30", "documentUrl": "https://www.sec.gov/Archives/edgar/data/1579878/...", "indexUrl": "..." }],"summary": "Figma, Inc. (FIG): FY2025 revenue $1.06B (+41% YoY), net income $-1.25B; latest quarter Q2 FY2026 (to 2026-06-30) revenue $370.1M (+48.2% YoY)."}
What you get per period
Every object in annual and quarterly (and latestAnnual / latestQuarter) has:
| Field | Meaning |
|---|---|
fiscalYear, fiscalPeriod, periodStart, periodEnd | The company's own fiscal labels (Apple's FY2025 ends 2025-09-27) |
revenue, grossProfit, operatingIncome, netIncome | Income statement (net income attributable to the company) |
epsBasic, epsDiluted, dilutedSharesWeighted | Per share |
operatingCashFlow, capitalExpenditures, freeCashFlow | Cash flow (FCF = operating cash flow - capex) |
totalAssets, totalLiabilities, stockholdersEquity, cashAndEquivalents, currentAssets, currentLiabilities, longTermDebt, sharesOutstanding | Balance sheet at period end |
grossMarginPct, operatingMarginPct, netMarginPct | Margins, in percent |
revenueGrowthYoYPct, netIncomeGrowthYoYPct, epsDilutedGrowthYoYPct (+ operatingIncomeGrowthYoYPct annual, revenueGrowthQoQPct quarterly) | Growth in percent vs the same period a year earlier (or the previous quarter). Losses use the absolute prior value, so a loss shrinking from -100 to -50 is +50% |
form, filed, accessionNumber, filingUrl | The filing that first reported the period |
derived | Fields computed rather than read directly (see below) |
xbrlTags | The XBRL tag used for each field, for auditing |
Amounts are in full currency units (not thousands) in the company's reporting currency (currency: USD, EUR, TWD...). Missing items are null; the Actor never guesses.
How the numbers are built
- Source: SEC's XBRL "company facts" API, the structured data companies file with every 10-K, 10-Q, 20-F and 40-F.
- Tag mapping: each line item has a list of equivalent tags (for example revenue:
Revenues,RevenueFromContractWithCustomerExcludingAssessedTax,SalesRevenueNet...; IFRS:Revenue). The tag that covers the most recent period wins, and older periods are filled from the others, because companies switch tags over the years. - Restatements: if a later filing restates a period, the latest figure is used.
- Derived values: companies often don't report Q4 separately (only the full year), and 10-Qs report cash flow year-to-date. The Actor derives those quarters by subtraction (Q4 = full year - nine months) and lists them in
derived. EPS is never derived. IftotalLiabilitiesisn't tagged, it's computed as total liabilities and equity minus equity. - TTM: sum of the 4 latest consecutive quarters.
- Foreign filers (20-F/40-F, e.g. ASML, TSMC, Klarna): annual data in their reporting currency, under US GAAP or IFRS. Their interim 6-K reports carry no XBRL data, so
quarterlyis usually empty. - Recent IPOs: quarterly data appears after the first 10-Q; annual data after the first 10-K.
notesexplains gaps.
Status values
| status | meaning | charged |
|---|---|---|
ok | Company found and financial data returned | yes |
no_financial_data | Company found (info and filings returned) but no XBRL financials on EDGAR (funds, shells, brand-new registrants) | no |
not_found | No SEC registrant matches; check alternatives | no |
not_a_company | The CIK belongs to an individual filer | no |
error | SEC unreachable; try again | no |
Input reference
| Field | Type | Default | Description |
|---|---|---|---|
companies | array of strings | (required) | Tickers, CIKs or names. name:Ford / ticker:FORD force one reading |
annualPeriods | integer | 5 | Fiscal years to return (0-20) |
quarterlyPeriods | integer | 8 | Quarters to return (0-40) |
includeFilings | boolean | true | Add the latest filings list |
maxFilings | integer | 15 | Filings per company (0-100) |
filingForms | array | (all but insider/ownership and 424B2/424B3/424B7/FWP) | Only these forms, e.g. ["10-K", "10-Q", "8-K"] |
Matching companies
Tickers and CIKs are exact. Names are matched against SEC's list of companies with tickers: exact name first (ignoring Inc./Corp./punctuation), then names starting with your text, then names containing all your words; other candidates are returned in alternatives. Companies without a ticker (private companies with SEC filings) need their CIK, which you can find on EDGAR company search.
Pricing
Pay-per-event:
- $0.005 per company returned with financial data (
status: "ok") - $0.0005 per run (Actor start, at the default 512 MB memory; one start event per GB of memory)
- No charge for
not_found,no_financial_data,not_a_companyorerrorresults
Set a maximum cost per run and the Actor stops cleanly when the budget is reached.
Use from code or an AI agent
Apify API, JavaScript/Python clients, or Apify's MCP server (https://mcp.apify.com/?actors=plainfold/sec-company-financials). Synchronous call:
POST https://api.apify.com/v2/acts/plainfold~sec-company-financials/run-sync-get-dataset-items with body {"companies": ["MSFT"], "quarterlyPeriods": 4}.
FAQ
Is this a scraper? No. It calls SEC's official public APIs (data.sec.gov), which are free and need no key, with a declared User-Agent and under SEC's rate limit.
How fresh is the data? SEC updates the APIs within minutes of a filing being accepted. A company's numbers change when it files its next 10-Q/10-K.
Why does a number differ from the press release? Press releases often show adjusted (non-GAAP) figures; this Actor returns the GAAP/IFRS figures from the filing itself.
Why is a field null? The company didn't tag that item (for example, banks don't report gross profit, and many companies don't tag total liabilities). See xbrlTags for what was used.
Support
Spotted a wrong mapping for a company? Open an issue on the Actor's Issues tab with the ticker.
More data tools from Plainfold, all usable by AI agents over MCP: plainfold.github.io/tools.