OCR Insurance Policy Scans: Declarations and Endorsements
By Schema LawPublished Updated
To OCR an insurance policy scan so it reads as one contract, index it form by form before converting. Record each form's number, edition date and page range, proofread the declarations against the image, match the forms to the policy's own schedule, then map every endorsement to the wording it changes.
An insurance policy is a contract, and it is put together unlike other contracts. This post treats it as a document to be converted and organized. It does not say what any policy covers.
Why is a scanned insurance policy a stack of separate forms?
A scanned insurance policy is a stack of separate forms because the insurer assembles it from pre-printed parts: a declarations page for this insured, one or more coverage forms, endorsements that alter them, and notices. Each part has its own form number, its own page numbering and perhaps its own typeface, so the scan restarts again and again.
As the terms are commonly used, and subject to what your own policy calls its parts:
| Part | What it is | How it looks in a scan |
|---|---|---|
| Declarations | The pages specific to this insured and this period | Boxes and short tables with typed entries |
| Schedule of forms and endorsements | The policy's list of its own parts | A column of form numbers, edition dates and titles |
| Coverage form | The main printed terms for a line of insurance | Many pages of dense print, sometimes in two columns |
| Conditions or common provisions | Printed terms shared by several coverage parts | The same look as a coverage form |
| Endorsement | A page or more that changes the printed terms | A title, a line naming what it modifies, then text or a typed schedule |
| State-specific form | Changes tied to one state | An endorsement with a state's name in the title |
| Notices and jacket | Privacy notices, claim instructions, a cover | Varied; may carry no form number |
| Later-issued endorsements | Changes made during the period | Their own cover letter or change page, with a later date |
Three consequences follow for conversion.
Page numbers restart. A coverage form may be numbered "Page 1 of 16" and the endorsement after it "Page 1 of 2". A page number alone identifies nothing. The pair of form number and page number does.
Identity lives in the margins. The form number and edition date sit in a corner or footer in small type, which is where a feeder crops and where a Word export may discard text as page furniture.
The same title can appear twice. Two endorsements can share a title and differ in edition date or in their typed schedules. Only the number, the date and the typed entries tell them apart.
A defense firm receives the policy as one item among many in an assignment package, and the post on insurance defense OCR covers policy forms, endorsements and declarations pages as scans from that side. This post is about the policy as a contract set, for anyone who has to organize one.
Reading the declarations page: limits, policy period and named insureds
The declarations page is half table and half form, and it holds the facts no printed form contains: who is insured, for what period, at what limits. Convert it, then read every entry against the image and copy the entries into a declarations record with one row per fact.
What to capture
| Field | Notes for the proofreader |
|---|---|
| Policy number | Letters and digits mixed; a renewal may change only a suffix |
| Insurer | The company named, which may differ from the brand on the letterhead |
| First named insured | Exactly as typed, with "Inc." or "LLC" as shown |
| Other named insureds | May continue on a separate schedule page |
| Mailing address | Compare with the address on endorsements |
| Policy period | Both dates, and the time of day if stated |
| Each limit | The label and the amount as a pair |
| Each deductible or retention | The label and the amount as a pair |
| Premium | Total and any breakdown by coverage part |
| Forms schedule | Or a pointer to the page where it continues |
| Date the declarations were issued | Distinguishes an original from a reissued page |
Where recognition slips on this page
- Labels and amounts drift apart. A grid of six limits may come out as six labels followed by six amounts. Pair them from the image, by position.
- Amounts lose their scale. "1,000,000" and "100,000" differ by one character. Count the digit groups on the image for every limit.
- Dates reverse. A period printed as 04/01/2023 to 04/01/2024 is unambiguous only if you know the insurer's date order. Look for a month written as a word elsewhere in the policy to confirm it.
- "See schedule" hides a list. A named insured box that says "See Named Insured Schedule" sends you to another page. Find that page and convert it with the declarations.
- Entries are overprinted. Typed entries can sit slightly off their boxes or over a ruled line. Zoom in before trusting a character that touches a line.
- A box holds "Not Covered" or "Included". Those are entries. Record them as written and do not turn them into zero or blank.
The general technique for forms with labeled boxes is in the post on OCR for scanned forms, which explains how to keep an entry with its label.
From the declarations, copy the insured, the insurer, the policy limit, the deductible, and the premium, each paired with its label from the page image. Note whether you hold a claims-made policy or an occurrence policy. In the forms that follow, flag each endorsement and exclusion by number, and mark any duty to defend, duty to indemnify, or subrogation wording with its page.
More than one declarations page
A package policy can have a common declarations page and a separate one for each coverage part. A policy changed mid-term can have a reissued declarations page marked as amended or revised. Record each with its issue date and keep all of them. A later page does not make the earlier one disappear from the file, and which one applies on a given date is a question someone will ask.
Does the scanned policy match its schedule of forms and endorsements?
Test the scan against the policy's own schedule using two keys together, the form number and the edition date. A form is matched only when both agree. Record every listed form that is absent, every form present that is not listed, and every pair where the number agrees and the date does not.
The schedule of forms is a list the insurer printed when it issued the policy. Treat it as the insurer's statement of what the policy contains on that date, and your scan as evidence of what someone kept.
Build a two-sided index
Make one table with a row for every form on the schedule and every form in the scan. For the fictional policy issued by Northmere Mutual Insurance Company to Hollis & Vane Cold Storage, Inc., using made-up form numbers:
| Form number | Edition on schedule | Edition on scanned form | Title | Scan pages | Status |
|---|---|---|---|---|---|
| NM-D 100 | 01/20 | 01/20 | Common Declarations | 2 to 3 | Matched |
| NM-P 210 | 06/18 | 06/18 | Property Coverage Form | 6 to 21 | Matched |
| NM-P 244 | 03/19 | 09/16 | Spoilage Endorsement | 22 to 23 | Edition differs |
| NM-P 251 | 06/18 | None | Equipment Breakdown Endorsement | None | Listed, not in scan |
| NM-L 300 | 04/17 | 04/17 | Liability Coverage Form | 24 to 39 | Matched |
| NM-L 377 | Not listed | 11/21 | Additional Insured, Scheduled Person | 40 | In scan, not listed |
| None | Not listed | None | Privacy Notice | 41 to 42 | No form number |
Reading the four kinds of mismatch
Edition differs. The scan may hold a page from another year's policy that was filed in the wrong folder, or the schedule itself may have been misread. Check both the schedule entry and the form's corner on the image before reporting it. Small type in a form's corner is where recognition misreads a digit, and two policy years' papers can also be mixed in one folder.
Listed, not in scan. The form was part of the policy as issued and your copy lacks it. Ask whoever supplied the scan for the missing form, and ask the insurer or broker for a complete copy if that fails.
In scan, not listed. An endorsement dated after the schedule may have been added mid-term. Look for a change page or cover letter that issued it, and note the effective date it states. It may also belong to a different policy.
No form number. Notices and cover letters may have none. Index them by title so nothing in the scan is left unaccounted for.
Internal page counts as a second test
Each form's own "Page X of Y" footer gives a count. For every matched form, check that pages one through Y are all present and in order. A coverage form of 16 pages that occupies 15 scan pages has lost one, even though its number and edition matched the schedule. The wider subject of gaps in a contract scan belongs to the post on missing pages in a scanned contract.
What the test does not show
A clean match shows the scan agrees with the schedule. It does not show the schedule was right, or that no later endorsement exists. If the answer matters, ask for a copy the insurer certifies as complete.
Converting a policy so each form keeps its number and edition date
Convert the policy in a way that ties every page of text to the form it came from. Build the form index first, export a searchable PDF of the whole policy, then split or label the editable text by form, so that the number and edition date travel with every passage you later quote.
- Page through the scan and mark each first page. A new form starts where a title appears and the page numbering restarts. Note the scan page.
- Read the form number and edition date from the image. They are in a corner or footer. If a corner is cropped, look at the other pages of the same form, since the number repeats on each.
- Enter the form index. Number, edition, title, first and last scan page, internal page count.
- Make a searchable PDF of the whole scan. It keeps the page images, so the margins and typed entries stay visible, and it is the copy to cite.
- Add a bookmark for each form in your PDF software, labeled with number, edition and title.
- Export editable text. Use Word or plain text for the forms you will quote, and a table format for the declarations and any endorsement schedule.
- Check that the form identifiers survived the export. Search the Word file for one form number. If footers were dropped, type a heading line at the start of each form's text from the index.
- Name split files by form, for example
HV-2023_NM-P-244_03-19_spoilage-endorsement.docx. - Proofread what was typed for this insured, which means the declarations and each endorsement schedule. Then sample the printed forms.
Why a heading line matters
A passage copied from a converted coverage form into a memo carries no trace of its origin. If each form's text opens with a line such as "[Form NM-P 210, edition 06/18, scan pages 6 to 21]", anyone who copies from the file has the citation in view, and anyone who reads the memo can find the page.
Two-column print
Printed coverage forms may be set in two columns, so read one complete numbered section in the output to confirm the text runs down each column. The post on whether OCR can handle two-column documents explains what goes wrong and how to fix it.
If you use Schema Law for this, the homepage's description of how it works says each page is read into text and tables and shown page by page so you can check it against the original. The site says recognition is strongest on clean print and that nothing marks a passage as uncertain, so read the typed entries against the image yourself.
Which endorsement changes which policy wording?
Each endorsement says what it modifies, in a line near its top and in instructions such as "is replaced by" or "the following is added". Read those lines on the image and build a map with one row per change: the endorsement, the form it modifies, the section it names and the kind of change.
Where the link is stated
Look in four places on each endorsement:
- A line naming the coverage form or part. For example, "This endorsement modifies insurance provided under the following:" and then a title.
- The operative instructions. "Section IV, Condition 3 is deleted and replaced by the following", "The following exclusion is added", "Paragraph B.2. does not apply".
- The typed schedule. A named person, a location, a limit or a date that confines the change.
- An effective date, if the endorsement was issued after the policy began.
An endorsement map
| Endorsement | Edition | Modifies | Section named | Kind of change | Typed entries | Effective |
|---|---|---|---|---|---|---|
| NM-P 244 Spoilage | 03/19 | NM-P 210 Property Coverage Form | Additional Coverages | Adds text | Limit 250,000; location 2 | Policy inception |
| NM-L 377 Additional Insured | 11/21 | NM-L 300 Liability Coverage Form | Section II, Who Is An Insured | Adds text | Brightwater Logistics LLC | 15 Aug 2023 |
| NM-L 352 Amendment of Conditions | 04/17 | NM-L 300 Liability Coverage Form | Section IV, Condition 3 | Replaces text | None | Policy inception |
Checks that catch a broken link
- Does the section named exist in the form named? Open the converted coverage form and find "Section IV, Condition 3". If the form has no such section, the endorsement may have been written for a different edition of the form, which takes you to the edition column of your index.
- Do two endorsements touch the same section? Sort the map by form and section. Where two rows meet, record both and their effective dates.
- Is the typed schedule blank? An endorsement that says "as shown in the Schedule" with nothing typed may point to the declarations for its entries. Note where the entry was found, or that none was found.
- Does the endorsement name a form that is not in your index? That is another missing form.
When several endorsements change the same wording at different dates, the order matters. The method for putting contract amendments in the order they took effect applies to mid-term endorsements too. The map records what each endorsement says it does. How the changes interact, and what the policy then means, is coverage analysis for a lawyer.
Franchise agreements are altered by attached pages in a comparable way, through riders tied to particular states, and the post on OCR of a franchise agreement covers finding the rider that applies.
Assembling policies across several policy periods
To assemble policies across periods, give each policy its own folder and form index, then build one chart with a row per policy period showing insurer, policy number, dates, limits and the edition of each main form. The chart shows at a glance where a year is missing and where the wording changed at renewal.
A long-running matter can reach back over many renewals. Each renewal in the file has its own declarations page to record, and it may reuse the earlier coverage forms or bring in later editions. Nothing in one year's scan tells you what the next year's said.
A year-by-year chart
| Period | Insurer | Policy number | Liability limit, each occurrence | Liability form edition | Named insureds | Scan complete? |
|---|---|---|---|---|---|---|
| 1 Apr 2020 to 1 Apr 2021 | Northmere Mutual | NM-481120-00 | 1,000,000 | NM-L 300 (04/17) | Hollis & Vane Cold Storage, Inc. | Yes |
| 1 Apr 2021 to 1 Apr 2022 | Northmere Mutual | NM-481120-01 | 1,000,000 | NM-L 300 (04/17) | Same | Declarations only |
| 1 Apr 2022 to 1 Apr 2023 | Northmere Mutual | NM-481120-02 | 2,000,000 | NM-L 300 (02/22) | Adds HV Transport LLC | Yes |
| 1 Apr 2023 to 1 Apr 2024 | Castellane Indemnity | CI-77-20914 | 2,000,000 | CI-GL 10 (01/23) | Same as prior year | Two forms missing |
Every cell comes from a declarations record or a form index, and each should carry its scan page in a companion sheet.
What the chart makes visible
- Gaps and overlaps in dates. One period should end when the next begins. A gap may be a missing policy or a real lapse, and the chart cannot tell you which.
- A change of insurer. The form numbers change with it, so each insurer's forms need their own index.
- A change of edition. The 2022 row shows a later edition of the liability form. Comparing the two editions' converted text shows what moved, and the post on how to compare two scanned contracts gives the method.
- A change in who is insured. An added or dropped named insured appears as a difference between rows.
- Incomplete years. "Declarations only" tells the reader not to quote policy wording for that year from a neighboring year's forms without saying so.
Keeping the periods apart
Do not merge several years into one PDF. Policy numbers that differ only in a suffix, and forms that share a number across years, make a combined file easy to misquote. Keep one folder per period, named with the period's start date so the folders sort in time:
2020-04-01_NM-481120-00/
2021-04-01_NM-481120-01/
2022-04-01_NM-481120-02/
2023-04-01_CI-77-20914/Put the chart one level up from those folders, with a note of its date and who prepared it. When an older policy turns up later in a storage box, it gets a folder and a row, and the chart shows straight away which gap it fills.