edgartools
by Dwight Gunning · Library · also known as EdgarTools
MIT-licensed Python library for SEC EDGAR: company and filing objects, XBRL financial statements, Form 3/4/5, 13F and proxy parsing into pandas, with the SEC identity requirement built in
Overview
edgartools is a Python library by Dwight Gunning for retrieving and parsing SEC EDGAR filings, released under the MIT license and installed with pip. It wraps the data.sec.gov submissions and XBRL APIs and the filing archives into Company and Filing objects: a Company resolves from a ticker or CIK and exposes filing history, shares outstanding and public float; get_financials() returns XBRL-based income statements, balance sheets and cash-flow statements as DataFrames; Forms 3, 4 and 5 become structured insider-transaction tables; 13F-HR holdings, DEF 14A compensation and 8-K items are parsed; and any filing can be rendered to clean text or Markdown for NLP, with ranking search over filing text described for AI use cases. Filings back to the mid-1990s are reachable.
Because the SEC requires automated clients to identify themselves, edgartools makes set_identity() with a name and e-mail a first step and handles throttling to stay within the fair-access limits. The library is actively released (version 5.62.1 on PyPI at the time of writing) and requires Python 3.10 or later. It depends on the SEC's own data quality and rate policy, parsing heuristics can fail on unusual filings, and large-scale collection still benefits from the SEC's bulk ZIP archives rather than per-filing requests.
Capabilities
- Company and Filing objects over data.sec.gov APIs
- XBRL financial statements as pandas DataFrames
- Insider Forms 3, 4 and 5 parsed to tables
- 13F holdings and proxy (DEF 14A) parsing
- Filing text and Markdown extraction for NLP
- Built-in SEC identity and rate handling
Typical workflows
- Pulling standardized statements for a sample of firms
- Extracting insider transactions for an event study
- Converting 10-K text to Markdown for an LLM pipeline
Strengths
- MIT licence and active maintenance
- Handles SEC access rules automatically
- Rich filing-type coverage
Limitations
- Bound by SEC rate limits
- Parsing can fail on atypical filings
- Python 3.10+ required
Prerequisites
- Python 3.10+
- Identity string for SEC requests
Who it is for
- Finance and accounting researchers
- Developers building filing-analysis tools
Alternatives & comparison
SEC EDGAR is the underlying free data source; WRDS provides commercially structured versions of the same filings. edgartools is the open-source parsing layer between them.
- pandas
The standard Python DataFrame library for labeled tabular data, time series and I/O to CSV, Excel, SQL, Parquet and more
Open sourceOpen source - SEC EDGAR
The SEC's free public filing system: company and full-text search, bulk index and feed archives, and data.sec.gov JSON APIs for submissions and XBRL financial facts, subject to a fair-access rate policy
ProprietaryFree - Wharton Research Data Services (WRDS)
Institution-subscribed research data platform from Wharton hosting CRSP, Compustat, TAQ, OptionMetrics and dozens of other vendors' databases with web queries, SQL, SAS, Python and R access
ProprietaryEnterprise
Sources & verification
Primary sources consulted for this record. Claims are tied to the fields each source supports; the automated link checker re-verifies every URL on a schedule.
- Licenseedgartools LICENSE.txtchecked Nov 1, 2026
https://github.com/dgunning/edgartools/blob/main/LICENSE.txt
Supports: license_spdx, source_model, vendor
- Official documentationEdgarTools: The Python Library for SEC EDGAR Datachecked Nov 1, 2026
https://edgartools.readthedocs.io/en/latest
Supports: capabilities, description, prerequisites
- Official sitechecked Nov 1, 2026
- Package registrychecked Nov 1, 2026
- Confidence
- High
- Reviewed
- Nov 1, 2026
- Links
- Verified · Nov 2, 2026