Technical writing

SEC Form D: The Private Placement Database Behind $2 Trillion in Annual Exempt Offerings

· AI Analytics
SECForm DPrivate PlacementsVenture CapitalFederal Data

Every venture capital round, every hedge fund raise, every private equity buyout vehicle, and every real estate syndication that relies on the Regulation D exemption from SEC registration triggers a single required disclosure: SEC Form D, filed within 15 days of the first sale of securities. The SEC receives 300,000 to 350,000 of these filings per year, representing $2 to $3 trillion in total offering amounts annually. It is the only systematic public window into a private capital market that otherwise operates entirely outside the continuous disclosure requirements that govern public companies.

What Form D is and why it exists

The Securities Act of 1933 requires that any offer or sale of securities in the United States be registered with the SEC unless an exemption applies. Registration is expensive—it requires audited financial statements, a prospectus, underwriter due diligence, SEC review, and ongoing Exchange Act reporting obligations. Congress carved out exemptions for transactions that do not require the full apparatus of public market disclosure because the buyers are sufficiently sophisticated or the offering sufficiently limited in scope.

Regulation D, adopted in 1982, consolidated those exemptions into a unified framework. The SEC's companion requirement is Form D: a notice that an exempt offering has commenced. Form D is not a registration statement—it does not require SEC review or approval. It is a notice filing, submitted electronically via EDGAR, that triggers no substantive regulatory response. Its value to the public is entirely informational: the aggregate of Form D filings constitutes the most comprehensive machine-readable dataset on private capital formation in the United States.

The filing obligation arises with the first sale of securities in the offering. Issuers have 15 calendar days from that date. If the offering continues beyond one year, or if certain material facts change (the offering amount increases beyond 10% of the previously disclosed amount, or a new exemption is added), an amendment is required. Many hedge funds and private equity vehicles file annual amendments as they continue to raise capital over multi-year fund raise periods. This means the EDGAR database contains both initial filings and a trail of amendments that together document the evolution of a private capital raise over time.

Regulation D exemptions: Rules 504, 506(b), and 506(c)

Regulation D contains three operative rules, each defining an exemption with distinct constraints on offering size, investor eligibility, and permissible marketing methods. They are not interchangeable—issuers choose the rule that fits their capital structure, investor base, and marketing approach.

Rule 504: small offerings, state oversight

Rule 504 permits offerings of up to $10 million in any 12-month period. It imposes no restriction on the number or sophistication of investors, but it prohibits general solicitation and advertising in most circumstances and requires compliance with applicable state securities laws (blue sky laws). Because the $10 million cap and state registration requirements limit its utility for larger raises, Rule 504 is primarily used by smaller businesses seeking regional capital from a limited investor pool. Rule 504 offerings appear in Form D filings but represent a small fraction of total exempt offering volume by dollar amount.

Rule 506(b): the dominant exemption

Rule 506(b) is the engine of private capital formation in the United States. It preempts state blue sky registration requirements (issuers need only file a notice with state regulators, not obtain state approval), imposes no cap on offering amount, and permits sales to an unlimited number of accredited investors plus up to 35 non-accredited but sophisticated investors. General solicitation and advertising are prohibited—the issuer must have a pre-existing substantive relationship with investors before making an offer.

Rule 506(b) accounts for roughly 90% of Form D filings by count and an even higher share by dollar volume. Virtually every venture capital fund, private equity buyout vehicle, hedge fund, and real estate syndication operates under 506(b). The “substantive relationship” requirement is interpreted by issuers and their counsel to mean a prior business or investment relationship sufficient to assess the investor's financial sophistication and ability to bear risk—an investor who attended a fund manager's previous fund, a lead investor who introduces co-investors, or a placement agent with pre-existing client relationships.

Rule 506(c): general solicitation after the JOBS Act

Rule 506(c) was created by the SEC in 2013 to implement Title II of the Jumpstart Our Business Startups (JOBS) Act of 2012. It permits general solicitation and advertising—public marketing of a private offering—subject to two conditions: all purchasers must be accredited investors, and the issuer must take reasonable steps to verify that each purchaser is in fact accredited. The verification requirement is the key operational difference from 506(b). Under 506(b), issuers can rely on investor self-certification; under 506(c), the SEC expects documentary verification: a letter from the investor's licensed CPA or attorney confirming accredited status, bank or brokerage statements confirming net worth, or W-2s and tax returns confirming income.

