A design vendor finishes the permit set on schedule. The AHJ (Authority Having Jurisdiction) takes six extra weeks to review it because of a backlog, not because of any error in the drawings. The EPC’s contract says the “permit-approved” milestone triggers payment. The vendor has done everything asked of them and is still waiting on money tied to an event outside their control. This exact dispute repeats across the industry every month, and it usually traces back to one thing: the milestone schedule was never written with enough precision.

Direct answer. Milestone billing in solar design contracts splits the total design fee into payments tied to defined deliverable stages, typically a deposit at kickoff (10% to 30%), a preliminary or bid-stage design milestone (20% to 30%), a permit-ready or IFC (Issued for Construction) delivery milestone (30% to 40%), and a final milestone on as-built delivery or permit approval (10% to 20%). Each milestone should trigger on a delivered document, such as submission of a stamped plan set, not on an external event, such as AHJ approval, because the vendor cannot control jurisdiction review time. Getting that distinction right in the contract language is what prevents most payment disputes.

TL;DR

  • A typical solar design milestone schedule runs deposit, preliminary design, permit-ready delivery, and as-built or close-out, each with its own percentage of the total fee.
  • Milestones should trigger on deliverable submission, not on third-party approval. Payment held pending AHJ or DISCOM sign-off is the single most common dispute in the industry.
  • Revision and resubmission cycles need their own written terms. Undefined revision counts turn one milestone into an open-ended obligation.
  • Deposits of 10% to 30% are standard and protect the vendor's cash flow on a project that can span 4 to 12 weeks before the first real deliverable ships.
  • Retainage (a 5% to 10% holdback released at final close-out) is common on larger EPC design scopes but should have a hard release date, not an indefinite one.
  • Write "milestone" as a specific, dated, signable deliverable in an exhibit, never as a vague phrase in the body of the contract.

This guide is for two readers. The first is an EPC or developer negotiating a design contract and trying to structure payment terms that protect cash flow without starving the vendor. The second is a design vendor building their own contract template and trying to avoid getting stuck delivering work with no payment in sight. Both sides want the same thing: a schedule where money moves when work moves, and where nobody is punished for a delay they didn’t cause. Our companion piece on retainer versus per-project pricing covers which pricing model fits your volume. This one covers how payments are staged within a single project once you’ve picked a model.

What Milestone Billing Actually Means in a Design Contract

Milestone billing replaces a single lump-sum invoice with a series of smaller payments, each released when a defined stage of work is complete. It sits between two extremes that both create problems: pure lump-sum-on-completion, which leaves the vendor carrying the full cost of the project until the very end, and pure time-and-materials billing, which leaves the client with no fixed budget and no leverage if the schedule slips.

A milestone is not “roughly done with permitting.” A milestone is a specific document or event, dated in the contract exhibit, that either party can point to and say it happened or it did not. If a milestone cannot be verified with a timestamp and a file, it is not a milestone, it is a mood.

Billing methodPayment triggerVendor riskClient risk
Lump sum on completionFinal delivery onlyHigh (funds full project)Low
Milestone billingDefined deliverable stagesModerate, spread across stagesModerate, tied to actual progress
Time and materialsHours logged, invoiced periodicallyLowHigh (no fixed ceiling)

Milestone billing is the default for most solar design engagements above a basic residential permit set because it gives both sides a middle ground. The vendor gets cash flow before the project closes. The client only pays for work that has actually shipped.

Definition. A milestone, in a solar design contract, is a named deliverable with a defined format (drawing set, calculation package, stamped document) whose submission by the vendor, not its acceptance by a third party, triggers the associated payment.

The Standard Milestone Structure: Deposit to As-Built

Most solar design and EPC design contracts we see, from single rooftop permit packages to full IFC (Issued for Construction) scopes for utility-scale projects, follow a version of the same five-stage skeleton. The percentages shift by project type, but the sequence rarely does.

1. Deposit or kickoff payment (10% to 30%)

Due on contract signature, before any engineering work starts. This covers the vendor’s early costs: site data collection, initial modeling setup, and the opportunity cost of blocking a design slot for your project. On smaller residential and light commercial jobs, deposits sit closer to 20% to 30% of the total fee. On larger EPC design scopes with a multi-week engagement, deposits are often a flat kickoff fee rather than a percentage, because the total contract value is large enough that a percentage deposit would be disproportionate to the actual upfront cost.

