SEC EDGAR Insider Trading Crawler (Form 4) avatar

SEC EDGAR Insider Trading Crawler (Form 4)

Pricing

Pay per event

Go to Apify Store
SEC EDGAR Insider Trading Crawler (Form 4)

SEC EDGAR Insider Trading Crawler (Form 4)

Scrape SEC EDGAR Form 4 insider trading filings. Extract structured transaction data: who bought or sold, how many shares, at what price, and their role. Filter by ticker, date range, and transaction type. 500K+ filings per year.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Scrapes Form 4 filings from SEC EDGAR. Returns one structured transaction record per buy, sell, grant, or disposition — with the insider's name, role, shares traded, price, and company — across 500K+ filings per year.


SEC EDGAR Insider Trading Crawler Features

  • Extracts every transaction in a date range — non-derivative and derivative positions both covered
  • Filters by ticker symbol, transaction code (P/S/A/D/F/M), or both
  • Returns 23 fields per transaction including insider identity, role flags, and SEC accession number
  • Parses SEC XML directly — no browser required, no proxies needed
  • Handles SEC rate limits automatically (10 req/sec cap, politely observed)
  • Configurable max items so you can sample before committing to a full pull

What Can You Do With SEC Form 4 Data?

  • Quantitative researchers — build insider-trading signals for systematic strategies, or at least the dataset that makes building them less miserable
  • Compliance teams — monitor executive transactions at portfolio companies in near-real-time
  • Journalists and analysts — surface large purchases or unusual sales around earnings announcements
  • Financial data vendors — backfill or supplement insider ownership datasets with structured EDGAR records
  • Retail investors — track what officers and directors at specific companies are actually doing with their own shares

How the SEC EDGAR Insider Trading Crawler Works

  1. Queries the EDGAR Full-Text Search API for Form 4 filings in your specified date range, paginating through results in batches of 100
  2. For each filing, fetches the raw XML document directly from the SEC Archives
  3. Parses each XML with full transaction detail — issuer info, reporting owner identity, transaction codes, share counts, prices, and footnotes
  4. Applies any ticker or transaction code filters you configured, then saves matching records

Input

{
"startDate": "2025-01-01",
"endDate": "2025-01-07",
"tickers": ["AAPL", "MSFT"],
"transactionCodes": ["P", "S"],
"maxItems": 100
}
FieldTypeDefaultDescription
startDatestring30 days agoStart of the filing date range (YYYY-MM-DD)
endDatestringtodayEnd of the filing date range (YYYY-MM-DD)
tickersarray[]Filter by stock ticker symbols. Empty = all tickers
transactionCodesarray[]Filter by SEC code. P=Purchase, S=Sale, A=Award, D=Disposition, F=Tax withholding, M=Option exercise. Empty = all codes
maxItemsinteger15Maximum transaction records to return

Pull everything for a week:

{
"startDate": "2025-03-10",
"endDate": "2025-03-14",
"maxItems": 10000
}

Just purchases at one company:

{
"startDate": "2025-01-01",
"endDate": "2025-12-31",
"tickers": ["TSLA"],
"transactionCodes": ["P"],
"maxItems": 500
}

SEC EDGAR Insider Trading Crawler Output Fields