Rule 506(c) has seen slower adoption than Congress anticipated. The verification burden is operationally significant, and many issuers prefer the flexibility of the 35-non-accredited-investor allowance under 506(b). AngelList and other online platforms have built verification infrastructure that reduces the compliance friction, but the majority of issuers still choose 506(b) for traditional raises with an established LP base. In recent Form D data, 506(c) filings represent roughly 10–15% of total filings by count but a larger share by dollar amount among technology startup raises, where public marketing via AngelList syndicates is more common.

The accredited investor standard

The accredited investor definition is the gating mechanism for access to Regulation D offerings under Rule 506. An individual qualifies as accredited under any of three financial thresholds: net worth exceeding $1 million excluding the value of the primary residence, income exceeding $200,000 in each of the prior two calendar years with reasonable expectation of the same in the current year, or joint income with a spouse or spousal equivalent exceeding $300,000 under the same conditions. The SEC added knowledge-based criteria in 2020: holders of Series 7, Series 65, or Series 82 licenses also qualify, as do “knowledgeable employees” of certain private funds. Entities qualify if they have assets exceeding $5 million or if all equity owners are accredited individuals.

The $1 million net worth and $200,000/$300,000 income thresholds have not been indexed to inflation since they were set in 1982. The SEC's own investor advocates have noted that inflation has substantially eroded their real value: a household income of $300,000 joint in 1982 dollars is roughly equivalent to $950,000 in 2024 dollars. Approximately 19 million US households now qualify as accredited investors—about 13% of all households—up from roughly 1.5% in 1982. Advocates for expanding retail investor access to private markets argue the definition is now too restrictive because markets have matured; critics argue it should be tightened because the wealth thresholds no longer identify genuinely sophisticated investors.

The JOBS Act and adjacent exemptions

The Jumpstart Our Business Startups Act of 2012 made the most significant structural changes to exempt offering law since Regulation D itself. Beyond Title II (Rule 506(c)), the JOBS Act added two other exemption regimes that appear alongside Form D in the landscape of exempt offerings.

Title III created Regulation Crowdfunding (Reg CF), allowing issuers to raise up to $5 million per year from any investor—accredited or not—through SEC-registered online funding portals. The offering must be conducted entirely on a single portal. AngelList Republic, Wefunder, StartEngine, and Mainvest operate as registered Reg CF portals. Reg CF offerings require financial disclosures scaled to offering size: issuers raising over $1.235 million must provide reviewed financial statements; those raising over $2.35 million must provide audited statements. Reg CF is not a Form D exemption—it files on Form C—but it competes in the same sub-$5M startup capital market where 506(b) offerings dominate.

Title IV directed the SEC to overhaul Regulation A, the original small-offering exemption. The resulting Regulation A+ permits two tiers: Tier 1 allows up to $20 million per year with state blue sky compliance required; Tier 2 allows up to $75 million per year with preemption of state registration but mandatory audited financial statements, ongoing annual, semiannual, and current reporting obligations, and investor purchase limits for non-accredited buyers (10% of the greater of annual income or net worth). Regulation A+ offerings file on Form 1-A and are sometimes described as “mini-IPOs”—they permit advertising to retail investors, require SEC qualification (not just review), and produce an offering circular analogous to a prospectus. Regional issuers seeking retail investor capital without the full cost of a traditional IPO use Reg A+ as an alternative, though take-up has been modest relative to Rule 506 volume.

Form D data fields and structure

