COI term

Per-project aggregate

A sub's general aggregate is shared across every job they work — so a claim elsewhere can run it out before yours. The CG 25 03 endorsement gives your project its own dedicated limit.

Key takeaways

  • A standard GL policy's general aggregate caps total payouts for all of the sub's operations in the policy year — it is not per job. Losses on other projects can leave little or nothing for yours.
  • The per-project aggregate endorsement — CG 25 03 (designated construction projects) or CG 25 04 (per location) — carves out a separate general aggregate for your project so it can't be eroded elsewhere.
  • The per-occurrence number on the certificate can look healthy while the aggregate is nearly spent. The ACORD 25 shows both limits but not how much of the aggregate is already used — only the endorsement and the carrier reveal the structure.
  • CG 25 03 resets the general aggregate per project; the products-completed-operations aggregate usually stays a single shared limit. Require the endorsement on larger jobs and for subs you know run many projects at once.

By the Sealinn team · 3 min read · Updated July 2026 · Written for general contractors

Aggregate vs per-occurrence

A general liability policy carries two numbers that matter here. The per-occurrence limit is the most the policy pays for any single claim. The general aggregate is the most it pays in total across the whole policy period — for every claim, on every job the sub works, which is why the limits you require are only half the question. So "$1M / $2M" means up to $1M per claim and $2M total for the year, and that $2M is shared across all of the sub's projects, not reserved for yours.

Why a shared aggregate is your exposure

Picture a sub running six jobs at once. A serious claim on someone else's project pays $1.5M against the $2M aggregate. (An umbrella or excess layer above it only helps you if it follows form over your own status.) Your certificate still reads $1M / $2M — but only $500k of aggregate is actually left, and you had no way to see it coming. The per-occurrence limit you relied on can quietly outrun what the policy can still pay, because the aggregate is being drained by work that has nothing to do with you.

The certificate can't show the aggregate is spent

The ACORD 25 lists the limits, but never how much of the aggregate a bad year has already eaten. A clean-looking certificate tells you the policy's limits on paper, not what is left of them. Only a per-project aggregate endorsement changes the structure, so your project carries its own dedicated limit.

How to actually find out what is left: ask for the loss runs

The section above raises a question and it deserves an answer rather than a shrug. If the certificate cannot show how much of the aggregate has been consumed, what can? Loss runsthe carrier's own record of what has been claimed against the policy. It is the document that tells you whether that $2,000,000 aggregate is really a $2,000,000 aggregate, and it is free, routine, and about a day away through the sub's agent.

Two cautions specific to reading one for this purpose. It reports claims, not the aggregate arithmetic — no carrier publishes a running balance, so you are forming a judgment about how much room is left rather than collecting a figure anyone will stand behind. And an open claim is a position rather than a total, because the reserve behind it moves. Ask for the most recent run covering the current policy period, and ask at prequalification rather than after a certificate has already made you uneasy.

What to require on a large job

On larger or higher-risk jobs, and with any sub you know works many projects at once, require a per-project aggregate endorsement designating your project — CG 25 03 is the usual form for designated construction projects, and CG 25 04 does the same job for a designated location — worth naming the right one, because a project spanning several addresses and a single site are different things to a carrier. Then collect the endorsement copy from the sub's agent, not a fresh certificate: the endorsement is the page that actually separates your aggregate. One thing it does not separate: products and completed operations stay on the shared, policy-wide limit, so the half of your exposure that surfaces after handover is not ring-fenced by it. This email does it:

Copy-paste to the sub’s agent

Subject: Per-project aggregate endorsement — [Project]

Hi [Agent name],

We're the general contractor on [Project] and our subcontract with [Sub name] requires the general aggregate limit to apply separately to our project.

Could you send the per-project aggregate endorsement — typically CG 25 03 (designated construction projects) — showing it designates [Project]? We need the actual endorsement page, since the certificate reports the limits but doesn't show how the aggregate is structured or how much remains.

Thanks,
[Your name], [Your company]

Checking the aggregate, not just the occurrence

Sealinn checks both general-liability numbers against your requirement — the per-occurrence limit and the aggregate — so a certificate that clears your occurrence minimum while carrying a thin shared aggregate is flagged rather than filed.

Where this comes from

Check the aggregate, not just the occurrence.

Sealinn checks both general-liability limits against your requirement, so a thin shared aggregate doesn't pass as a healthy policy.