Extract loss runs to structured JSON

Loss runs are insurer-produced claim summaries used in quoting, renewals, and program reviews. The layout varies by carrier, often spanning multiple pages of claim tables. Sensible converts these into consistent JSON for underwriting, analytics, and broker workflows.

Why ACORD forms break standard OCR

Checkboxes, bundled applications, and legacy versions challenge general-purpose parsers.

Dense Checkbox Grids

We accurately distinguish between "X", "Checkmark", and empty boxes for fields like Additional Insured and Waiver of Subrogation.

Bundled Applications

Commercial submissions often combine ACORD 125, 126, and 140 in one PDF. We split and parse them individually.

Dense Checkbox Grids

Layouts shift slightly between revision years (e.g. 2010 vs 2016). We automatically detect the version and apply the correct map.

Fields we extract

Extract any data you need from loss runs into your desired output schema

Policy headers

Policy number, insured name, effective/expiration dates, carrier, line of business

Claim detail

Claim number, date of loss (DOL), cause, status (open/closed), paid, reserve, total incurred, coverage, location

Totals

Claim count, open count, paid total, reserve total, incurred total, frequency, severity


{ /* Sensible uses JSON5 to support in-line comments */
"fields": [
{
"method": {
"id": "queryGroup",
"queries": [
{
// Use natural language to describe the target data. This description is an LLM prompt
"id": "license_number",
"description": "driver's license number, DL, DLN",
// Apply pattern matching to ensure data quality, i.e. the drivers license must be a sequence of uppercase letters, digits, hyphens, and spaces that's at least 7 characters long
"type": {
"id": "custom",
"pattern": "[A-Z0-9\\- ]{7,}"
}
},
{
"id": "first_name_value",
"description": "first name of driver. sometimes found next to a label that reads FN or first name"
}
// Additional fields for address, DOB, physical characteristics, etc.
]
}
}

]
}
Travelers Loss Run

Travelers carrier format with per-occurrence claim detail and incurred totals.

Hartford Loss Run

Standard multi-page loss run format from The Hartford with claim tables and policy summaries.

Liberty Mutual Loss Run

Liberty Mutual format covering Workers Comp General Liability and Auto lines.

Zurich Loss Run

Zurich carrier loss run with large deductible and self-insured retention detail.

Chubb Loss Run

Chubb loss history report with open and closed claims, reserves, and payments.

AIG Loss Run

AIG format spanning commercial and specialty insurance lines.

Supported Loss Runs

Sensible can support any carrier's loss run, some of which can be found in Sensible's template library. Any loss run format can be custom built within a couple of hours.

Policy headers

Policy number, insured name, effective/expiration dates, carrier, line of business

Claim detail

Claim number, date of loss (DOL), cause, status (open/closed), paid, reserve, total incurred, coverage, location

Trusted by operations and engineering teams at

Common Questions

Specific details about our ACORD parsing engine.

Can Sensible handle multi-page loss runs?

Yes. Sensible processes loss runs of any length. Claim tables that span multiple pages are stitched together into a single structured output.

Does Sensible calculate claim aggregates from loss runs?

Sensible extracts totals when they appear on the document. You can also compute claim count, open count, paid total, reserve total, incurred total, frequency, and severity from the structured claim data.

Do you support webhooks?

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

What fields does Sensible extract from loss runs?

Sensible extracts policy number, insured name, effective dates, carrier, line of business, claim number, date of loss, cause, status, paid amounts, reserves, total incurred, and aggregate totals.

Does Sensible support human review?

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

Which insurance carriers' loss runs does Sensible support?

Sensible processes loss runs from any carrier. Pre-built templates cover major carriers including Hartford, Travelers, Liberty Mutual, Chubb, and AIG. Custom carrier formats can be configured in hours.

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?

Documents are deleted after 30 days by default. You can configure shorter retention periods or request immediate deletion via API.

Is there a free trial?

Yes. Sensible offers a free tier with 50 documents per month. 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 PDF, PNG, JPG, and TIFF files. PDFs can be native or scanned.

How accurate is the extraction?

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

How fast is document processing?

Most documents process in 2 to 10 seconds depending on complexity and page count.