Each Form D filing is an XML document submitted to EDGAR. The schema has been standardized since electronic filing became mandatory in 2009, and the SEC publishes XBRL-tagged data for machine-readable analysis. The key fields are:

  • Entity name: the legal name of the issuing entity. For fund vehicles this is typically a limited partnership name (e.g., “Acme Ventures Fund III LP”); for operating companies it is the company name. Related persons (executive officers, directors, and promoters) are listed separately with contact information.
  • Date of first sale: the date on which the first sale of securities in the offering occurred. This is the event that starts the 15-day filing clock.
  • Total offering amount: the maximum aggregate amount the issuer intends to raise. For funds still in their capital raise period, this is the fund's target size. Issuers may disclose zero or leave this field as “indefinite” if the offering does not have a defined cap.
  • Total amount sold: the aggregate amount raised to date at the time of filing. In conjunction with the total offering amount, this shows how far along a fund raise is.
  • Number of investors already invested: count of investors who have committed capital as of the filing date.
  • Exemption relied upon: which Regulation D rule (504, 506(b), or 506(c)) the issuer is invoking.
  • Type of securities offered: equity, debt, pooled investment fund interests, option/warrant, tenant-in-common, or mineral property. Pooled investment fund interests is the category used by private funds (hedge funds, PE funds, VC funds).
  • Industry group: one of 17 standardized industry categories including technology, health care, banking and financial services, real estate, energy, and others. Allows sector-level aggregation across filings.
  • Revenue range: a bucketed revenue disclosure (no revenues, $1–$999,999, $1–$5 million, $5–$25 million, $25–$100 million, over $100 million, or “decline to disclose”). This is the only financial size indicator in the filing for operating company issuers.
  • Investment fund type: if the issuer is a private fund, this field specifies hedge fund, private equity fund, venture capital fund, real estate fund, new markets/SBIC fund, or other investment fund.
  • State of incorporation: the state under whose laws the entity is organized. Delaware dominates for funds and startups because of its well-developed corporate and partnership law.

The scale of private capital markets

The SEC's annual report on Regulation D offerings—published by the Division of Economic and Risk Analysis—provides the most authoritative statistical portrait of private capital markets in the United States. The 2022 report found that Rule 506 offerings reported approximately $2.5 trillion in total new capital raised during the year, compared to $1.4 trillion raised via registered public offerings. Private capital markets substantially exceed public markets in annual capital formation volume, a reversal of the historical pattern that accelerated after the Sarbanes-Oxley Act increased public company compliance costs in 2002.

Venture capital rounds are tracked through Form D filings as they occur. The typical pattern: a startup closes a Series A and files Form D within 15 days of the first wire. Median Series A rounds disclosed in Form D data run approximately $10–15 million; Series B rounds $20–40 million; Series C and beyond $50 million to over $100 million for the largest deals. The Form D filing precedes press releases and TechCrunch announcements for many rounds— researchers and data vendors who monitor EDGAR in near-real-time have a 15-day window to identify newly funded companies before public disclosure. PitchBook, Crunchbase, and CB Insights all incorporate Form D data as a primary source for their venture capital databases.

The hedge fund industry, with approximately $4 trillion in assets under management as of the most recent CFTC and SEC estimates, almost entirely operates under Rule 506(b). A hedge fund that opens to new investors files Form D; a fund that is closed to new investors and operates only for existing LPs may continue without further filings. Amendment filings extend the record across multi-year capital raise periods: a large multi-strategy fund might have a Form D filing trail extending 10 years as it continuously raises from new limited partners to replace redemptions.

Private equity buyout funds file Form D during the capital commitment period, typically 18–36 months from first close to final close. A fund targeting $5 billion might disclose a series of amendments as commitments accumulate from $500 million to $1 billion to final close. Real estate syndications use Form D extensively for apartment complex acquisitions, commercial real estate, and ground-up development projects. These filings tend to be smaller in individual size ($5–$50 million) but numerous—there may be a separate Form D for each property acquisition vehicle.

Analytical applications and market intelligence

Form D data supports a range of analytical applications that would be impossible from any other public source. The aggregate of filings constitutes a leading indicator of private market activity with no equivalent in public market data.

Geographic analysis of startup and venture capital activity uses Form D state of incorporation and, for operating company issuers, the principal state of business. The San Francisco Bay Area, New York City, and Boston consistently account for the largest shares of technology-sector VC-related filings. Miami, Austin, and Seattle have grown in share in recent years. State-level analysis using Form D data can identify emerging startup ecosystems before they appear in investment ranking surveys.

Industry sector trends are visible from the industry group field. The technology sector dominates by count and dollar volume in most years, followed by health care and real estate. During the 2020–2021 pandemic period, health care and biotech Form D filings spiked as vaccine and therapeutics startups raised at unprecedented speed. The real estate sector shows countercyclical patterns: apartment syndication filings were high in 2020–2022 as institutional capital flowed into multifamily assets; they declined in 2023–2024 as rising interest rates compressed cap rates and deal activity.

