SEC Form 4 Insider Trading Scraper: Insider Buys & Sells Alerts avatar

SEC Form 4 Insider Trading Scraper: Insider Buys & Sells Alerts

Pricing

$3.00 / 1,000 results

Go to Apify Store
SEC Form 4 Insider Trading Scraper: Insider Buys & Sells Alerts

SEC Form 4 Insider Trading Scraper: Insider Buys & Sells Alerts

Daily feed of SEC Form 4 insider transactions from official EDGAR data: who bought or sold, ticker, shares, price, total value, role (CEO, CFO, director, 10% owner), 10b5-1 flag. Filter by ticker, buys/sells, minimum value and role. 'Only new' mode for insider-trading alerts.

Pricing

$3.00 / 1,000 results

Rating

0.0

(0)

Developer

GovData Feeds

GovData Feeds

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Scrape SEC Form 4 insider trading filings into one clean row per transaction: who bought or sold, how many shares, at what price, and whether it was a pre-planned 10b5-1 trade.

Rate your experience: if you have used this Actor, you can tell us how it went on the reviews page. Honest feedback of any kind helps us improve it.

What it does and who it is for

This Actor reads SEC Form 4 filings from EDGAR (full-text search plus the filing XML itself) and returns one record per transaction: insider name and role, company and ticker, transaction date and code, shares, price per share, total dollar value, shares owned afterwards, ownership type and the 10b5-1 plan flag. Values come from the filed document.

Filter by look-back days or exact dates, tickers, transaction codes (P purchase, S sale, A grant, M option exercise, F tax withholding, G gift and more), insider role, minimum transaction value, derivative transactions, 10b5-1 plan trades and amended filings. Turn on Only new for daily insider-buying alerts.

Use cases

  • Investors and traders: spot open-market insider purchases (code P) shortly after filing.
  • Quant and research teams: build datasets of insider buys and sells by ticker, role or size.
  • Newsletters and finance writers: a daily "largest insider buys" feed.
  • Fintech and alerting apps: add structured insider data to your product.
  • AI agents: answer "which officers bought more than $250k of their own stock this week?".

Why use this instead of the free official site or API

The underlying data is public and the official sources are free. What this Actor adds is convenience: each filing is turned into analysis-ready transaction rows.

What you needOfficial site / APIThis Actor
Reading a Form 4Open each filing; one filing can hold several transactions and several ownersOne flat row per transaction, with value (shares × price) calculated when both are reported
Filtering buys vs sellsNot in the filing listTransaction code filter (default is purchases and sales)
Skipping pre-planned tradesRead the footnotes and checkbox yourselfExclude 10b5-1 plan trades with one switch; the flag is on every row
Watching specific companiesLook up each company's filingsList of tickers in one input
Only new filingsTrack accession numbers yourselfOnly new mode with a named alert

If you only need a single lookup now and then, the official site is fine. If you want the same data on a schedule, as flat rows you can feed to a spreadsheet, CRM or agent, this saves the glue work.

Data fields

FieldTypeWhat it contains
accessionNumbertextSEC accession number of the filing.
formtextForm type (4, or 4/A for amendments).
filedDatedateDate the filing was submitted.
periodOfReportdatePeriod of report stated on the filing.
tickertextIssuer trading symbol.
issuerNametextIssuer company name.
issuerCiktextIssuer SEC Central Index Key.
insiderNametextReporting person's name.
insiderCiktextReporting person's CIK.
insiderTitletextOfficer title or relationship stated on the filing.
isOfficerbooleanWhether the reporting person is an officer.
isDirectorbooleanWhether the reporting person is a director.
isTenPercentOwnerbooleanWhether the reporting person owns more than 10%.
otherReportingOwnerstextOther reporting owners on a joint filing, if any.
securityTitletextTitle of the security traded.
isDerivativebooleantrue for derivative-table transactions (options, warrants).
transactionDatedateDate of the transaction.
transactionCodetextSEC transaction code (P, S, A, M, F, G and so on).
transactionTypetextPlain-language name for the transaction code.
acquiredOrDisposedtextA for acquired, D for disposed.
sharesintegerNumber of shares or units in the transaction.
pricePerSharenumberPrice per share, when reported.
transactionValuenumberShares multiplied by price per share, only when both are reported.
sharesOwnedAfterintegerShares owned after the transaction.
ownershiptextDirect or Indirect ownership.
ownershipNaturetextDescription of indirect ownership (for example a trust or fund).
underlyingSecuritytextUnderlying security for derivative transactions.
exercisePricetextExercise or conversion price for derivative securities.
tenB5OnePlanbooleantrue when the filing indicates a Rule 10b5-1 trading plan.
filingUrltextLink to the filing index on EDGAR.
xmlUrltextLink to the filing's XML document.
scrapedAtdatetimeWhen the Actor collected the record (UTC).

Fields a source does not publish are null.

"New since yesterday" alerts

Turn on Only new and the Actor remembers what it has already returned, so each scheduled run delivers only records you have not seen before.

  1. Open the Actor in Apify Console and set the input, with Only new since last run switched on and a fixed alert name (stateKey). Example input:
{
"daysBack": 2,
"transactionCodes": ["P"],
"insiderRoles": ["officer", "director"],
"minTransactionValue": 100000,
"excludeTenB5One": true,
"maxResults": 200,
"onlyNew": true,
"stateKey": "daily-insider-buys"
}
  1. Click Save as task, then open Schedules, create a schedule (for example the cron expression 0 7 * * * for every day at 7:00 in the time zone you pick) and add the task to it.
  2. Under the task's Integrations, send the results to Slack, email, Google Sheets, a webhook or your own system.

