How to Batch Fill ACORD 25 Certificates from Excel (2026 Guide)
To fill ACORD 25 certificates from Excel, download the official fillable ACORD 25 PDF, install Power PDF Filler from Microsoft AppSource inside Excel, map your policy spreadsheet columns (insured, producer, certificate holder, each insurer A–F, policy numbers, effective and expiration dates, and coverage limits) to the matching ACORD 25 fields, save the mapping as a reusable template, and click Ready, Go. Every row in your spreadsheet becomes one completed Certificate of Liability Insurance — an agency can generate hundreds of COIs in minutes instead of typing each one by hand. In modern browsers the data is processed entirely client-side, so policy data never leaves your computer.
Why ACORD 25 eats so much of an agency’s time
The ACORD 25 — the Certificate of Liability Insurance, or COI — is the single most-requested document in commercial insurance. Every contractor onboarding a subcontractor, every landlord vetting a tenant, every lender closing a loan asks for one. An agency does not issue a handful of ACORD 25s a year; a mid-size commercial book produces them constantly, and renewal season turns the trickle into a flood.
The form itself is deceptively heavy. A single ACORD 25 carries roughly 60 fillable fields: the producer block, the insured block, up to six insurers (A through F), and for each policy a carrier, policy number, effective date, expiration date, a row of checkboxes (ADDL INSD, SUBR WVD), and a stack of limits — Each Occurrence, Damage to Rented Premises, Medical Expense, Personal & Advertising Injury, General Aggregate, Products-Completed Operations Aggregate, Combined Single Limit, and more. Then there is the Description of Operations free-text box and the certificate holder block.
Do the math on a renewal cycle. An agency with 300 commercial policies renewing in a quarter, each needing a fresh certificate, is staring at roughly 18,000 individual field entries. At a realistic two to three minutes per certificate of careful typing and double-checking, that is 10–15 hours of pure data entry — for one quarter, on one product line, assuming nothing has to be reissued because a limit was transposed.
The data, meanwhile, already exists in structured form. It lives in your agency management system and almost always exports cleanly to Excel. The problem is not that you lack the data; it is that re-keying it into a PDF, one certificate at a time, is slow and error-prone. Batch filling closes that gap: you map the spreadsheet to the form once and let every row generate its own certificate.
What you need before you start
Three things, and only the first one is non-obvious:
- A fillable ACORD 25 PDF. This is a PDF with real interactive form fields, not a scanned image or a flat print. Most management systems — Applied Epic, Vertafore AMS360, HawkSoft, EZLynx, NowCerts — ship the current fillable ACORD 25 as a built-in template, and you can obtain the official form from acord.org with an ACORD Forms subscription. If all you have is a scan, it has no fields to map and must be converted to a fillable PDF first.
- Your policy data in Excel. One row per certificate, exported from your management system or maintained in a working spreadsheet.
- Power PDF Filler, the Microsoft Excel add-in that maps spreadsheet columns to PDF form fields and generates one filled PDF per row. It installs from Microsoft AppSource with a 30-day free trial.
How to structure your Excel spreadsheet
The mapping is only as clean as your spreadsheet. Use one row per certificate and one column per ACORD 25 field. A workable column layout looks like this:
| Spreadsheet column | Maps to ACORD 25 field | Notes |
|---|---|---|
producer_name, producer_address | Producer block | Often the same on every row — still keep a column |
insured_name, insured_address | Insured block | Full legal name as it appears on the policy |
naic | NAIC code | Per insurer if you track multiple carriers |
insurer_a … insurer_f | Insurers Affording Coverage | Carrier name per letter |
gl_policy_no, gl_eff, gl_exp | General Liability section | Dates as MM/DD/YYYY |
gl_each_occurrence, gl_gen_aggregate | GL limits | Whole-dollar amounts |
auto_policy_no, auto_csl | Automobile Liability | Combined Single Limit |
umbrella_policy_no, umbrella_each_occ | Umbrella / Excess | |
wc_policy_no, wc_el_each_accident | Workers’ Compensation | |
addl_insd_gl, subr_wvd_gl | Checkboxes | TRUE/FALSE per policy |
description_of_operations | Description box | Free text |
holder_name, holder_address | Certificate holder | The party receiving the COI |
A few formatting rules save reissues later:
- Dates should be consistent —
MM/DD/YYYYmatches what most ACORD 25 PDFs expect. - Limits are whole-dollar amounts. Decide whether you want
$1,000,000or1000000and standardize the whole column. - Checkboxes get their own TRUE/FALSE (or Yes/No, or 1/0) columns so you can turn additional-insured status on for one holder and off for another within the same batch.
Step by step: filling ACORD 25 from Excel
1. Open your spreadsheet and the add-in
Open your policy workbook in Excel and launch Power PDF Filler from the Home tab ribbon. If it is not there, go to Insert → Get Add-ins, search “Power PDF Filler,” and add it.
2. Select the fillable ACORD 25
In the task pane, click Select and choose your fillable ACORD 25 PDF. The add-in parses the file and lists every detected form field. ACORD’s internal field names can be cryptic, but you map them visually, so the names do not matter.
3. Select your data and map the fields
Highlight your data range in the spreadsheet — header row included — then match each ACORD 25 field to its column. Map the insured block, the producer block, each insurer letter and its policy details, every limit, the checkboxes, and the description of operations. The first mapping for a 60-field certificate takes 10–15 minutes; you do it once.
4. Save the mapping as a template
Click Save Template and name it something durable like “ACORD 25 — Commercial GL 2026.” Next renewal cycle, a fresh export with the same column headers loads the template and restores the entire mapping instantly. Templates can also be shared with colleagues so every producer in the agency issues certificates with the same field mapping.
5. Preview one, then generate the batch
Preview a single certificate before running the full batch. Confirm the limits land in the right rows, the ADDL INSD / SUBR WVD boxes tick correctly, dates are formatted as expected, and the description text fits its box. When it looks right, click Ready, Go — Power PDF Filler produces one completed ACORD 25 per row, packaged in a ZIP for printing, emailing, or filing in your management system.
Handling the parts that trip people up
Checkboxes per certificate. The ADDL INSD and SUBR WVD boxes are the most common source of confusion. Map them to TRUE/FALSE columns rather than hard-coding them, so a holder that requires additional insured status on the General Liability policy gets the box ticked while others stay blank — all in one batch.
Multiple insurers. A real commercial account often spreads coverage across several carriers. Keep a column per insurer letter (A–F) and per policy section so each row can reflect a different carrier mix without remapping.
Description of Operations. This free-text box frequently carries holder-specific language (“Certificate holder is named as additional insured per written contract…”). Keep it in its own column so each certificate carries the right wording.
Effective vs. expiration dates. Transposed or stale dates are the number-one reason a certificate gets rejected and reissued. Pull dates straight from your management-system export rather than retyping, and the batch inherits whatever the system already validated.
How this compares to API and portal tools
If you search for ways to fill ACORD 25 at scale, you will mostly find developer-oriented services — Anvil and WinsurTech’s Glow API, for example — that fill the ACORD 25 by sending policy data as JSON to a REST endpoint. Those are powerful if you have an engineering team and want certificate generation wired into a custom application.
Most agencies do not work that way. Their data lives in Excel or exports to it, and they want to generate certificates without writing code or paying for a developer integration. That is the gap Power PDF Filler fills: the mapping happens visually inside Excel, the only “integration” is a spreadsheet you already maintain, and there is no per-API-call billing. For an agency that thinks in spreadsheets rather than JSON payloads, the Excel-native workflow is the shorter path.
For the full field reference and an account-by-account breakdown, see the dedicated Batch Fill ACORD 25 form page. If you also issue evidence of property insurance, the same workflow covers the ACORD 28 form. And for the broader picture of automating agency paperwork, see insurance use cases.