Time series analysis of Form D filing counts serves as a private market activity barometer. The sharp spike in early 2021 reflected the SPAC boom and broader private market frenzy of that period: total Form D filings surged as blank check company vehicles, venture-backed startups raising at elevated valuations, and real estate deals all compressed into a single quarter of intense activity. The subsequent decline in 2022–2023 tracked the rate hike cycle and the slowdown in VC deployment that became apparent in public market data only with a lag.

Amendment filing analysis reveals which funds are actively raising versus dormant. A fund with a Form D filed in 2020 and no amendments since 2021 is likely closed to new investment. A fund with quarterly amendment filings through 2024 is actively accepting capital. This allows researchers to construct a real-time map of which fund managers are in market, without relying on self-reported databases maintained by the funds themselves.

EDGAR access and data retrieval

All Form D filings are publicly available on SEC EDGAR atedgar.sec.gov. The full-text search interface atefts.sec.gov/LATEST/search-index supports filtering by form type, date range, and keyword. The EDGAR company search allows lookup by company name or CIK (Central Index Key). Each filer in EDGAR has a unique CIK; a fund manager with multiple fund vehicles will have multiple CIKs. The submissions JSON atdata.sec.gov/submissions/CIK{10-digit-CIK}.jsonlists all filings for a given entity.

Electronic Form D filing became mandatory in 2009, so the machine-readable corpus begins then. Older paper filings exist but are not systematically indexed. The SEC's EDGAR full-text search index is updated within minutes of a new filing, making near-real-time monitoring feasible. Each Form D XML document is small—typically 10–30 KB—and the full corpus of annual filings is on the order of 3–4 GB of XML per year, manageable for bulk download and analysis.

The EDGAR XBRL viewer and the bulk data downloads on the SEC's developer portal provide structured access to Form D fields without requiring custom XML parsing. The SEC's EDGAR Application Programming Interface (API) documentation atsec.gov/developer specifies rate limits (10 requests per second), required User-Agent headers, and available endpoints. Violating the rate limit results in temporary IP blocks; compliant scripts should include backoff logic.

Limitations and the dark money problem

Form D is a notice, not a disclosure. Its limitations are fundamental and should inform every analytical use of the data.

The filing obligation is triggered only when securities are sold. If an issuer prepares a private offering but never closes any investors, no Form D is required. A fund manager who abandons a raise before the first closing leaves no trace in the database. This creates a survivor bias in the filing population: Form D captures only raises that actually happen, not attempted raises that fail. Failure rates in private fundraising are significant— particularly for emerging managers and first-time fund managers— and the failure population is invisible in Form D data.

Form D requires no financial statements, no audited accounts, no description of the use of proceeds, and no ongoing disclosure after the offering closes. Once a fund files its final amendment, the public record is silent until the manager raises the next fund. The SEC has no Form D equivalent of the annual report obligation that applies to registered investment companies. Investors in private placements receive their disclosures through the private placement memorandum (PPM), which is not filed with the SEC and is not publicly available.

Shell companies and special purpose vehicles can file Form D without revealing the ultimate beneficial owners of the issuing entity. The “related persons” field lists executive officers, directors, and promoters, but beneficial ownership behind nominee structures is not disclosed. Many Cayman Islands fund structures operate with a US feeder fund that files Form D (because US investors invest through the feeder) while the master fund and its investment activity are offshore and not disclosed in any US filing. The offshore master fund structure is standard practice among international hedge funds and private equity managers and is entirely legal; it is mentioned here only because it limits the completeness of the Form D picture for understanding total fund AUM.

Accredited investor verification under Rule 506(c) is issuer-certified. The SEC does not independently verify that the investors in a 506(c) offering actually qualify as accredited. Enforcement actions against issuers who fail to verify accredited status do occur, but they require a complaint or examination trigger to initiate. The SEC's examination program for Rule 506(c) compliance is focused on registered investment advisers; smaller unregistered issuers may have limited verification documentation and face less scrutiny. This is a structural gap between the legal standard (reasonable steps to verify) and actual practice, particularly in self-directed IRA-funded offerings where custodian letters may not constitute rigorous verification.

Python example: analyzing Form D filings via EDGAR

