CG 25 03 vs CG 25 04: Per Project Aggregate Endorsement

Jul 11, 2026 Last updated August 2026

Read any certificate of insurance in seconds. Upload an ACORD 25 and the AI pulls the insurer, policy numbers, limits, dates and endorsement status into structured data.

PDF, JPG, PNG, BMP, HEIC, TIFF

Upload your certificates of insurance

Last updated August 2026.

A per project aggregate endorsement (ISO form CG 25 03) gives each designated construction project its own separate general aggregate limit, so claims on one job cannot erode the coverage available on another. Without it, a subcontractor carries a single general aggregate shared across every project it works all policy year, and a bad claim on someone else job can quietly exhaust the limit protecting yours. General contractors require it, and its close cousin CG 25 04 does the same thing per location.

The general aggregate is the most misunderstood number on a certificate of insurance. A limit that reads two million general aggregate looks comfortable until you learn it is shared across every project the insured touched that year. The per project aggregate endorsement fixes that, and knowing how to read it for on a certificate is a core skill for anyone verifying subcontractor insurance.

What is a per project aggregate endorsement?

A per project aggregate endorsement amends a commercial general liability policy so the general aggregate limit applies separately to each construction project listed or, on a blanket basis, to every project. The endorsement resets a fresh general aggregate for each job equal to the policy general aggregate. If a subcontractor has a two million general aggregate and the CG 25 03 endorsement, your project gets its own two million that other projects cannot spend down.

Why do general contractors require a per project aggregate?

Because a shared aggregate is a limit you do not control. A subcontractor on your job is also working five other jobs, and a large claim on any of them draws down the same general aggregate. By the time a loss hits your project, the limit could be partly or fully gone. Requiring a per project aggregate guarantees your job has its own dedicated limit for the life of the work, which is why it appears in most construction insurance exhibits alongside additional insured and waiver of subrogation.

CG 25 03 vs CG 25 04: what is the difference?

Both forms are also written without spaces in everyday use, so cg2503 and cg2504 refer to exactly the same ISO endorsements. The ISO form numbers are CG 25 03 (Designated Construction Project(s) General Aggregate Limit) and CG 25 04 (Designated Location(s) General Aggregate Limit), and the edition date printed after the number tells you which version of the wording applies.

Both endorsements create separate general aggregate limits, but they slice coverage differently. CG 25 03 applies a separate aggregate to each designated construction project, which is what general contractors usually want. CG 25 04 applies a separate aggregate to each designated location owned by or rented to the insured, which fits owners and tenants with multiple premises more than a project based contractor.

FeatureCG 25 03CG 25 04
Full nameDesignated Construction Project(s) General Aggregate LimitDesignated Location(s) General Aggregate Limit
Separate aggregate applies toEach construction projectEach owned or rented location
Best fitContractors and subcontractors on jobsitesOwners and tenants with multiple premises
Applies to ongoing operationsYesYes
Affects products-completed operations aggregateNoNo

Neither endorsement changes the separate products-completed operations aggregate, which is handled by other forms such as CG 25 46 for designated locations.

How do you verify a per project aggregate on a certificate of insurance?

Look past the limits box. The general aggregate figure on an ACORD 25 does not tell you whether it is shared or per project, so you have to confirm the endorsement is actually attached. Request a copy of the CG 25 03 endorsement, check that your project is scheduled or that the form is written on a blanket basis, and confirm the edition date and policy number match the certificate. This is the same discipline that applies to every endorsement form on a policy, as explained in additional insured endorsements explained. AI powered certificate of insurance verification reads the endorsement forms alongside the certificate so a missing or mismatched per project aggregate is flagged rather than assumed.

Per project aggregate endorsement ISO form

The ISO form numbers are CG 25 03 for a designated construction project and CG 25 04 for a designated location. Neither is part of the standard commercial general liability coverage form, so both have to be attached to the policy by endorsement and both cost the insured something. That is why a subcontractor who says the aggregate is per project is not always right: the belief is common, the endorsement is not automatic.