{
"accession_number": "0000320193-25-000035",
"filing_date": "2025-02-27",
"period_of_report": "2025-02-25",
"reporting_owner_name": "SUGAR RONALD D",
"reporting_owner_cik": "0001216519",
"reporting_owner_is_director": true,
"reporting_owner_is_officer": false,
"reporting_owner_officer_title": "",
"reporting_owner_is_ten_percent_owner": false,
"issuer_name": "Apple Inc.",
"issuer_cik": "0000320193",
"issuer_ticker": "AAPL",
"transaction_type": "non-derivative",
"security_title": "Common Stock",
"transaction_date": "2025-02-25",
"transaction_code": "A",
"acquired_or_disposed": "A",
"shares_traded": 2416,
"price_per_share": 0,
"total_value": 0,
"shares_owned_after": 37481,
"ownership_nature": "D",
"footnotes": "",
"filing_url": "https://www.sec.gov/Archives/edgar/data/320193/000032019325000035/wk-form4_1740699290.xml"
}
FieldTypeDescription
accession_numberstringSEC EDGAR accession number (unique filing identifier)
filing_datestringDate the Form 4 was filed with the SEC (YYYY-MM-DD)
period_of_reportstringDate of the reported transaction (YYYY-MM-DD)
reporting_owner_namestringFull name of the insider/reporting owner
reporting_owner_cikstringSEC CIK number of the reporting owner
reporting_owner_is_directorbooleanTrue if the insider is a board director
reporting_owner_is_officerbooleanTrue if the insider is a company officer
reporting_owner_officer_titlestringOfficer title (e.g. Chief Executive Officer) if applicable
reporting_owner_is_ten_percent_ownerbooleanTrue if the insider owns 10% or more of the issuer
issuer_namestringName of the company (issuer)
issuer_cikstringSEC CIK number of the issuer company
issuer_tickerstringStock ticker symbol of the issuer
transaction_typestringType of security: non-derivative or derivative
security_titlestringName/title of the security (e.g. Common Stock, Stock Option)
transaction_datestringDate the transaction occurred (YYYY-MM-DD)
transaction_codestringSEC code: P=Purchase, S=Sale, A=Award, D=Disposition, F=Tax-withholding, M=Option-exercise
acquired_or_disposedstringA if shares were acquired, D if disposed
shares_tradednumberNumber of shares bought, sold, or transferred
price_per_sharenumberPrice per share (0 for awards, withholding, and other non-cash events)
total_valuenumberComputed total value: shares_traded x price_per_share
shares_owned_afternumberTotal shares owned by the insider after the transaction
ownership_naturestringD for direct ownership, I for indirect (e.g. held by a family trust)
footnotesstringFootnotes from the filing, concatenated with pipe separator
filing_urlstringURL to the Form 4 XML document on SEC EDGAR

🔍 FAQ

How do I scrape SEC Form 4 insider trading data?

SEC EDGAR Insider Trading Crawler queries the EDGAR full-text search API for Form 4 filings in your date range, fetches each XML document, and parses every transaction. Set startDate, endDate, and maxItems — that's the minimum. Ticker and transaction code filters are optional.

How much does the SEC EDGAR Insider Trading Crawler cost to run?

The actor charges $0.10 per run plus $0.001 per transaction record. A week of Form 4 data covering all companies typically runs a few hundred to a few thousand records depending on your filters.

Does the crawler need proxies?

No. SEC EDGAR is a government data service designed for public access. The crawler identifies itself via the required User-Agent header and respects the 10 req/sec rate limit.

Can I filter by specific companies?

Yes. Pass one or more tickers in the tickers field — e.g. ["AAPL", "MSFT", "NVDA"]. The filter is applied after parsing, so the crawler fetches all filings in the date range and returns only matching records. Narrow your date range for faster results when filtering by ticker.

What's the difference between transaction codes?

P = open-market purchase. S = open-market sale. A = award or grant (note price_per_share will be 0 — these are non-cash events). D = disposition other than sale. F = shares withheld for tax at vesting. M = option exercise. Most insider-trading signals focus on P and S.

How far back does the data go?

EDGAR Full-Text Search covers filings back to the late 1990s. The pagination limit is 10,000 results per query, so for high-volume date ranges split your pull into narrower windows.


Need More Features?

Need custom fields, additional filing types, or a bulk historical pull? File an issue or get in touch.

Why Use SEC EDGAR Insider Trading Crawler?

  • Structured output, not raw XML — returns clean JSON records with typed fields, not the raw SEC filing format you'd otherwise have to parse yourself
  • No auth, no proxies, no maintenance — SEC EDGAR is a stable government API. The crawler runs the same today as it did last quarter.
  • Granular transaction-level records — one Form 4 can contain multiple transactions across different securities. The crawler expands all of them.