SEC 10b5-1 Trading Plans: insider plan adoptions, 10-Q and 10-K
Pricing
from $3.25 / 1,000 trading plan listeds
SEC 10b5-1 Trading Plans: insider plan adoptions, 10-Q and 10-K
Rule 10b5-1 trading plans that officers and directors adopted or terminated, from the Item 408 disclosure in 10-Q and 10-K filings: company, ticker, role, plan type, adoption and end date, duration and shares in the plan. By ticker or CIK, or every filing in a date range.
Pricing
from $3.25 / 1,000 trading plan listeds
Rating
0.0
(0)
Developer
Steadydata Team
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Rule 10b5-1 trading plans that officers and directors adopted or terminated, from the Item 408 disclosure in 10-Q and 10-K filings: company, ticker, role, plan type, adoption and end date, duration and shares in the plan. By ticker or CIK, or every filing in a date range.
Why this scraper
- Only delivered results are charged. Inputs that fail come back as clear error records at no cost.
- The plan when it is announced, not when it trades. Form 4 and Form 144 show a 10b5-1 plan only once a sale happens. A plan must wait out a cooling-off period before its first trade (at least 90 days for officers and directors under Rule 10b5-1), and the 10-Q or 10-K that discloses the adoption comes out in between. This actor reads that disclosure: who in role adopted or terminated a plan, when, until when, and for how many shares.
- Straight from the SEC's own tags, no text guessing. Since the SEC's Executive
Compensation Disclosure taxonomy, Item 408 is tagged in the filing's XBRL (adoption flag,
termination flag, title, adoption date, expiration date, duration, aggregate shares). The
actor reads the small page the SEC renders from exactly those tags. Measured on CarGurus'
10-Q for the quarter to 30 June 2026: four plans from two pages of 8.4 KB together, instead
of the 3.3 MB report. Every row links to that page in
reportUrl, so each value can be checked. - Two ways in. A watchlist of tickers or CIKs (the newest reports per company), or a
filing period such as
last 7 daysthat reads every 10-Q and 10-K filed in it, for every listed company at once, with a hard ceiling on how many filings are read. - Rule 10b5-1 plans and non-Rule 10b5-1 arrangements are told apart, and so are adoptions,
terminations and modifications. When a person has several arrangements, their separate
share amounts come along in
arrangementShares.
Who this is for
Short sellers and quantitative funds who want to know which executives scheduled sales and
how large they are, before the Form 4 sales arrive. Investor-relations and compliance teams
comparing their own disclosure with peers. D&O underwriters, governance researchers and
journalists who track planned insider selling per company or per quarter. Put tickers or CIKs
in companies for a watchlist, or last 7 days for a weekly market-wide sweep.
Who this is not for
The name of the officer or director is not delivered, although the filing states it; a row
says "Chief Financial Officer of Intapp adopted a Rule 10b5-1 plan for 80,000 shares", and
the filing behind documentUrl says who. If you need rows keyed to a named person, this is
the wrong tool. The actor reads only what the filer TAGGED: a company that describes a plan in
the text but leaves the XBRL tags out, or tags no share amount, gives an empty field rather
than a guess (some filers state the amount only in words, then aggregateShares is empty).
Reports from before a filer started tagging Item 408 (the tagging was phased in during 2024
and 2025) give no rows. 8-K disclosures
of plans and the later Form 4 trades are not read here; for the trades use
sec-insider-trading. A period row reads
every 10-Q and 10-K filed in it, including the many that report no plan; you pay only for
the plans, but a long period takes time (the SEC allows at most ten requests per second, and
this actor stays at eight).
Input fields
| Field | Type | Required or default | What it does |
|---|---|---|---|
companies | list of text | required | One per row, up to 100: a ticker (CARG), a CIK (1494259), an EDGAR company URL, or a filing period for every company at once: '2026-10-20..2026-10-27' or 'last 7 days' (at most 31 days per row). |
forms | list of text | ["10-Q", "10-K"] | Which reports to read. 10-Q and 10-K carry the Item 408 disclosure; add 10-Q/A or 10-K/A for amendments. |
sinceDate | text | Company rows only: read filings filed on or after this date (YYYY-MM-DD). Empty means the newest filings up to the maximum below. | |
maxFilingsPerCompany | number | 4 | Company rows only, newest first. 4 is one year of quarterly and annual reports; the disclosure exists since 2023. |
maxFilingsPerPeriod | number | 300 | Period rows only: a hard ceiling on the number of 10-Q and 10-K filings read per period row, newest day first. On 27 October 2026 the SEC received 72 of them. |
Input example
{"companies": ["CARG","INTA","last 3 days"],"forms": ["10-Q","10-K"],"maxFilingsPerCompany": 4,"maxFilingsPerPeriod": 300}
Output example
| Field | Type | What it holds | Example |
|---|---|---|---|
companyName | text | The company that filed the report, as the SEC names it. | CarGurus, Inc. |
ticker | text | The company's ticker symbol; the first one when the company has several share classes. | CARG |
cik | text | The SEC's own number for the filer, the key that stays the same when a company changes its name. | 1494259 |
form | text | The report the disclosure comes from: 10-Q (quarterly) or 10-K (annual), or an amendment when asked for. | 10-Q |
filingDate | text | The date the report was filed with the SEC, the day the plan became public. | 2026-08-06 |
periodOfReport | text | The quarter or fiscal year end the report covers; the plan was adopted or terminated within that period. | 2026-06-30 |
accessionNumber | text | The SEC's id for this filing, the key to find the document back. | 0001193125-26-338067 |
action | text | What happened to the arrangement in the period: Adopted, Terminated, Modified, or a combination such as Adopted and terminated, read from the flags the filer tagged. | Adopted |
planType | text | Rule 10b5-1 for a plan meant to satisfy the affirmative defence of Rule 10b5-1(c), Non-Rule 10b5-1 for any other written trading arrangement. | Rule 10b5-1 |
isRule10b51 | true/false | True for a Rule 10b5-1 plan, false for a non-Rule 10b5-1 arrangement; empty when the filer reports both in one entry. | True |
role | text | The title of the officer or director as the filing states it, for example Chief Financial Officer or member of our Board of Directors. The person's name is not delivered; it is in the filing behind documentUrl. | Executive Chair and Chair of the Board of Directors |
isDirector | true/false | Derived from the title text: it names a director, the board or a chair. | True |
isOfficer | true/false | Derived from the title text: it names an officer, chief, president, executive, counsel, treasurer, secretary or controller. | True |
adoptionDate | text | The date the arrangement was adopted, as tagged by the filer (YYYY-MM-DD). | 2026-05-29 |
terminationDate | text | The date the arrangement was terminated, only for terminated arrangements. | |
expirationDate | text | The date the arrangement ends by its own terms, as tagged; some filers describe the end in words only, then it is empty. | 2027-02-26 |
durationDays | number | The duration of the arrangement in days, as tagged by the filer; empty when the filer states it otherwise. | 274 |
durationText | text | The duration exactly as the filing renders it, for example 367 days. | 274 days |
aggregateShares | number | The maximum number of securities that may be sold or bought under the arrangement, as tagged; when the filer tags only the separate arrangements, their sum. | 1493200 |
arrangementShares | list | The amounts of the separate arrangements this person has under the plan, when the filer tags them separately; often empty. | [150000] |
arrangementIndex | number | The position of this arrangement within its filing, counting from 1; with accessionNumber it identifies the row. | 3 |
documentUrl | text | The 10-Q or 10-K itself; the full Item 408 text, including the person's name, is there. | https://www.sec.gov/Archives/edgar/data/1494259/000119312... |
reportUrl | text | The page the SEC renders from the filing's Item 408 XBRL tags, where every value of this row can be checked. | https://www.sec.gov/Archives/edgar/data/1494259/000119312... |
indexUrl | text | The SEC index page of the filing with every document in it. | https://www.sec.gov/Archives/edgar/data/1494259/000119312... |
Error codes: INVALID_COMPANY, INVALID_PERIOD, INVALID_INPUT, NOT_FOUND, NO_FILINGS, NO_ARRANGEMENTS, DUPLICATE_INPUT, BLOCKED.
One delivered row looks like this (CarGurus, 10-Q for the quarter to 30 June 2026, read from the SEC on 28 October 2026):
{"companyName": "CarGurus, Inc.","ticker": "CARG","cik": "1494259","form": "10-Q","filingDate": "2026-08-06","periodOfReport": "2026-06-30","accessionNumber": "0001193125-26-338067","documentUrl": "https://www.sec.gov/Archives/edgar/data/1494259/000119312526338067/carg-20260630.htm","indexUrl": "https://www.sec.gov/Archives/edgar/data/1494259/000119312526338067/0001193125-26-338067-index.htm","reportUrl": "https://www.sec.gov/Archives/edgar/data/1494259/000119312526338067/R10.htm","action": "Adopted","planType": "Rule 10b5-1","isRule10b51": true,"role": "Executive Chair and Chair of the Board of Directors","isDirector": true,"isOfficer": true,"adoptionDate": "2026-05-29","terminationDate": null,"expirationDate": "2027-02-26","durationDays": 274,"durationText": "274 days","aggregateShares": 1493200,"arrangementShares": [150000],"arrangementIndex": 3,"status": "ok"}
Related actors from steadydata
- sec-insider-trading: the Form 4 sales and purchases that follow once a plan starts trading
- sec-edgar-filings: every filing of the same company, 10-K to 8-K, with links
- google-finance-quotes: the share price of the same company, live
Pricing
Pay per event: one plan-listed event per delivered result. No charge for inputs
that fail, no separate platform-usage surcharge.
Free Apify plan: this actor delivers up to 25 rows per run for accounts on the Apify free plan, and then stops with a message. That limit is set by us, not by Apify. It exists so the actor keeps paying for itself for the people who do pay. Any paid Apify plan runs it at full size, billed per delivered row, with failed rows never charged.
FAQ
Is personal data collected?
No. The filing names the person three times (a name tag, the label of the person's entry and
the text of the material terms) and sometimes names a relative in the label of a joint
arrangement. None of that is read into the dataset, and a title that happens to contain the
name is cleaned. A row carries the company, the role as filed and the plan; the name stays in
the filing behind documentUrl.
How do I get every new plan each week?
Schedule a run with last 7 days in companies. It reads every 10-Q and 10-K filed in those
seven days and delivers only the plans. Filings without a plan are not charged, and a period
in which no filing reports one comes back as one free NO_ARRANGEMENTS row.
What is the difference between a Rule 10b5-1 plan and a non-Rule 10b5-1 arrangement?
A Rule 10b5-1 plan is a written plan adopted without inside information that is meant to
satisfy the affirmative defence of Rule 10b5-1(c). A non-Rule 10b5-1 trading arrangement is
any other written trading arrangement the SEC asks companies to disclose. planType and
isRule10b51 say which one a row is.
Why is aggregateShares empty or different from the sum of arrangementShares?
Because the actor delivers what the filer tagged. Some filers tag one total per person, some
only the separate arrangements (then the total is their sum), some describe a plan in dollars
or in words. CarGurus tags a total of 1,493,200 shares for its executive chair and one
separate arrangement of 150,000; both are delivered as filed.
What does a run cost when a company has no plan?
Nothing. NO_ARRANGEMENTS, NO_FILINGS, NOT_FOUND, INVALID_COMPANY, INVALID_PERIOD and
BLOCKED rows are free; only delivered plans are charged.
How far back does it go?
As far as the tagging goes. The Item 408 disclosure exists since 2023; the XBRL tagging this
actor reads was phased in during 2024 and 2025. maxFilingsPerCompany reads up to 40 reports per company, which
is ten years of quarterly reports, but older reports simply give no rows.
What happens when the source changes? Sources change from time to time; that is the nature of this work. The actor is monitored daily and fixed fast, and while it is broken you are not charged, because only delivered results cost anything.
Can I call it from my own code, like an API? Yes. Every run is available through the Apify API: start it with one HTTP request, then read the results as JSON, CSV or Excel from the dataset endpoint, or use the official Python and JavaScript clients. The input is the same JSON as in the input example above, so a scheduled script, a Make or Zapier step or an AI agent can call it without any changes.