About
What this is
A static site regenerated every weekday morning at ~7am ET. Pulls insider Form 4 filings from SEC EDGAR, filters to small-cap real-business open-market purchases, and presents them as a daily list plus a persistent page per ticker.
Filters
- Code P only — open-market purchases. Grants (A), option exercises (M), sales (S), tax-withholding (F) are excluded from the screener (but shown on company pages).
- One insider ≥ $100k per issuer per filing bucket. A single reporter (same CIK) has to cross the threshold on their own, across as many filings as they made — two different insiders at $60k each do not qualify, and only the insiders who individually crossed it are listed.
- EV < $1B using basic shares × price + total debt − cash from SEC XBRL.
- TTM revenue > 0 — drops pre-revenue biotechs, shell companies, SPACs.
Date semantics
URL date = the day you read the page. Content = filings since the previous weekday's read.
- Tue–Fri pages: previous calendar day's filings.
- Monday pages: Fri + Sat + Sun filings (the weekend rollup).
- No Sat/Sun URLs exist.
Valuation table
Fully-diluted by intent. FD SO = SO + Options + Warrants (no treasury-stock method). MC = SP × FD SO. EV = MC + Debt − Cash. When Options or Warrants are missing from XBRL (common for small caps that disclose only in narrative), the row shows "—" and FD SO falls back to the available components.
Data sources
- SEC EDGAR daily index + Form 4 XML
- SEC XBRL companyfacts (`data.sec.gov/api/xbrl/companyfacts/CIK*.json`)
- The filing's own XBRL instance, for the cover-page share count. companyfacts drops every fact carrying a dimension, so a multi-class filer's share count is simply not in that API — it is read off the 10-Q instead, one value per class.
- yfinance for share price and financial statements (with EDGAR XBRL as backup)
What isn't screened
The daily list carries only issuers that met the criteria — there is no "couldn't tell" list beside it. Three populations file Form 4s but can never be screened here, and are left out silently rather than reported as failures: registered funds (closed-end and interval funds, non-traded BDCs — they publish no XBRL financial statements), foreign private issuers (20-F/IFRS filers have no us-gaap statements to measure), and companies whose first periodic report hasn't posted yet (recent IPOs and SPACs — these become screenable on their own).
Caveats
- Late-arriving Form 4s for prior bucket days do not back-fill onto already-published pages. One exception: an issuer whose data couldn't be read on the day is retried each morning for a few days, and appears on its own day's page if it resolves.
- EV uses basic shares for the screener cutoff (more reliable data) — the company page shows fully-diluted EV separately.
- SEC XBRL tagging is inconsistent for small caps, especially for options and warrants. We flag what we couldn't extract.