Extract summaries of benefits to structured JSON

Summary of Benefits and Coverage (SBC) documents standardize how health plans present coverage details. While federally mandated, carrier implementations vary in layout and terminology. Sensible turns SBCs into structured JSON for plan comparison, benefits administration, and enrollment.

Why SBC documents need specialized extraction

Despite a standardized federal template, carriers vary in visual layout, table structure, and how they express cost-sharing details. Hybrid extraction handles the variation while enforcing consistent output.

Coverage Category Tables

Primary care, specialist visits, ER, hospitalization, prescriptions: SBCs list cost-sharing for dozens of categories. Each one is extracted with its copay, coinsurance, and any limits or conditions attached.

In-Network vs. Out-of-Network Parsing

Every service row has separate in-network and out-of-network costs. Some carriers use columns; others use alternating rows. The extraction config captures both regardless of visual presentation.

Limitation and Exclusion Sections

Excluded services and coverage limitations appear as text blocks, not structured fields. LLM parsing identifies these sections and extracts the specific services and conditions mentioned.

Fields we extract

Default fields cover plan comparison use cases. Configure the schema for your benefits administration workflow.

Plan overview

Plan name, plan type (HMO/PPO/EPO/POS), coverage period, deductible (individual/family), out-of-pocket maximum, copay/coinsurance structure

Covered services

Service category, in-network cost sharing, out-of-network cost sharing, deductible applies (yes/no), prior authorization required, visit limits

Exclusions and limitations

Excluded services list, coverage limitations, prescription formulary tier structure, prior authorization requirements


{ /* SenseML: Summary of Benefits and Coverage extraction */
"fields": [
{
"method": {
"id": "queryGroup",
"queries": [
{
// Plan name
"id": "plan_name",
"description": "plan name, coverage name, health plan"
},
{
// Annual deductible
"id": "annual_deductible",
"description": "annual deductible, individual deductible, in-network deductible",
"type": { "id": "currency" }
},
{
// Out-of-pocket maximum
"id": "out_of_pocket_max",
"description": "out-of-pocket maximum, OOP max, out of pocket limit",
"type": { "id": "currency" }
},
{
// Primary care copay
"id": "pcp_copay",
"description": "primary care visit cost, PCP copay, office visit copay",
"type": { "id": "currency" }
}
// Additional fields for specialist copay, ER cost, Rx tiers, etc.
]
}
}
]
}
Vision Plan Summary

Summary of vision coverage including exam, frames, and lens benefits.

Dental Plan Summary

Summary of dental coverage including preventive, basic, and major services.

Individual Health Plan SBC

SBC for individual marketplace health insurance plans.

Group Health Plan SBC

Summary of Benefits and Coverage for employer-sponsored group health plans.

Supported SBC formats

Sensible's healthcare template library includes SBC configurations for major carriers. The hybrid approach adapts to each carrier's visual layout while enforcing consistent output.

By plan type

Group health plans (employer-sponsored), individual marketplace plans (ACA), Medicare Advantage, dental, vision

By carrier

UnitedHealthcare, Anthem, Aetna, Cigna, Humana, BCBS affiliates, Kaiser, regional health plans

Trusted by operations and engineering teams at

Common Questions

Answers about SBC parsing, plan comparison, and cost-sharing extraction.

Can Sensible compare health plans from SBC documents?

Yes. Sensible outputs SBC data in a consistent schema. You can compare copays, deductibles, out-of-pocket maximums, and covered services across plans programmatically.

What cost-sharing details does Sensible extract from SBCs?

Sensible captures deductibles, copays, coinsurance, out-of-pocket maximums, and coverage percentages for both in-network and out-of-network services.

Does Sensible extract covered services from SBCs?

Yes. Sensible extracts the cost-sharing structure for each covered service category including primary care visits, specialist visits, emergency room, hospitalization, prescription drugs, and more.

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.