diff --git a/docs/research-otc-markets-lead-source.md b/docs/research-otc-markets-lead-source.md new file mode 100644 index 0000000..fb06ce2 --- /dev/null +++ b/docs/research-otc-markets-lead-source.md @@ -0,0 +1,127 @@ +# OTC Markets ("pink sheets") as a lead source for corporate/regulatory services + +Research date: 2026-06-09. All figures below were pulled live from SEC EDGAR (free, public). Sample sizes noted; the SEC data is the source of truth. + +## TL;DR / recommendation + +- **Do NOT scrape OTCMarkets.com.** You do not need to, and their ToS prohibits it. The data you actually want (issuer name, ticker, **state of incorporation**, business + mailing address, phone, SIC industry, entity type) is in **SEC EDGAR**, which is free, public, and **explicitly OK to bulk-download** (max 10 req/sec, declare a User-Agent with contact info). EDGAR is the goldmine. +- The clean, legally-emailable, *reincorporation-relevant* lead pool is roughly **~950-1,000 US-domestic OTC-traded SEC filers** (see math below), heavily incorporated in **Delaware and Nevada** (73% of US-domestic OTC issuers in our n=400 sample). These are exactly the companies a "reincorporate / redomesticate to Texas" or "annual report / registered agent / franchise tax / foreign qualification" offer fits. +- **Email is the one gap:** EDGAR has phone + business address + (sometimes) website, but **no email**. We'd cold-email via a second step (enrich from the company website / IR page, or direct-mail / cold-call the disclosed address+phone). B2B cold email to these corporate contacts is legal under CAN-SPAM (no prior opt-in required) as long as we follow the rules below. +- **Texas reincorporation is a real, early trend** in SEC filings (48 filings mention "reincorporate in Texas", 43 "redomesticate to Texas") - driven by Tesla/others leaving Delaware, the new **Texas Business Court** (live Sept 2024) and the **Texas Stock Exchange (TXSE)**. Defensible, timely hook. + +## 1. How big is the OTC universe? + +Two different universes - be precise about which one we're targeting: + +- **All OTC-traded tickers (incl. non-SEC-reporting "dark"/pink companies):** ~10,000+ symbols across OTCQX / OTCQB / Pink / Expert Market (OTC Markets Group's own count). Most of these are NOT SEC reporting companies; many are foreign ordinary shares, grey-market, or shells with no public contact data. +- **OTC-traded companies that file with the SEC (have a CIK, file 10-K/10-Q):** EDGAR tags exactly **2,544 issuers with `exchange = "OTC"`** plus **227 with `exchange = None`** = **~2,771** (source: `company_tickers_exchange.json`, pulled 2026-06-09). **This is the addressable universe** - they have disclosed financials, a state of incorporation, and a real business address. + +## 2. The best data source: SEC EDGAR (free, public, bulk-OK) + +### Step 1 - the master list of OTC issuers (one file) +``` +https://www.sec.gov/files/company_tickers_exchange.json +``` +Fields: `cik, name, ticker, exchange`. Filter `exchange in ("OTC", None)` -> ~2,771 rows. (Use `company_tickers.json` if you also want major-exchange names.) + +### Step 2 - per-company detail (one JSON per CIK) +``` +https://data.sec.gov/submissions/CIK{cik:010d}.json +``` +Returns, per issuer (verified live): +- `name`, `tickers`, `exchanges`, `formerNames` +- **`stateOfIncorporation`** + `stateOfIncorporationDescription` <- the reincorporation hook +- **`addresses.business`** and `addresses.mailing` (street, city, state, zip) <- mailing/calling +- **`phone`** <- cold-call / verify +- `sic` + `sicDescription` (industry segmentation), `entityType`, `ein`, `website` (often empty), `investorWebsite` +- full filing history (so you can score "actively filing" vs delinquent) + +No email field exists in EDGAR. (Confirmed: submissions JSON top-level keys include phone/website/addresses but no email.) + +### Access rules (SEC "Fair Access" policy - sec.gov/os/accessing-edgar-data) +- Max **10 requests/second** total. +- Send a `User-Agent` header that identifies you with a contact, e.g. `User-Agent: Performance West `. +- "Download only what you need." Pulling ~2,771 submissions JSONs at ~6/sec = under 8 minutes, well within policy. + +## 3. What fraction is incorporated where (the reincorporation fit) + +Live sample of OTC + None issuers, n=400 (random, seed-fixed): + +| Bucket | Count | Share | +|---|---|---| +| **US-domestic incorporation** | 139 | **35%** | +| Foreign incorporation (ADRs, Alberta=A1, China=E9, etc.) | ~200 | ~50% | +| Blank/unknown state | 62 | ~15% | + +Within the **US-domestic** subset: +- **Nevada: 53, Delaware: 49 -> DE+NV = 73% of US-domestic OTC issuers.** +- Texas: only **1** (out of 139) -> almost nobody is in Texas yet = lots of room to pitch the move. +- Others: FL 6, WY 5, MD 7, plus a long tail. + +**Addressable lead math:** ~2,771 OTC/None SEC filers x ~35% US-domestic = **~970 US-domestic OTC issuers**, of which ~73% (~710) are DE/NV. These ~700-970 are the core list for a reincorporation / registered-agent / annual-report / franchise-tax / foreign-qualification campaign. (Foreign ADRs like Lindt, BMW, Siemens, Deutsche Telekom are the bulk of the "OTC" list and are NOT good leads - they can't redomesticate to Texas - so always filter to US states before mailing.) + +## 4. Texas reincorporation - is the hook real? + +Yes, early but real. EDGAR full-text search (`efts.sec.gov/LATEST/search-index`) hits: +- "reincorporate in Texas": **48 filings** +- "redomesticate to Texas": **43 filings** +- "convert to a Texas corporation": **17 filings** + +Drivers worth naming in copy (all public/verifiable): companies (Tesla, others) reincorporating out of Delaware after the 2024 Delaware Chancery rulings; the **Texas Business Court** (specialized business-dispute court, operational Sept 1, 2024); the **Texas Stock Exchange (TXSE)**, SEC-registered/announced 2024-2025; and Texas's no-corporate-income-tax positioning. The legal mechanic is a **conversion / domestication** under the **Texas Business Organizations Code (TBOC) Ch. 10, Subchapter C** (a foreign entity converts/domesticates to a Texas entity). That maps directly onto our existing corporate services. + +## 5. Which of OUR services fit this list + +From `api/src/service-catalog.ts` (corporate vertical), these all fit OTC microcap issuers: +- **Reincorporation / conversion / domestication to Texas** (NEW - we'd add a slug; closest existing primitives are `corp-formation` + `entity-dissolution`, but a true TBOC Ch. 10 conversion is a distinct service worth its own SKU). +- `foreign-qualification-single` / `-multi` (Certificate of Authority - if they keep DE/NV charter but operate in TX/other states). +- `registered-agent` (1-year) - every reincorporated/qualified entity needs one; recurring revenue. +- `annual-report-filing` (Annual Report / Franchise Tax) - TX franchise tax / public information report, DE franchise tax, NV annual list. Recurring, low-friction entry product. +- `entity-dissolution` - for shells winding down. +- `corp-formation` / `llc-formation` - for newcos / restructurings. + +Cross-sell: many OTC microcaps are also FCC 499 filers (telecom shells) or have healthcare/trucking subs - but keep the OTC campaign in the **corporate** lane. + +## 6. Legality + +### Scraping +- **EDGAR: explicitly allowed** to bulk-download (fair-access policy, 10 req/sec, declared User-Agent). No login. This is the path. +- **OTCMarkets.com: their ToS prohibits scraping/automated access**; they sell the data as a commercial feed. No need to touch it - EDGAR has everything we need except email. + +### CAN-SPAM (cold B2B email to these issuers) +Cold-emailing US businesses is legal - **no prior opt-in required** in the US (unlike GDPR/CASL). Requirements for each commercial email: +1. **Accurate header info** - real "From", reply-to, routing (no spoofing). +2. **Non-deceptive subject line.** +3. **Identify it as an ad** if it is one (a clear commercial-message identifier; can be contextual). +4. **Valid physical postal address** of Performance West in the footer (we already have this in our footers). +5. **Clear opt-out / unsubscribe** mechanism, and **honor opt-outs within 10 business days**; keep them off the list permanently. +6. Don't email harvested-then-sold lists in a way that violates the harvesting prohibition (EDGAR-derived contact data + our own enrichment is fine; we are not buying a harvested list). + +Our existing warmup/listmonk stack already enforces 4 + 5 (footer address, unsubscribe, suppression). The corporate stream would reuse that. + +### CASL / GDPR caveat +**Filter to US-domestic issuers anyway** (which we want to do for the reincorporation fit). That also sidesteps Canada (CASL requires consent - and A1=Alberta is the single biggest foreign code in our sample) and EU (GDPR). Mailing only US entities keeps us cleanly under CAN-SPAM. + +## 7. The email gap - how to actually reach them + +EDGAR gives **phone + business/mailing address + sometimes a website**, not email. Options, cheapest-first: +1. **Enrich from the company website / IR page** (EDGAR `website`/`investorWebsite` when present; else resolve via the company name). Scrape the public IR/contact email. ~Free, our own enrichment. +2. **Direct mail + cold call** the EDGAR-disclosed address/phone (100% coverage in our sample - every issuer had a business address; 119/120 had a phone). Higher-touch, but matches a higher-ticket corporate sale. +3. **Paid enrichment** (transfer-agent / IR-contact databases) only if email volume matters more than cost. + +For a *reincorporation* pitch (a 4-5 figure decision), a tighter, partly direct-mail/call motion on the ~700 DE/NV US-domestic issuers likely beats a blast - protects our warmed IPs too. + +## 8. Suggested next steps (if we proceed) + +1. Build `scripts/otc_lead_pull.py`: pull `company_tickers_exchange.json` -> filter `exchange in (OTC, None)` -> fetch each `submissions/CIK*.json` at <=6 req/sec with our User-Agent -> write a CSV: `cik, name, ticker, state_of_incorporation, sic, sic_desc, business_street/city/state/zip, mailing_*, phone, website, entity_type, last_filing_date`. Filter to US states. +2. Segment: (a) DE/NV US-domestic = "reincorporate to Texas / save on franchise tax" hook; (b) all US-domestic = registered-agent + annual-report recurring; (c) actively-filing only (drop long-delinquent shells). +3. Enrichment pass for emails (website/IR scrape); fall back to direct-mail/call for the rest. +4. Stand up a **corporate** listmonk list + warmup segment mirroring the HC/trucking setup (footer address, unsubscribe, suppression, deliverability guards). Reuse `_email_exclusions.py`. +5. Draft source-grounded copy: name the real, verifiable hooks (TBOC Ch.10 conversion, Texas Business Court, TXSE, DE franchise-tax burden) - no fabricated claims, link to the gov/court sources so the recipient can verify. + +## Sources (all pulled/verified 2026-06-09) +- `https://www.sec.gov/files/company_tickers_exchange.json` (OTC=2,544; None=227) +- `https://www.sec.gov/files/company_tickers.json` (10,365 ticker'd filers) +- `https://data.sec.gov/submissions/CIK{cik}.json` (per-issuer state of incorp, address, phone, sic; n=400 + n=120 samples) +- SEC Fair-Access policy: `https://www.sec.gov/os/accessing-edgar-data` ("no more than 10 requests per second", declare User-Agent) +- EDGAR full-text search: `https://efts.sec.gov/LATEST/search-index` (Texas reincorporation filing counts) +- Texas Business Organizations Code Ch. 10 Subch. C (conversion/domestication); Texas Business Court (eff. 2024-09-01); Texas Stock Exchange (TXSE), 2024-2025.