How to export SEC financials to Excel or CSV (free)

Four ways to pull a public company's numbers out of SEC EDGAR and into a spreadsheet — from the fully manual route to a one-click browser tool. All free.

The SEC's EDGAR system holds every public company's financial filings, and all of it is free. The catch is that EDGAR is built for reading filings, not for getting clean numbers into a spreadsheet. If you've ever tried to copy a revenue figure out of a 10-K and watched the formatting fall apart in Excel, you know the problem.

Here are the four practical ways to do it, in order from most manual to easiest.

1. Download the Financial Report from the filing

Every 10-K (annual) and 10-Q (quarterly) filing on EDGAR includes a machine-readable financial statements workbook. To get it:

  1. Find the company on EDGAR full-text search.
  2. Open the 10-K or 10-Q filing you want.
  3. Look for the "Financial_Report.xlsx" link (sometimes under "View Excel Document").
  4. Download and open it in Excel.

It works and it's free, but the workbook mirrors the raw filing — many tabs, footnotes, and inconsistent labels across companies. It's a starting point, not clean data, and you repeat the whole process for every company and every year.

2. Use the SEC's free data API with Excel Power Query

The SEC publishes a free, no-key data API at data.sec.gov that returns every tagged financial fact as JSON. You can pull it into Excel without code:

  1. Find the company's CIK (Central Index Key) number on EDGAR.
  2. Build the API URL: https://data.sec.gov/api/xbrl/companyfacts/CIK<10-digit-cik>.json
  3. In Excel: Data → Get Data → From Web, paste the URL, and load it through Power Query.

This gives you structured data, but the JSON is dense, every metric is tagged with technical XBRL names, and you'll spend time reshaping it. Note: the SEC asks API users to send an identifying User-Agent header with a contact email, or requests may be blocked.

3. Use Python (for developers)

If you're comfortable with code, libraries like sec-edgar-financials or a few lines of requests + pandas against the same data.sec.gov API let you automate multi-company pulls and export straight to CSV or Excel. Powerful and repeatable — but it's a project to set up and maintain, and overkill if you just need a few companies' numbers.

4. Use FilingSheet — one click, no code (recommended)

FilingSheet is a free Chrome extension that does this for you, right on the EDGAR page. Search any US public company, see its key financials (Revenue, Net Income, EPS, Total Assets), and export to CSV in one click — no API URLs, no Power Query, no Python, no account. It pulls straight from the SEC's public API and runs entirely in your browser, so nothing leaves your machine.

Get FilingSheet free →

Which method should you use?

MethodEffortBest for
Filing's Financial_Report.xlsxMedium, manual per filingOne company, one filing, occasionally
data.sec.gov + Power QueryHigh setup, no codeSpreadsheet users who want raw tagged data
PythonHigh setup, repeatableDevelopers automating many companies
FilingSheetOne clickAnyone who wants clean numbers fast

Frequently asked questions

Is SEC EDGAR data really free?

Yes. EDGAR and the data.sec.gov API are public and free, with no API key required. FilingSheet is free too, and uses that same public data.

Can I get SEC financials into Excel without paying for a data subscription?

Absolutely — every method above is free. Paid providers mainly sell convenience and pre-cleaned data; for most people the free routes (especially a one-click tool) are enough.

Does this work for any US public company?

Yes, for companies that file standard XBRL financial statements (most domestic filers). Some funds, foreign filers, or very recent registrants have limited tagged data.

Is my data private?

With FilingSheet, yes — requests go directly from your browser to the SEC, and nothing is sent to any server of ours. See our privacy policy.

Try FilingSheet — free on the Chrome Web Store →