CON-330 · Lesson 5 of 12 · 26 min

Subcontract agreements

The subcontract is where buyout decisions become enforceable. It must describe the scope precisely, carry down the obligations the general contractor owes the owner, set the price and how it is paid, and say what happens when things change or go wrong. CON-220 covers the law behind these clauses: contract formation, the standard form families, payment and lien statutes, pay-when-paid rules and dispute resolution. This lesson is practical. It looks at what a procurement team must get right when it prepares, negotiates and signs a subcontract, and at the clauses that cause the most trouble when they are wrong.

Standard forms and contractor forms

Subcontracts are usually based either on an industry standard form or on the contractor's own form. Standard forms have the advantage of being familiar, balanced and tested in disputes; contractor forms can be tailored to the contractor's risk appetite and prime contracts but often draw more exceptions from subcontractors.

Common subcontract forms. Check the current edition before use.
FormUseNotes
AIA A401 (Standard Form of Agreement Between Contractor and Subcontractor)General subcontract between a contractor and a tradeDesigned to work with AIA A201 general conditions
ConsensusDocs 750 (Standard Agreement Between Constructor and Subcontractor)General subcontractEndorsed by a broad group of industry associations
Contractor's own formMany large contractorsOften more onerous: broad indemnities, pay-if-paid, strict notice periods; expect exceptions

Whatever the form, two documents should travel with it: the scope review minutes and the responsibility matrix (Lesson 4). Together with the bid package, they define what the subcontractor priced. A subcontract that says only 'Division 23 complete as per plans and specifications' leaves every disputed item to be argued later.

Flow-down: matching the prime contract

The general contractor owes the owner obligations about quality, schedule, warranties, submittals, safety, insurance, notices and disputes. Most of those obligations must be performed by subcontractors. A flow-down clause (also called a conduit or incorporation clause) binds the subcontractor to the prime contract terms that apply to its work, as if the general contractor were the owner. Without it, the general contractor can end up owing the owner something its subcontractor never promised to provide.

Diagram with the owner at the top, the general contractor in the middle and three subcontractors below. Downward arrows carry obligations such as scope, schedule, warranties, notices and insurance; upward arrows carry payment applications and claims. A dashed box highlights notice periods that must be shorter at each level.
Flow-down: obligations pass down the contract chain; claims and payment applications pass up.

A blanket flow-down clause is a start, but the most important terms should be checked one by one, because a general clause may not override a specific conflicting term in the subcontract.

# Compare key subcontract terms with the prime contract (Larch Street, illustrative)
prime = {"warranty_months": 24, "notice_of_claim_days": 10, "ld_per_day": 4_000,
         "cgl_limit": 5_000_000, "submittal_review_days": 10}
sub = {"warranty_months": 12, "notice_of_claim_days": 10, "ld_per_day": 0,
       "cgl_limit": 5_000_000, "submittal_review_days": 14}
checks = {
    "warranty_months":       lambda p, s: s >= p,   # sub warranty must cover prime warranty
    "notice_of_claim_days":  lambda p, s: s < p,    # sub must notify GC before GC must notify owner
    "ld_per_day":            lambda p, s: s > 0,    # some delay damages should pass down
    "cgl_limit":             lambda p, s: s >= p,
    "submittal_review_days": lambda p, s: s >= p,   # GC needs at least the owner's review time
}
for k, ok in checks.items():
    print(f"{k:22} prime {prime[k]:>9,}  sub {sub[k]:>9,}  {'ok' if ok(prime[k], sub[k]) else 'MISMATCH'}")
Output
warranty_months        prime        24  sub        12  MISMATCH
notice_of_claim_days   prime        10  sub        10  MISMATCH
ld_per_day             prime     4,000  sub         0  MISMATCH
cgl_limit              prime 5,000,000  sub 5,000,000  ok
submittal_review_days  prime        10  sub        14  ok

Three mismatches appear. The subcontract warranty is 12 months while the owner's is 24 (often because the warranty in the prime contract runs from substantial performance of the whole building while the trade's runs from completion of its own work). The notice period for claims is the same 10 days at both levels, which leaves the general contractor no time to receive the subcontractor's notice and pass it on; the subcontract period should be shorter. And no delay damages pass down at all. Each should be fixed before signature.

Scope, price and the schedule of values

The subcontract price is usually a lump sum (stipulated price), sometimes with unit prices for measured items. For progress billing, the subcontractor provides a schedule of values breaking the price into line items against which it bills each month. The general contractor reviews it for completeness and for front-loading: weighting early items (mobilization, shop drawings, rough-in) above their true cost so that the subcontractor is paid ahead of its work. Front-loading shifts risk to the general contractor, because if the subcontractor defaults, the money left in the subcontract may not cover the remaining work.