You confirm it the same way you confirm any ISO endorsement. Ask for the endorsement page itself, not the certificate. The page is headed THIS ENDORSEMENT CHANGES THE POLICY. PLEASE READ IT CAREFULLY, and the form number prints in the top right corner with the edition date beside it, then repeats in the footer next to the ISO copyright line. The schedule on the form is where the designated projects or locations are listed, and that schedule is the part worth reading closely.

Two schedule problems account for most failures. The first is a blank schedule, which on some editions defaults to all projects and on others leaves you with nothing designated at all. The second is a schedule naming a project that is not yours, which happens when a subcontractor reuses an endorsement obtained for a different general contractor. Both look identical on a certificate, because the ACORD 25 has no field for either.

If your contract needs to demand this, name the outcome rather than only the form: a separate general aggregate limit applying to the project covered by this agreement, evidenced by ISO form CG 25 03 or its equivalent, current edition. Naming an edition date locks you to a version that may no longer be issued, which is the same trap contracts fall into when they demand a CG 20 10 11 85 edition that carriers stopped writing decades ago.

Does a per project aggregate cost the subcontractor more?

Sometimes, because the insurer is effectively multiplying the aggregate limit across projects, but the added premium is usually modest compared with the protection it buys the project owner. Many contractors carry it by default because so many contracts demand it. From the general contractor side, the cost is not your concern; what matters is that the endorsement is on the policy and covers your job, and that you verified it rather than trusting the limits box.

What is a shared aggregate and why is it risky?

A standard commercial general liability policy carries one general aggregate that caps the total the insurer will pay for covered claims during the policy period, across everything the insured does. For a subcontractor running a dozen jobs, that single limit is spent down by claims on any of them, in the order they are paid. A project you verified in January with a full two million aggregate could have far less left by the time a loss hits in October, and nothing on the certificate warns you. That invisible erosion is the exact risk the per project aggregate endorsement removes.

Blanket vs scheduled per project aggregate

A per project aggregate endorsement can be written two ways. A scheduled version lists specific projects, so you must confirm your job is named on the schedule. A blanket version applies a separate aggregate to every project the insured works, so any job qualifies automatically. Blanket is stronger for a general contractor because it does not depend on the subcontractor remembering to add your project to a list. When you request the endorsement, check which form you are looking at, and if it is scheduled, confirm your project actually appears.

Where the per project aggregate appears in a contract

You will usually find it in the insurance exhibit or requirements section of a subcontract, listed alongside minimum limits, additional insured on ongoing and completed operations, primary and noncontributory wording, and waiver of subrogation. Those clauses travel together, and the full set is broken down in subcontractor certificate of insurance requirements. Contract language often reads something like general aggregate to apply per project. That single line is your instruction to verify the CG 25 03 endorsement is attached, not just to check the aggregate number in the limits box.

Track the endorsement, not just the limit

The aggregate endorsement is one of several forms that decide whether the coverage on a certificate is real, alongside the additional insured endorsement forms that grant you status in the first place. Tracking a limit is easy. Tracking which forms are attached, at which edition, across every vendor and every renewal, is the part that fails without a system.

A per project aggregate is only useful if it is really attached and still in force, which is exactly the kind of check that slips during a busy onboarding. COI tracking for general contractors reads every subcontractor certificate and endorsement, confirms the per project aggregate, additional insured and waiver of subrogation are present, and reminds you before any policy lapses. Upload a certificate to COISoftware and see it read in seconds on a free trial. Our reference table of certificate of insurance endorsements lists every ISO form that turns up in the same box, including the four that reduce coverage rather than add it. Pulling the endorsement forms off each policy is the same document data extraction work AI now handles automatically.

Stop tracking COIs by hand

COISoftware reads every certificate of insurance, checks coverage and endorsements against your requirements, and flags expirations automatically. Free to try, no credit card required.