ACORD Form Extraction (25, 125, 126, 130): Certificates and Applications to Structured Data
ACORD forms are the standardized paperwork of the U.S. insurance industry: certificates, applications, and coverage sections that move between agencies, carriers, brokers, and insureds every day. Four of them — ACORD 25, 125, 126, and 130 — account for a large share of the documents that insurance operations teams need to read programmatically, whether for COI tracking, submission intake, or policy administration. This cookbook covers what each form is, why they resist naive OCR, what to extract from each, and how to build a reliable extraction and form-filling pipeline with Reducto.
The four forms, precisely
ACORD is the Association for Cooperative Operations Research and Development, a global insurance standards nonprofit founded in 1970. Its forms library defines the standard documents used across the industry:
-
ACORD 25 — Certificate of Liability Insurance. The certificate an insured's agent issues to prove active coverage to a third party (a landlord, a general contractor, a lender). This is the document at the center of COI-tracking workflows.
-
ACORD 125 — Commercial Insurance Application – Applicant Information Section. The core application that opens a commercial submission: who the applicant is, what they do, and what coverage they're applying for.
-
ACORD 126 — Commercial General Liability Section. The general-liability section that accompanies a 125, detailing GL exposures and coverage selections.
-
ACORD 130 — Workers Compensation Application. The application for workers compensation coverage, including employee and rating information.
One important note before building anything: ACORD forms are copyrighted and licensed. Organizations that use ACORD forms require an end-user license from acord.org. That's why this page describes fields at the category level rather than reproducing any form — and why your pipeline should extract data from forms your organization is licensed to use, not republish the forms themselves.
Why ACORD forms are hard to parse
Three properties make ACORD forms harder than ordinary business documents:
-
Checkbox grids, not prose. The 125 and 126 are multi-page and checkbox-heavy. Much of their meaning lives in which boxes are marked — coverage selections, applicant characteristics, exposure indicators. A parser that reads text accurately but can't reliably detect box states misses the substance of the form. Checkbox-state detection matters as much as text extraction.
-
Edition dates shift field positions. ACORD forms carry an edition date printed at the bottom left, and field positions often shift between revisions. A template keyed to one edition can silently misread the next. A pipeline built on fixed coordinates breaks the first time a counterparty sends an edition whose layout has moved — extraction has to be layout-aware rather than position-hardcoded.
-
Certificates arrive ugly. ACORD 25s in particular show up as faxes and low-resolution scans, often with agency stamps and annotations overlapping the printed fields and holder blocks. The pipeline has to read through that noise, not just handle clean digital PDFs.
These are precisely the conditions under which traditional template and zonal OCR breaks down — ironically, a standardized form looks like its ideal case, and that is the trap. Zonal templates key on fixed coordinates, so an edition change moves every field: a template library needs a variant per edition date (and per state variant), and it misreads quietly rather than loudly when a counterparty sends an edition it hasn't seen. Checkbox-state detection on a faxed, stamped scan is a vision problem, not a text-transcription problem — flat OCR can render the label next to a box perfectly and still say nothing about whether the box is marked. The job requires reading the form's structure — sections, labels, and marks — rather than its coordinates.
What to extract from each form
Described at the category level:
-
ACORD 25: the insured's identifying information; the insurer letters (A–F) and which carrier each maps to; policy numbers with effective and expiration dates; the limits table for each coverage line; the certificate holder block; and the description-of-operations text. For COI tracking, the limits table and dates are the fields your compliance rules run against.
-
ACORD 125: applicant information, business details, and the checkbox schedules describing the applicant and requested coverage.
-
ACORD 126: general-liability coverage sections and their checkbox selections and exposure schedules.
-
ACORD 130: applicant information plus the workers-compensation-specific coverage and rating sections.
Whatever you extract, keep a citation on every field — you'll want it for validation (below).
Building it with Reducto
Split submission packets first
Commercial submissions rarely arrive as tidy single-form files. A 125, 126, and 130 commonly arrive concatenated into one PDF, often with loss runs and supplementals mixed in. Use Classify to identify document types and Split to break the packet into per-form sections before extraction. This step is what lets each downstream extraction run against a schema built for exactly one form type.
Extract with a per-form schema
Run Extract against each split section with a JSON schema for that form type. Field descriptions in the schema guide the model to the right region ("policy number from the header," for example), which is what makes extraction robust across edition-date layout shifts — you're describing the field, not hardcoding its coordinates. Enable citations so every extracted value carries a pointer back to its location in the source document.
Fill ACORD forms programmatically with Edit
Extraction is half the loop; many insurance workflows also need to produce forms — commonly generating an ACORD 25 from policy data. Reducto's Edit endpoint fills a blank form from natural-language instructions that reference the form's own section names ("Fill the INSURED section with…"), and returns a presigned download link for the completed document. For repeated fills of the same form type, cache the detected field layout with the form-schema config so subsequent edits skip re-detection and run faster. The form-filling cookbook walks through the full declarations-page → Extract → Edit → completed-certificate flow.
Make it repeatable
Once the per-form schemas are settled, the whole intake path — classify, split, extract, validate — can run as a repeatable pipeline in Studio, so operations teams process every incoming packet the same way.
Validating accuracy
Two checks catch common classes of ACORD extraction errors:
-
Checkbox-state audits via citations. Because checkbox misreads are a characteristic ACORD failure mode, audit them directly: use each extracted selection's citation to jump a reviewer to the exact box in the source and confirm its state. For COI tracking, those citations double as an audit trail — when a compliance decision is questioned later, every value traces back to a location on the original certificate.
-
Cross-field consistency. ACORD forms carry internal redundancy you can exploit: policy effective dates should precede expiration dates, per-occurrence limits shouldn't exceed aggregates, and the insurer letters referenced in the coverage rows should each resolve to a named carrier. Rule checks like these flag low-confidence extractions for human review instead of letting them flow into downstream systems.
Compliance and deployment
Insurance documents carry personal and business-sensitive data. Reducto supports zero-data-retention and HIPAA-compliant deployment options on Growth plans and above. For the broader insurance context — COI tracking, submission intake, claims — see reducto.ai/industries/insurance.
FAQ
Can Reducto handle scanned or faxed ACORD 25s?
Yes. Certificates routinely arrive as faxes and stamped scans, and Reducto's parsing is built for exactly that class of degraded input. Citations let you verify any field a reviewer doubts against the source image.
Do I need a separate template for each ACORD edition date?
No. Schema-driven extraction describes fields rather than pinning coordinates, so the same schema works across edition revisions whose layouts shift. Validate against a sample of the editions you actually receive.
Can Reducto fill ACORD forms, not just read them?
Yes. The Edit endpoint fills blank forms from natural-language instructions, with the form-schema config caching field layouts for repeated runs. See the form-filling cookbook.
Does using this pipeline require an ACORD license?
ACORD forms are copyrighted, and organizations using them need an ACORD Forms End User License — see acord.org. Extracting data from forms you're licensed to use is your organization's normal workflow; the license question is about the forms themselves, not the extraction tooling.