# Check a schedule of values for front-loading (mechanical subcontract)
sov = {  # line: (value in SOV, estimated true cost)
    "Mobilization and bonds":   (420_000,   180_000),
    "Shop drawings and BIM":    (310_000,   160_000),
    "Underground plumbing":     (480_000,   430_000),
    "Rough-in, all floors":     (1_900_000, 1_880_000),
    "Equipment set":            (1_150_000, 1_240_000),
    "Finishes and trim":        (980_000,   1_180_000),
    "Testing, balancing, startup": (240_000, 330_000),
    "Closeout and training":    (332_000,   392_000),
}
total = sum(v for v, _ in sov.values())
print(f"SOV total {total:,} (subcontract 5,812,000)")
early = ["Mobilization and bonds", "Shop drawings and BIM", "Underground plumbing"]
over = sum(sov[k][0] - sov[k][1] for k in early)
print(f"Front-loading in early lines: {over:,} = {over/total:.1%} of the subcontract")
Output
SOV total 5,812,000 (subcontract 5,812,000)
Front-loading in early lines: 440,000 = 7.6% of the subcontract

The schedule of values adds up to the subcontract value, but the first three lines are weighted about $440,000 above their estimated cost, about 7.6 % of the subcontract, with the shortfall taken from finishes, startup and closeout. The project manager should ask for the values to be rebalanced before the first billing. A modest allowance for mobilization and bonds is normal; paying for half the closeout work in month one is not.

Payment terms and holdback or retainage

The subcontract must say when the subcontractor submits its billing, how it is certified, when it is paid, and how much is withheld. These terms interact with payment law, which differs between jurisdictions (CON-220 and CON-310).

In the US, payment terms are set by the subcontract within limits imposed by state prompt payment statutes, which commonly require a contractor to pay its subcontractors within a set number of days after it is paid. Retainage of 5 % to 10 % is common, and many states cap it, especially on public work. Whether a pay-when-paid clause only sets timing or a pay-if-paid clause makes owner payment a condition precedent depends on state law; some states refuse to enforce pay-if-paid clauses at all (CON-220). The subcontract billing cycle should match the prime contract so that subcontractor pay applications can be included in the contractor's own.

Worked problem

Lining up the billing cycle

Halyard must submit its pay application to the owner on the 25th of each month for work to the 20th. Subcontractors currently bill on the last day of the month. What change should the subcontracts make, and why?

Show solution
  1. Set the subcontractor billing date to the 20th (work to the 20th), with the general contractor's review by the 23rd.
  2. Allow two working days for questions and corrections.
  3. Include the approved subcontractor amounts in the owner billing on the 25th.

Answer: Otherwise each subcontractor billing misses the owner cycle and waits an extra month, which subcontractors will price into their bids and which may conflict with statutory payment timelines.

Changes, delays and notices

The changes clause should mirror the prime contract: who can direct a change (only named people at the general contractor), how a change is priced (lump sum quote, unit prices from the bid form, or time and materials with agreed markups), and how quickly the subcontractor must give notice of a change or claim. Notice periods should be shorter at the subcontract level than at the prime level so that the general contractor can collect, review and pass on notices in time.

Changes, schedule and notice terms.
ClausePractical point
ChangesAgreed markup percentages for overhead and profit on changes, and on sub-subcontracted work, avoid arguments later
Unit pricesCarry the bid form's unit prices into the subcontract for likely changes
ScheduleSubcontractor must follow the contractor's schedule and updates, attend coordination meetings and supply crews to meet milestones
Delay damagesIf the prime contract has liquidated damages, consider passing a share down for delays the subcontractor causes, with a cap
NoticesShorter periods than in the prime contract; specified addresses and methods
# Liquidated damages: how much of the prime exposure should pass down? (illustrative)
prime_ld_per_day = 4_000
delay_days_caused_by_sub = 9
sub_value = 2_244_000
cap_pct = 0.05                         # subcontract LD cap: 5 % of subcontract value
exposure = prime_ld_per_day * delay_days_caused_by_sub
cap = cap_pct * sub_value
recoverable = min(exposure, cap)
print(f"Prime LD exposure from the subcontractor's delay: {exposure:,}")
print(f"Subcontract cap: {cap:,.0f}")
print(f"Recoverable from the subcontractor: {recoverable:,.0f}")
Output
Prime LD exposure from the subcontractor's delay: 36,000
Subcontract cap: 112,200
Recoverable from the subcontractor: 36,000

A subcontractor cannot sensibly accept unlimited liability for the owner's liquidated damages on a building many times the value of its subcontract, and most will price or refuse such a clause. A pass-down that is proportionate (damages only for delays the subcontractor causes) and capped (here 5 % of the subcontract) is more likely to be accepted and enforced.

Insurance, indemnity and warranties

The subcontract sets the insurance each subcontractor must carry, typically commercial general liability, automobile, and for some trades professional liability (design-assist and delegated design), pollution or equipment coverage, with the general contractor and owner named as additional insureds. Certificates must be collected and checked before work starts (Lesson 3), and tracked for renewals.

Indemnity clauses allocate responsibility for third-party claims. Broad clauses that make the subcontractor indemnify the general contractor even for the general contractor's own negligence are common in contractor forms but are often restricted by statute or narrowed by courts.

Most US states have anti-indemnity statutes limiting or voiding construction indemnities that cover the indemnitee's sole (and in some states partial) negligence, and some extend this to additional insured requirements. Subcontract indemnities should be drafted to the law of the project's state.

