SEC Form 4 Insider Trading Scraper — EDGAR to JSON
Pricing
Pay per usage
SEC Form 4 Insider Trading Scraper — EDGAR to JSON
Fetches recent SEC Form 4 insider-trading filings from EDGAR for a list of tickers or CIKs and outputs clean, normalized, machine-verified transaction records (insider buys/sells, role, shares, price, value).
Pricing
Pay per usage
Rating
0.0
(0)
Developer
lilm
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
SEC Form 4 Insider Trading Scraper — EDGAR to clean JSON
Track insider buys and sells straight from SEC EDGAR, as clean JSON or CSV. Give it stock tickers (or CIK numbers); get back a normalized, machine-verified table of every Form 4 insider transaction — who traded, their role, how many shares, at what price, and the computed value.
Corporate insiders — directors, officers, and 10%+ owners — must report every trade in their own company's stock to the SEC on Form 4, usually within two business days. That filing stream is one of the most-watched signals in equity research. But EDGAR publishes it as raw XML scattered across thousands of archive folders, which is painful to parse correctly. This actor turns that firehose into a clean dataset you can actually use.
Why use this SEC Form 4 scraper
- Official, public-domain source. Reads directly from the SEC EDGAR submissions and Archives APIs. The underlying data is U.S. government public domain — no third-party data vendor, no license restrictions, no scraping of a site behind authentication.
- Machine-verified parsing — correctness is the product. Insider-trade data is worthless if the
numbers are wrong. Every release is checked by an independent second parser (a separate code
path) that re-extracts each field from real filings and diffs them field-by-field, plus sanity
assertions: transaction codes are valid SEC codes, dates parse, and
value = shares × price. - Clean, normalized schema. One flat record per transaction — ready for a spreadsheet, a database, or a dashboard with zero post-processing.
- Honest handling of missing data. When a filing omits the price (footnote-only),
price_per_shareisnull— never invented. When the SEC reports an explicit0(common for gifts and certain awards), it is passed through faithfully as filed. - Derivative transactions included. Options, RSUs, and other Table II events come through as
separate records (
record_type: "derivative"), or you can turn them off. - Polite to the SEC. Identifying User-Agent, rate-limited requests, and automatic backoff so runs stay within EDGAR's fair-access guidelines.
Quick start
- Enter one or more tickers (e.g.
AAPL,MSFT,NVDA) — or CIK numbers for companies without a clean ticker match. - Set the lookback window in days (default 14).
- Run it. Results land in the dataset, exportable as JSON, CSV, or Excel, or readable via the Apify API for your own pipeline.
Input
| Field | Meaning |
|---|---|
tickers | Stock tickers to scan (e.g. AAPL). Resolved to CIK via SEC's official company_tickers.json. |
ciks | SEC Central Index Keys to scan directly (for companies without a ticker match). |
days | Lookback window in days (default 14). |
maxFilingsPerCompany | Optional cap on filings per company (newest first). |
includeDerivatives | Include Table II derivative transactions (default true). |
userAgent | Contact string sent to the SEC on every request (SEC requires this). |
Output schema
One record per insider transaction:
| Field | Description |
|---|---|
record_type | non_derivative or derivative |
issuer_name, issuer_ticker, issuer_cik | The company |
owner_name, owner_cik | The insider |
owner_relationship | director / officer (+ title) / 10% owner |
transaction_date, filing_date | When it happened / was filed |
transaction_code | P = open-market buy, S = sale, A = award, G = gift, M = option exercise, F = tax, … |
shares, price_per_share, transaction_value | Size, price (null if not disclosed), shares × price |
acquired_disposed | A (acquired) or D (disposed) |
shares_owned_after | Holdings after the transaction |
ownership, ownership_nature | Direct (D) or indirect (I), plus nature if given |
security_title, accession_number, source_url | Security, SEC accession, link to the filing |
{"record_type": "non_derivative","issuer_name": "NVIDIA CORP","issuer_ticker": "NVDA","owner_name": "Neal Stephen C","owner_relationship": "director","transaction_date": "2026-06-04","transaction_code": "S","shares": 15500,"price_per_share": 215.7331,"acquired_disposed": "D","shares_owned_after": 0,"ownership": "I","transaction_value": 3343863.05,"source_url": "https://www.sec.gov/Archives/edgar/data/1045810/.../form4.xml"}
Use cases
- Insider-trading signals — flag clusters of open-market buys (code
P) by multiple officers, a classic conviction signal, versus routineS/Fsales. - Portfolio monitoring — run it on the tickers you hold and pipe new Form 4s into a Slack/email alert via Apify integrations or webhooks.
- Newsletters & dashboards — power an "insider activity this week" section with structured data instead of hand-copying from EDGAR.
- Quant & academic research — build a reproducible insider-transaction dataset across many tickers and date ranges.
- Compliance & diligence — monitor insider activity at companies you cover.
How it works
The actor resolves each ticker to its SEC CIK, pulls the company's recent submissions, filters to Form 4 (and 4/A is excluded so you only get original filings), fetches each ownership XML document, and parses both non-derivative (Table I) and derivative (Table II) transactions into flat records. Every run is parsed twice by two independent code paths and the outputs are diffed, so a silent parsing regression can't ship.
FAQ
Is this an insider-trading API? It's an actor you run on demand (or on a schedule) that returns the same data an API would. You can call it via the Apify API and read results programmatically, so it works as a free SEC Form 4 / insider-trading API for your app or notebook.
Where does the data come from? Exclusively from SEC EDGAR — the official U.S. government filing system. The data is public domain; this tool just fetches and structures it.
How fresh is it? As fresh as EDGAR. Insiders typically file Form 4 within two business days of a trade; the actor returns filings as soon as they're on EDGAR.
Can I get insider trades for many companies at once? Yes — pass a list of tickers and/or CIKs and a lookback window; results come back combined in one dataset.
Does it cover 13F or 13D/G? Not yet — this actor is focused on Form 4 insider transactions. 13F institutional holdings is a planned companion.
Is the price ever wrong or zero? Prices are taken as filed. Some events (gifts, certain awards)
legitimately have a 0 or no price; those are passed through honestly rather than guessed.
Is this investment advice? No. It reports public filings as filed.
Notes & limitations
- Form 4/A amendments are not merged; records reflect original filings as filed.
- Multiple reporting owners on one filing are combined into a single owner string.
- Very long lookbacks on extremely active filers are bounded by EDGAR's recent-submissions window.
Data source: U.S. Securities and Exchange Commission EDGAR (public domain). Not affiliated with or endorsed by the SEC. Reports filings as filed; not investment advice.