Extract SEC filings to structured JSON

SEC filings contain financial statements, risk disclosures, and business descriptions in structured form. Formats mix narrative with complex tables. Use Sensible to get structured data from 10-Ks, 10-Qs, and other filings for analysis and compliance.

Why SEC filings challenge extraction tools

Long documents with mixed narrative and tabular content make automated SEC extraction difficult.

Financial Table Extraction

Subtotals, parenthetical negatives, footnote references: financial tables in SEC filings have complex layouts. The extraction preserves the hierarchical structure, with line items, subtotals, and totals all mapped to the correct level.

Narrative Section Parsing

10-K filings contain pages of risk factors and business descriptions in dense prose. LLM parsing identifies relevant sections and extracts key data points. SenseML rules ensure the output conforms to your schema.

Multi-Period Comparison

Current year, prior year, sometimes three or more periods side by side. Each period's values are extracted separately with the correct year label. No manual column alignment needed.

Fields we extract

Configure the extraction schema to match your financial analysis pipeline.

Filing metadata

Company name, CIK number, filing type, filing date, reporting period, auditor name, fiscal year end

Financial data

Revenue, net income, total assets, total liabilities, shareholders equity, EPS, cash from operations, and all line items from financial statements

Risk and business

Risk factor descriptions, business segment revenue, geographic revenue, executive compensation, related party transactions


{ /* SenseML: SEC filing extraction */
"fields": [
{
"method": {
"id": "queryGroup",
"queries": [
{
// Company name
"id": "company_name",
"description": "registrant name, company name, issuer"
},
{
// CIK number
"id": "cik_number",
"description": "CIK, central index key, CIK number",
"type": {
"id": "custom",
"pattern": "[0-9]{7,10}"
}
},
{
// Total revenue
"id": "total_revenue",
"description": "total revenue, net revenue, total net revenue",
"type": { "id": "currency" }
},
{
// Filing date
"id": "filing_date",
"description": "filing date, date filed, filed as of",
"type": { "id": "date" }
}
// Additional fields for net income, total assets, EPS, etc.
]
}
}
]
}
Annual Financial Statement

Audited annual financial statements with balance sheet, income, and cash flow.

Form 10-Q

Quarterly report with unaudited financials and management discussion.

Form ADV

Investment adviser registration and disclosure document.

Form 10-K

Annual report with audited financial statements, risk factors, and business overview.

Supported filing types

Sensible processes 10-Ks, 10-Qs, Form ADVs, and other SEC filing types. Hybrid extraction handles both the tabular financial data and the narrative sections within each filing.

Annual and quarterly

Form 10-K (annual report), Form 10-Q (quarterly report), annual financial statements, proxy statements

Registration and disclosure

Form ADV (investment adviser), Form S-1 (registration), Form 8-K (current report), Form DEF 14A (proxy)

Trusted by operations and engineering teams at

Common Questions

Answers about SEC filing types, financial table parsing, and multi-period extraction.

Does Sensible handle XBRL data in SEC filings?

Sensible focuses on extracting data from the rendered PDF version of SEC filings. For XBRL-native data, direct XBRL parsing tools may be more appropriate.

Which SEC filing types does Sensible support?

Sensible can be configured to extract from 10-K annual reports, 10-Q quarterly reports, Form ADV, and other financial statements. A pre-built balance sheet template is available for 10-K filings, and custom configurations for other filing types can be set up quickly.

Can Sensible extract financial tables from SEC filings?

Yes. Sensible extracts balance sheets, income statements, and cash flow tables with line items, amounts, and period labels preserved in structured arrays.

Do you support webhooks?

Yes. Sensible sends extraction results to your webhook endpoint when processing completes. You can also poll the API for status.

Does Sensible support human review?

Yes. Sensible flags extractions with low confidence for human review. You can configure review thresholds and workflows.

What security certifications does Sensible have?

Sensible is SOC 2 Type II certified and HIPAA compliant. Data is encrypted in transit and at rest.

How long is document data retained?

Document data is stored indefinitely by default. Custom retention policies are available and can be configured for same-day deletion if needed.

Is there a free trial?

Yes. Sensible offers a 14-day free trial on the Growth plan. No credit card required to start.

How is pricing structured?

Sensible uses per-document pricing for predictable costs. No token-based billing or usage surprises. Volume discounts are available for higher throughput.

How do I integrate with Sensible?

Sensible provides REST APIs and SDKs for Python and Node.js. Most integrations take a few hours. Webhooks, Zapier, and direct API calls are all supported.

What file formats does Sensible support?

Sensible processes PDFs (native or scanned), Microsoft Word (DOC, DOCX), spreadsheets (XLSX, XLS, CSV), single-page images (JPEG, PNG), multi-page images (TIFF), and email bodies with attachments.

How accurate is the extraction?

Accuracy depends on document quality and configuration. Most production deployments achieve 95%+ accuracy with proper validation rules and confidence signals.

How fast is document processing?

Processing speed depends on document size, page count, OCR requirements, and which extraction methods are used. Simple single-page documents process in seconds. Larger or more complex documents that use LLM-based extraction take longer.