Extract data from insurance policies
Drop an insurance policy PDF — auto, home, commercial, health, life — and get the structured fields a broker or claims team actually needs: insured, carrier, coverage limits, premium, effective dates, and the exclusions list.
What should we pull from this insurance policy?
Or pick specific fields
Or describe it yourself
Why this matters
Policies vary wildly by carrier and line of business: declaration pages, endorsements, exclusions sit in different places per document. ExtractFox reads end-to-end and returns the same stable schema regardless of carrier, so a brokerage's policy library becomes a queryable dataset. Renewal season means someone opens each PDF in a folder of 2,000 policies to check limits, premium, and named insureds — a task that doesn't scale when three carriers redesign their dec pages in the same quarter. COI requests need additional insured names and policy numbers pulled from 30-page commercial policies, and claims adjusters need exclusion lists fast but they're scattered across endorsements on pages 15–40.
How it works
- Step 1Upload the policy PDF
Declarations page only, or the full policy with endorsements. Multi-page works.
- Step 2Pick the policy type
Auto, homeowners, commercial general liability, professional liability, health, life — or describe the fields you need.
- Step 3Export to your AMS or Excel
JSON for AMS imports, .xlsx for a brokerage spreadsheet.
Common use cases
Sample output
Example: commercial general liability policy
| policy_number | CGL-2026-000482 |
| carrier | First Mutual Insurance Co. |
| named_insured | Acme Corp. |
| policy_type | Commercial General Liability |
| effective_date | 2026-01-01 |
| expiration_date | 2027-01-01 |
| premium_total | 18420 |
| currency | USD |
| coverage | {"each_occurrence":1000000,"general_aggregate":2000000,"products_completed_ops_aggregate":2000000,"personal_advertising_injury":1000000} |
| deductibles | {"per_claim":5000} |
- Beta Industries Inc.
- Asbestos
- Lead
- Cyber liability — see endorsement CYB-001
Frequently asked questions
How do I extract data from an insurance policy PDF?+
Upload the policy here, pick the policy type or describe the fields you need, then download as JSON or Excel. Coverage limits come back as numbers, dates in ISO format.
Does it parse endorsements and exclusions?+
Yes. Endorsements are returned as a separate list with name and effect, and exclusions are extracted as their own field. Use the description box to ask for verbatim exclusion text if you need it.
Will it work for policies from any carrier?+
Yes. There's no per-carrier template — the model recognizes the structure of insurance policies generally. Tested on major US, UK, and EU carriers across personal and commercial lines.
Can I diff two policy versions to see what changed?+
Run extraction on both PDFs and diff the JSON. Coverage limits, deductibles, exclusions, and named insureds come back in stable fields, so the diff highlights real changes — not formatting noise.
Is policyholder data safe to upload?+
Files are processed by ExtractFox's secure extraction engine and are not stored by ExtractFox. For PHI (health insurance) or other regulated data, contact us for a HIPAA-compliant or self-hosted deployment.
Can it extract data from a declarations page only, skipping the full policy booklet?+
Yes. Upload just the dec page — the model returns policy number, named insured, limits, premium, and effective dates without needing the full policy. For exclusions buried in endorsements, upload the complete policy or attach endorsement PDFs separately.
Does it handle umbrella and excess policies with underlying schedules?+
Yes. Umbrella and excess policies parse into the same schema — underlying policy schedules and follow-form provisions are captured in coverage limits and endorsements. Use the Endorsements sub-extraction if you need each underlying policy listed separately.