Insiders must file within two business days of a trade, so a 2-day look-back with Only new catches each filing once.

The first run returns everything that matches your window (all matching transactions from the look-back window); later runs return only unseen records. Use a different alert name for each task so each keeps its own memory. A run with nothing new returns no results.

Cost per run

This Actor uses pay-per-result pricing: $3.00 per 1,000 results ($0.003 per result), with the Apify platform fee included. You are charged for the records a run returns and nothing is added on top for platform usage. A run that finds nothing new returns no results, so it has no per-result charge. The Max results input caps what a run can return (and so what it can cost).

Worked example: a daily alert for open-market purchases above $100,000 that returns 12 transactions costs 12 × $0.003 = $0.036 per run, about $1.08 for a 30-day month. 5,000 transactions cost $15.00.

The pricing is configured in Apify Console; the Pricing tab on this page is the authoritative source if it ever differs from this text.

Example input and output

The output below comes from real test runs of this Actor. Email addresses are masked and very long text is shortened here; the Actor returns the full values.

Input used for the example:

{
"daysBack": 2,
"transactionCodes": ["P"],
"insiderRoles": ["officer", "director"],
"minTransactionValue": 100000,
"excludeTenB5One": true,
"onlyNew": true,
"stateKey": "daily-insider-buys",
"maxResults": 200
}

Output (the first 2 records of a test run):

[
{
"accessionNumber": "0001193125-26-429073",
"form": "4",
"filedDate": "2026-10-22",
"periodOfReport": "2026-10-22",
"ticker": "RAPP",
"issuerName": "Rapport Therapeutics, Inc.",
"issuerCik": "2012593",
"insiderName": "PAUL STEVEN M",
"insiderCik": "1237564",
"insiderTitle": "Director",
"isOfficer": false,
"isDirector": true,
"isTenPercentOwner": false,
"otherReportingOwners": null,
"securityTitle": "Common Stock",
"isDerivative": false,
"transactionDate": "2026-10-22",
"transactionCode": "P",
"transactionType": "Open-market purchase",
"acquiredOrDisposed": "A",
"shares": 35714,
"pricePerShare": 27.28,
"transactionValue": 974277.92,
"sharesOwnedAfter": 77380,
"ownership": "Indirect",
"ownershipNature": "By Paul Capital Strategy III Fund LLC",
"underlyingSecurity": null,
"exercisePrice": null,
"tenB5OnePlan": false,
"filingUrl": "https://www.sec.gov/Archives/edgar/data/1237564/000119312526429073/0001193125-26-429073-index.htm",
"xmlUrl": "https://www.sec.gov/Archives/edgar/data/1237564/000119312526429073/ownership.xml",
"scrapedAt": "2026-10-23T10:41:47.262Z"
},
{
"accessionNumber": "0001193125-26-429071",
"form": "4",
"filedDate": "2026-10-22",
"periodOfReport": "2026-10-22",
"ticker": "RAPP",
"issuerName": "Rapport Therapeutics, Inc.",
"issuerCik": "2012593",
"insiderName": "MARAGANORE JOHN",
"insiderCik": "1180432",
"insiderTitle": "Director",
"isOfficer": false,
"isDirector": true,
"isTenPercentOwner": false,
"otherReportingOwners": null,
"securityTitle": "Common Stock",
"isDerivative": false,
"transactionDate": "2026-10-22",
"transactionCode": "P",
"transactionType": "Open-market purchase",
"acquiredOrDisposed": "A",
"shares": 8239,
"pricePerShare": 26.3799,
"transactionValue": 217344,
"sharesOwnedAfter": 8239,
"ownership": "Indirect",
"ownershipNature": "By John M. Maraganore Revocable Trust",
"underlyingSecurity": null,
"exercisePrice": null,
"tenB5OnePlan": false,
"filingUrl": "https://www.sec.gov/Archives/edgar/data/1180432/000119312526429071/0001193125-26-429071-index.htm",
"xmlUrl": "https://www.sec.gov/Archives/edgar/data/1180432/000119312526429071/ownership.xml",
"scrapedAt": "2026-10-23T10:41:47.444Z"
}
]

Limits worth knowing

  • Form 4 must be filed within two business days of a trade, so very recent trades may not be filed yet.
  • EDGAR search returns at most 10,000 filings per query. Narrow the dates for large pulls.
  • Some transactions (grants, gifts, option exercises) have no price, so pricePerShare and transactionValue are null.
  • Provide tickers that EDGAR can resolve; if none of the tickers resolve, the run ends with no results.
  • The Actor sends a declared User-Agent and keeps a polite request rate, as the SEC requires.

FAQ

What does transactionValue mean?

Shares multiplied by price per share, calculated only when both numbers are in the filing.

What are the transaction codes?

P is an open-market purchase, S a sale, A a grant or award, M an option exercise, F tax withholding and G a gift. The transactionType field spells it out.

Why is a price empty?

Some transactions, such as grants and option exercises, are reported without a price.

Can I exclude pre-planned sales?

Yes. Turn on the 10b5-1 exclusion; every row also carries the tenB5OnePlan flag.

Is this investment advice?

No. It is raw filing data for research.

More Actors from GovData Feeds, all on Apify:

Data comes from SEC EDGAR, a US government source. This Actor is not affiliated with or endorsed by the SEC. It is not investment advice.