Warranties should match the prime contract in length and start date, and the subcontract should require warranty documents and manufacturer warranties to be delivered in the form the owner requires at closeout (Lesson 11).

Back-charges, default and termination

A back-charge is a deduction from a subcontractor's payments for costs the general contractor incurred because of the subcontractor, for example clean-up the trade failed to do, damage it caused, or work the contractor had to perform to keep the schedule. The subcontract should require written notice and an opportunity to cure before a back-charge is made, which both is fair and makes the back-charge enforceable. Default and termination clauses set out how the contractor can supplement a failing trade's forces, terminate for default after notice, or terminate for convenience, and what the subcontractor is paid in each case. Lesson 11 covers how these clauses are used in practice.

Exceptions and negotiation

Subcontractors often return the subcontract with exceptions: deleting a broad indemnity, limiting liquidated damages, changing payment terms. The procurement team should decide in advance which terms are firm (usually flow-downs the owner insists on, insurance, safety), which are negotiable, and who may approve changes. Exceptions accepted on one subcontract should be checked against the prime contract so that the general contractor does not give away protection it still owes the owner.

Common mistakes

  • MistakeDefining scope only by specification division.

    InsteadAttach the responsibility matrix and scope review minutes to the subcontract.

  • MistakeRelying on a blanket flow-down clause.

    InsteadCheck warranties, notices, delay damages, insurance and review periods one by one against the prime contract.

  • MistakeUsing the same notice period at both levels.

    InsteadMake subcontract notice periods shorter so notices can be passed up in time.

  • MistakeAccepting a front-loaded schedule of values.

    InsteadCompare early lines with their true cost and rebalance before the first billing.

  • MistakePassing unlimited owner liquidated damages to a small trade.

    InsteadPass down proportionate, capped delay damages for delays the subcontractor causes.

  • MistakeBack-charging without notice.

    InsteadGive written notice and an opportunity to cure, then document the cost.

Summary and key terms

  • Subcontracts are based on standard forms or contractor forms; scope review minutes and the responsibility matrix should be attached.
  • Flow-down clauses carry prime contract obligations to subcontractors, but key terms should be checked individually.
  • Schedules of values must total the subcontract value and should not be front-loaded.
  • Payment terms and billing cycles must align with the prime contract and with payment statutes and holdback or retainage rules.
  • Change, notice and delay-damage terms should mirror the prime contract, with shorter notice periods and proportionate, capped damages.
  • Insurance, indemnity and warranty terms protect against third-party and defect risks, subject to local law.
  • Back-charges, default and termination need clear notice and cure procedures.
Subcontract
The contract between the general contractor and a trade contractor.
Flow-down clause
A clause binding the subcontractor to the prime contract terms that apply to its work.
Schedule of values
A breakdown of the contract price used for progress billing.
Front-loading
Weighting early schedule-of-values items above their true cost.
Liquidated damages
Pre-agreed damages for each day of delay.
Indemnity
A promise to compensate another party for specified losses or claims.
Additional insured
A party added to another's insurance policy for specified risks.
Back-charge
A deduction from a subcontractor's payment for costs it caused.
Termination for convenience
Ending a contract without fault, with payment for work done and agreed costs.
Exception
A change a bidder or subcontractor requests to the proposed contract terms.

Practice problems

Work each problem on paper first, then reveal the answer to check.

  1. Why attach the responsibility matrix to the subcontract?

    Show answer

    It defines exactly which disputed items the subcontractor included.

  2. The prime warranty is 24 months from substantial performance; the subcontract warranty is 12 months from the trade's completion. What is the risk?

    Show answer

    The contractor may owe the owner warranty work after the subcontractor's warranty has expired.

  3. Why should subcontract notice periods be shorter than prime notice periods?

    Show answer

    So the contractor can receive, review and pass notices to the owner within its own deadline.

  4. A schedule of values shows mobilization at $300,000 against a true cost of $120,000 on a $3 million subcontract. How much is front-loaded, as a percentage?

    Show answer

    $180,000, or 6 % of the subcontract.

  5. Why is front-loading risky for the contractor?

    Show answer

    If the subcontractor defaults, the unpaid balance may not cover the remaining work.

  6. Prime LDs are $3,500 per day; a subcontractor causes 12 days of delay; the cap is 5 % of a $700,000 subcontract. How much can be recovered?

    Show answer

    Exposure $42,000; cap $35,000; recoverable $35,000.

  7. Name three insurance coverages commonly required of subcontractors.

    Show answer

    Commercial general liability, automobile, professional liability for design work, pollution, equipment.

  8. What do US anti-indemnity statutes typically do?

    Show answer

    Limit or void indemnities covering the indemnitee's own negligence in construction contracts.

  9. What should happen before a back-charge is made?

    Show answer

    Written notice and an opportunity to cure, then documentation of the cost.

  10. Which terms are usually treated as firm in subcontract negotiation?

    Show answer

    Owner-required flow-downs, insurance and safety obligations.

Lesson quiz · 5 questions

Score 60% or more to complete this lesson.

Take the quiz