The following script demonstrates how to query the EDGAR full-text search API for Form D filings, download and parse individual XML documents, and run four analytical computations: top-10 states by VC-related filings, average offering size by exemption type, monthly filing trend, and the proportion of filings using Rule 506(c) general solicitation versus traditional Rule 506(b). The SEC requires a descriptive User-Agent header and limits requests to 10 per second.

import requests
import pandas as pd
from collections import defaultdict
import datetime

# ---------------------------------------------------------------------------
# SEC Form D analysis via EDGAR full-text search API
# No API key required; rate-limit to 10 requests/second per SEC fair-use rules
# ---------------------------------------------------------------------------

EFTS_BASE = "https://efts.sec.gov/LATEST/search-index"
EDGAR_BASE = "https://data.sec.gov"

HEADERS = {
    "User-Agent": "Research Bot research@example.com",  # required by SEC
    "Accept-Encoding": "gzip, deflate",
}

def fetch_form_d_index(start_date: str, end_date: str, hits_per_page: int = 100) -> list[dict]:
    """
    Query the EDGAR full-text search index for Form D filings in a date range.
    Returns a list of filing metadata dicts from the JSON index.

    start_date / end_date: ISO format "YYYY-MM-DD"
    hits_per_page: max 100 per EDGAR guidelines.
    """
    all_hits: list[dict] = []
    from_offset = 0

    while True:
        params = {
            "q": '"form D"',
            "dateRange": "custom",
            "startdt": start_date,
            "enddt": end_date,
            "forms": "D",
            "_source": "period_of_report,entity_name,file_date,file_num",
            "from": from_offset,
            "hits.hits.total.relation": "eq",
        }
        resp = requests.get(EFTS_BASE, params=params, headers=HEADERS, timeout=60)
        resp.raise_for_status()
        data = resp.json()
        hits = data.get("hits", {}).get("hits", [])
        if not hits:
            break
        all_hits.extend(hits)
        total = data.get("hits", {}).get("total", {}).get("value", 0)
        from_offset += len(hits)
        if from_offset >= total or from_offset >= 10000:  # EDGAR caps deep pagination
            break

    return all_hits


def fetch_form_d_submissions(cik: str) -> dict:
    """
    Fetch the submissions JSON for a given CIK from data.sec.gov.
    Returns the raw submissions dict including recent filings metadata.
    """
    cik_padded = cik.zfill(10)
    url = f"{EDGAR_BASE}/submissions/CIK{cik_padded}.json"
    resp = requests.get(url, headers=HEADERS, timeout=30)
    resp.raise_for_status()
    return resp.json()


def fetch_form_d_xml(accession_number: str, cik: str) -> str:
    """
    Download the primary XML document for a Form D filing from EDGAR.
    accession_number format: "0001234567-24-000001" or without dashes.
    """
    acc_clean = accession_number.replace("-", "")
    cik_padded = cik.zfill(10)
    url = (
        f"https://www.sec.gov/Archives/edgar/data/{cik_padded}"
        f"/{acc_clean}/primary_doc.xml"
    )
    resp = requests.get(url, headers=HEADERS, timeout=30)
    resp.raise_for_status()
    return resp.text


def parse_form_d_fields(xml_text: str) -> dict:
    """
    Extract key fields from Form D XML without a full XML parser.
    Covers the most analytically useful fields for bulk analysis.
    Returns a dict with normalized field names.
    """
    import re

    def extract(tag: str) -> str:
        m = re.search(rf"<{tag}>(.*?)</{tag}>", xml_text, re.DOTALL | re.IGNORECASE)
        return m.group(1).strip() if m else ""

    exemptions_raw = re.findall(
        r"<exemptionsRelied[^>]*>(.*?)</exemptionsRelied>", xml_text, re.DOTALL | re.IGNORECASE
    )

    return {
        "entity_name": extract("entityName"),
        "state_of_inc": extract("stateOrCountryDescription"),
        "industry_group": extract("industryGroupType"),
        "revenue_range": extract("revenueRange"),
        "investment_fund_type": extract("investmentFundType"),
        "exemption_type": " | ".join(exemptions_raw) if exemptions_raw else extract("rule506bOffering") or "",
        "date_of_first_sale": extract("dateOfFirstSale"),
        "total_offering_amount": extract("totalOfferingAmount"),
        "total_amount_sold": extract("totalAmountSold"),
        "total_investors": extract("totalNumberAlreadyInvested"),
        "security_type": extract("securityType"),
        "is_506b": "1" if "506b" in xml_text.lower() else "0",
        "is_506c": "1" if "506c" in xml_text.lower() else "0",
    }