A deposit is not a good-faith gesture. It exists because a design vendor commits real capacity, a named engineer’s calendar time, the day the contract is signed. If a client cancels after signature but before any deliverable, the deposit is what makes the vendor’s blocked capacity not a total loss.

2. Preliminary or bid-stage design milestone (20% to 30%)

Due on delivery of the preliminary layout: site plan, string sizing, equipment selection, and a first-pass energy yield estimate from a tool like PVsyst or Helioscope. This is the milestone that lets a developer take a design to a lender, a landowner, or an off-taker for early feasibility sign-off. Our post on bid-stage versus IFC-stage engineering covers what actually belongs in this deliverable and what gets deferred to detailed design.

This milestone should trigger on submission of the preliminary package, not on the client’s internal approval of the layout. If the client wants a review-and-revise cycle before payment, that cycle needs its own written revision limit, covered below.

3. Detailed design or permit-ready delivery (30% to 40%)

This is usually the largest single milestone, because it’s the largest single body of work. It covers full detailed engineering: single-line diagrams, structural calculations, electrical schedules, racking layout, and, on US projects, the PE-stamped (Professional Engineer stamped) plan set ready for AHJ submission. On India projects, this stage typically includes the general arrangement (GA) drawing, BOQ (Bill of Quantities), and CEIG-format electrical drawings needed for state inspectorate submission.

The trigger for this milestone must be submission of the completed package, not approval by the permitting authority. This distinction is the single biggest source of payment disputes in the industry, and it gets its own section below.

4. Revision, resubmission, or plan-check response (built into #3 or billed separately)

AHJs and DISCOMs (Distribution Companies) issue comments. That is normal, not a failure. A well-structured contract defines how many revision rounds are included in the base fee (commonly two to three) and what happens after that: either a fixed per-round fee or an hourly rate for additional rounds. Contracts that leave this undefined turn a single milestone into an unbounded obligation, because “permit-ready” quietly becomes “permit-ready, plus infinite free redlines until the AHJ is happy.” Once a redline goes beyond a normal revision round, whether from an AHJ requirement, a site condition, or a client scope change, it should move into a formal change order process rather than being absorbed into the milestone.

5. As-built delivery or project close-out (10% to 20%)

Due on delivery of as-built drawings reflecting what was actually constructed, which can differ from the original design due to field changes, substitutions, or site conditions discovered during construction. On larger EPC design scopes, this final milestone sometimes doubles as a retainage release, covered in the next section.

10% to 30%

Deposit at kickoff

20% to 30%

Preliminary / bid-stage design

30% to 40%

Permit-ready / detailed design

10% to 20%

As-built / close-out

Full EPC contracts that bundle design with procurement and construction extend this sequence further, adding milestones for equipment delivery, mechanical completion, and substantial completion. Those later stages sit outside a pure design scope, but the same trigger-on-deliverable logic applies to them too. A commercial EPC agreement typically stages payments in parallel with construction milestones, with a down payment near 10% of contract value on execution, according to Akin Gump’s checklist for bankable solar EPC contracts (2025).

The Trigger Problem: Deliverable vs. Approval

This is the section worth reading twice if you take one thing from this guide.

Every serious dispute we have watched happen in a milestone contract traces back to the same clause: a payment milestone tied to an event the vendor does not control. “Payment due upon permit approval” sounds reasonable on paper. In practice, AHJ review timelines vary enormously by jurisdiction and season, and a design vendor has zero influence over how fast a plan reviewer clears their desk.

The rule. Tie payment to what the vendor delivers, not to what a third party decides. “Payment due upon submission of the PE-stamped plan set to the AHJ” is enforceable and fair. “Payment due upon AHJ approval” makes the vendor’s cash flow hostage to a government queue.

Why this matters more than it looks: permitting and inspection timelines are one of the most variable line items in the entire solar project schedule, and permitting soft costs remain a meaningful share of total project cost in the US market, according to the National Renewable Energy Laboratory (NREL, 2024). A design vendor who has correctly delivered a compliant plan set has done their job. Whether the AHJ approves it in five days or ten weeks says more about the jurisdiction’s backlog than about the vendor’s work.

There is a legitimate middle position, and larger EPC contracts often use it: split the milestone into a submission payment and a smaller approval-linked payment. For example, 30% due on submission of the stamped plan set, and 5% held back specifically for final permit sign-off, with a hard cap on how long that hold can last (commonly 60 to 90 days) before it releases automatically regardless of approval status. This protects the client’s leverage to get real revision support if the AHJ does kick back comments, without letting a slow jurisdiction hold the vendor’s fee indefinitely.

Field note. On our own permit-design engagements we invoice on submission of the stamped plan set, not on AHJ clearance. We still track the case through to approval and handle plan-check comments as part of the engagement, but the invoice does not wait on a government office we have no control over. That single change eliminates most of the payment friction we would otherwise see.

Negotiating Milestone Terms: What Both Sides Should Ask For

If you are the EPC or developer

Ask for the milestone schedule as a named exhibit, not a paragraph in the main body. Each milestone should list: the exact deliverable, the format (PDF, CAD file, stamped hard copy), the percentage or fixed amount due, and the number of business days you have to review it before it is deemed accepted. A milestone with no review window can be invoiced and then argued over indefinitely.

Ask for revision terms in writing. How many rounds are included per milestone. What happens on round four. Get a number, not “reasonable revisions,” which means nothing in a dispute.

Ask what happens if you terminate mid-project. A fair contract pays the vendor for milestones already delivered and nothing more. A one-sided contract either lets the client walk away owing nothing for in-progress work, or lets the vendor bill the full remaining contract value regardless of work done. Neither extreme is standard practice; look for a termination-for-convenience clause that pays for completed milestones plus a pro-rated amount for work in progress on the milestone underway.

If you are the design vendor

Ask for a deposit on every new client relationship, even a small one. A deposit is the only real protection against a client who signs, gets nervous, and disappears before the first deliverable ships. On new relationships we require a deposit; frequent clients working under an established retainer often skip it because the ongoing relationship already carries that trust.

Define your milestones by document, not by percentage of “the design.” “40% of the design is done” is not verifiable. “The single-line diagram, structural calculations, and permit set have been submitted” is verifiable in a folder.

Cap your revision exposure. Two or three included rounds per milestone, then a stated fee or hourly rate for anything beyond that. This is the single most common gap we see in vendor-written contracts, and it is the one that turns a fixed-fee project into an unpaid open-ended obligation.

Set a hard release date on any approval-linked holdback. If a client insists on tying part of the fee to AHJ or DISCOM approval, agree to it only with an automatic release date, so a stuck permit queue does not become a stuck invoice.

Common Disputes and How to Avoid Them

Payment held pending AHJ or DISCOM approval, with no cap. Covered above. The fix is contractual: submission triggers payment, not third-party sign-off, or a capped holdback with an automatic release date.

Scope creep disguised as revisions. A client asks for “one more small change” seven times. Each change individually looks minor. Collectively it is a redesign. The fix is a written revision count per milestone, and a clear definition of what counts as a revision (correcting an error in the original scope) versus a change order (new scope requested after the milestone was delivered).

Milestone acceptance with no review window. A vendor submits a deliverable and invoices immediately. The client sits on it for six weeks, then disputes the invoice, claiming the work was never reviewed or accepted. The fix is a stated review period, commonly 5 to 10 business days, after which the deliverable is deemed accepted if the client raises no written objection.

Undefined “final” deliverable. A contract says the final milestone is due on “project completion” without defining what that means for a design-only scope. Does it mean as-built drawings submitted, or does it mean the physical system passed inspection, an event the design vendor has even less control over than permit approval. Define “final” as a specific document delivery, always.

Currency and payment method friction on cross-border contracts. US-India and Africa-facing engagements add wire transfer timing, currency conversion, and banking delays that can make a milestone look “late” when the work was actually delivered on time. State the payment method and expected clearing time in the contract, and consider whether the invoice date or the funds-cleared date is what starts any late-payment penalty clock.

What most EPCs get wrong. Buyers often treat the milestone schedule as a formality to fill in after the scope and price are agreed. It should be negotiated with the same care as the price itself, because a badly worded trigger clause can functionally change the price by delaying cash for months. A 30-day payment delay on a $40,000 milestone is not a minor inconvenience, it is a real cost of capital.

Retainage: The Holdback Most People Forget to Negotiate

Retainage, a percentage of each milestone payment (commonly 5% to 10%) held back and released at final close-out, is standard practice on larger construction contracts and shows up on some larger EPC design scopes too. A holdback or retention amount for possible repairs, claims, or corrections, released at substantial completion, is a documented feature of solar EPC and installation agreement templates, according to Stoel Rives’ Law of Solar guide.

Retainage makes more sense on a bundled EPC contract, where construction defects could surface after substantial completion, than on a pure design engagement, where the deliverable is a document, not a physical asset with a defect window. If a client asks for retainage on a design-only contract, that is a reasonable point to negotiate down, since the risk retainage is meant to cover largely does not apply to drawings.

If retainage does apply to your contract, negotiate two things: the release trigger (a specific date or event, not “when the client is satisfied”) and the release percentage schedule if it is staged rather than all-at-once.

A Worked Example: Mid-Size C&I Rooftop Design Engagement

Assume a 500 kW commercial rooftop project with a total design fee of ₹55,000, covering feasibility, detailed engineering, and permit-format drawings for state inspectorate submission. A typical milestone breakdown looks like this.

MilestoneDeliverable% of feeTrigger
Kickoff depositSigned contract, site data request sent20%Contract execution
Preliminary designSite layout, string sizing, yield estimate25%Submission of preliminary package
Detailed / permit-readyGA drawing, SLD, structural calcs, BOQ, CEIG-format set40%Submission of complete package
As-built / close-outFinal as-built drawing set15%Submission of as-built package

Two revision rounds are included at the detailed design stage; a third round is billed at a fixed per-round rate stated in the contract. No milestone is tied to DISCOM or inspectorate approval. This structure gives the client four checkpoints to verify progress and gives the vendor cash flow that tracks actual work delivered, without either side waiting on a government office.

How Heaven Designs Structures Milestone Contracts

We run milestone billing on the majority of our project-based engagements, and a small number of clients on retainer skip individual milestones in favor of a flat monthly fee, covered in our retainer versus per-project guide. Every milestone we quote is tied to a named, dated deliverable, never to AHJ or DISCOM approval, and every proposal states the included revision count up front so there is no ambiguity when plan-check comments come back.

If you are drafting or reviewing a milestone schedule for an upcoming design contract, contact us and we will walk through what a fair trigger clause looks like for your specific scope, whether we end up working together or not. If you’re running a formal procurement process rather than a single negotiation, our RFP response guide covers how to request comparable milestone terms from multiple vendors at once.

FAQ

What percentage deposit is normal for a solar design contract?

10% to 30% of the total fee, due at contract signature. Smaller residential and light commercial jobs tend toward the higher end of that range because the total contract value is small enough that a flat kickoff fee would look disproportionate. Larger EPC design scopes sometimes use a flat kickoff fee instead of a percentage.

Should a design milestone be tied to permit approval?

No, not without a hard cap. Tie payment to submission of the completed, compliant deliverable. AHJ and DISCOM review timelines are outside the vendor’s control, and an uncapped approval-linked milestone can leave a vendor unpaid for months through no fault of their own. If a client wants some payment linked to approval, use a small holdback with an automatic release date, not the full milestone.

How many revision rounds should be included in a design contract?

Two to three rounds per milestone is standard. Define the count in writing, along with what counts as a revision (a correction within the original scope) versus a change order (new scope requested after delivery). Anything beyond the included count should carry a stated fee.

What is retainage in a solar design or EPC contract?

A percentage, commonly 5% to 10%, withheld from each milestone payment and released at final close-out or substantial completion. It is more common on bundled EPC contracts covering construction than on pure design engagements, since the risk it protects against (defects in a built asset) does not apply to a drawing package the same way.

What happens if a client terminates a milestone contract early?

A fair contract pays for milestones already delivered, plus a pro-rated amount for the milestone in progress at termination. Look for a termination-for-convenience clause with those terms spelled out before signing. Contracts silent on this point tend to produce disputes exactly when a project is cancelled.

Is milestone billing different from retainer billing?

Yes. Milestone billing stages payment within a single project by deliverable stage. A retainer is a recurring monthly fee for ongoing capacity across multiple projects, independent of any single project’s milestones. Our retainer versus per-project guide covers when each pricing model fits.

How does milestone billing work on a full EPC contract versus a design-only contract?

A design-only contract’s milestones end at as-built delivery. A full EPC contract extends the same trigger-on-deliverable logic through procurement and construction: equipment delivery, mechanical completion, substantial completion, and final acceptance each become additional milestones, commonly with a retainage holdback released at final completion after punch-list items are closed.