def analyze_form_d_sample(records: list[dict]) -> None:
    """
    Run four analyses on a list of parsed Form D records (dicts from parse_form_d_fields):
      1. Top-10 states by VC-related filings
      2. Average offering size by exemption type (506b vs 506c)
      3. Monthly filing trend for the year
      4. Proportion using 506(c) general solicitation vs 506(b)
    """
    df = pd.DataFrame(records)

    # Coerce numeric columns
    for col in ["total_offering_amount", "total_amount_sold", "total_investors"]:
        df[col] = pd.to_numeric(df[col], errors="coerce")

    # -----------------------------------------------------------------------
    # 1. Top-10 states by VC-related filings
    # -----------------------------------------------------------------------
    vc_mask = df["investment_fund_type"].str.contains(
        "Venture", case=False, na=False
    )
    vc_df = df[vc_mask]
    state_counts = (
        vc_df.groupby("state_of_inc")
        .size()
        .sort_values(ascending=False)
        .head(10)
    )
    print("=== Top-10 States by VC-Related Form D Filings ===")
    for state, count in state_counts.items():
        print(f"  {state:<30} {count:>6,}")
    print()

    # -----------------------------------------------------------------------
    # 2. Average offering size by exemption type
    # -----------------------------------------------------------------------
    def exemption_label(row: pd.Series) -> str:
        if row.get("is_506c") == "1":
            return "Rule 506(c)"
        if row.get("is_506b") == "1":
            return "Rule 506(b)"
        return "Other (504 / no exemption)"

    df["exemption_label"] = df.apply(exemption_label, axis=1)

    avg_by_exemption = (
        df[df["total_offering_amount"] > 0]
        .groupby("exemption_label")["total_offering_amount"]
        .agg(["mean", "median", "count"])
        .sort_values("count", ascending=False)
    )
    print("=== Average Offering Size by Exemption Type ===")
    print(f"{'Exemption':<28} {'Count':>8} {'Mean ($M)':>12} {'Median ($M)':>13}")
    print("-" * 65)
    for label, row in avg_by_exemption.iterrows():
        print(
            f"  {label:<26} {row['count']:>8,.0f}"
            f" {row['mean']/1e6:>11.1f}"
            f" {row['median']/1e6:>12.1f}"
        )
    print()

    # -----------------------------------------------------------------------
    # 3. Monthly filing trend
    # -----------------------------------------------------------------------
    df["sale_month"] = pd.to_datetime(
        df["date_of_first_sale"], errors="coerce"
    ).dt.to_period("M")
    monthly = (
        df.dropna(subset=["sale_month"])
        .groupby("sale_month")
        .size()
        .sort_index()
    )
    print("=== Monthly Filing Trend (by date of first sale) ===")
    for period, count in monthly.items():
        bar = "#" * min(count // 20, 60)
        print(f"  {str(period):<10} {count:>6,}  {bar}")
    print()

    # -----------------------------------------------------------------------
    # 4. 506(c) vs 506(b) proportion
    # -----------------------------------------------------------------------
    n_506c = (df["is_506c"] == "1").sum()
    n_506b = (df["is_506b"] == "1").sum()
    n_other = len(df) - n_506c - n_506b
    total = len(df)
    print("=== General Solicitation Adoption (506c vs 506b) ===")
    print(f"  Rule 506(c) — general solicitation allowed:  {n_506c:>7,}  ({100*n_506c/total:.1f}%)")
    print(f"  Rule 506(b) — no general solicitation:       {n_506b:>7,}  ({100*n_506b/total:.1f}%)")
    print(f"  Other (Rule 504 / unspecified):              {n_other:>7,}  ({100*n_other/total:.1f}%)")
    print(f"  Total filings in sample:                     {total:>7,}")


# ---------------------------------------------------------------------------
# Example: fetch a month of Form D filings and analyze a synthetic sample
# (Full bulk analysis requires downloading and parsing individual XML files)
# ---------------------------------------------------------------------------
if __name__ == "__main__":
    print("Fetching Form D index for January 2024...")
    hits = fetch_form_d_index("2024-01-01", "2024-01-31")
    print(f"Index returned {len(hits):,} filing references")
    print()

    # For a real analysis, iterate over hits, extract CIK + accession number,
    # download each XML via fetch_form_d_xml(), and parse with parse_form_d_fields().
    # Below we demonstrate with a small synthetic sample mirroring real Form D data.

    sample_records = [
        {"entity_name": "Acme Ventures Fund III LP", "state_of_inc": "Delaware",
         "industry_group": "Technology", "investment_fund_type": "Venture Capital Fund",
         "is_506b": "1", "is_506c": "0", "total_offering_amount": "25000000",
         "total_amount_sold": "12000000", "date_of_first_sale": "2024-01-08",
         "total_investors": "12", "revenue_range": "No Revenues", "security_type": "Pooled Investment Fund Interests"},
        {"entity_name": "Meridian Real Estate Partners LLC", "state_of_inc": "Texas",
         "industry_group": "Real Estate", "investment_fund_type": "",
         "is_506b": "1", "is_506c": "0", "total_offering_amount": "8500000",
         "total_amount_sold": "7200000", "date_of_first_sale": "2024-01-15",
         "total_investors": "28", "revenue_range": "$1-5 Million", "security_type": "Equity"},
        {"entity_name": "Apex Hedge Fund LP", "state_of_inc": "Delaware",
         "industry_group": "Finance", "investment_fund_type": "Hedge Fund",
         "is_506b": "1", "is_506c": "0", "total_offering_amount": "0",
         "total_amount_sold": "0", "date_of_first_sale": "2024-01-22",
         "total_investors": "47", "revenue_range": "No Revenues", "security_type": "Pooled Investment Fund Interests"},
        {"entity_name": "BrightPath Biotech Inc", "state_of_inc": "California",
         "industry_group": "Health Care", "investment_fund_type": "",
         "is_506b": "0", "is_506c": "1", "total_offering_amount": "15000000",
         "total_amount_sold": "9000000", "date_of_first_sale": "2024-01-29",
         "total_investors": "8", "revenue_range": "No Revenues", "security_type": "Equity"},
        {"entity_name": "Summit Growth Equity Fund II LP", "state_of_inc": "California",
         "industry_group": "Technology", "investment_fund_type": "Venture Capital Fund",
         "is_506b": "1", "is_506c": "0", "total_offering_amount": "75000000",
         "total_amount_sold": "40000000", "date_of_first_sale": "2024-01-05",
         "total_investors": "22", "revenue_range": "No Revenues", "security_type": "Pooled Investment Fund Interests"},
    ]

    analyze_form_d_sample(sample_records)

The four analyses above illustrate the core analytical value of Form D data. The state breakdown for VC-related filings confirms the geographic concentration of venture capital: Delaware dominates as state of incorporation (nearly every fund vehicle incorporates there), but filtering by principal business state shifts the picture toward California, New York, and Massachusetts. The offering size comparison between 506(b) and 506(c) typically reveals that 506(c) filings skew toward larger offerings, because the verification burden is more easily absorbed by sophisticated issuers with institutional investor bases. The monthly trend is the most forward-looking signal: a spike in Form D filings three to six months before VC databases register a surge in deal activity reflects the 15-day filing lag and the time between initial close and press announcement. Using EDGAR as a near-real-time monitor of private market activity is the primary edge the dataset provides over commercially curated alternatives.

For the hospital payment data that represents a different corner of federal financial disclosure, see CMS Medicare Inpatient Provider Data: The Hospital-Level Payment Records Behind $170 Billion in Annual DRG Reimbursements, which covers how the IPPS prospective payment system determines what Medicare pays hospitals for each type of inpatient case and how to analyze geographic variation in charge-to-payment ratios.

For the pharmaceutical market structure context relevant to biotech private placements and life sciences VC, see FDA Orange Book: The Drug Patent and Exclusivity Database Behind Generic Drug Competition and Hatch-Waxman Challenges, covering the patent listings, therapeutic equivalence codes, and exclusivity periods that define the commercial runway for drug assets frequently financed through Regulation D exempt offerings.