Milestone Agreements
Milestones let you break a payment into stages. Instead of holding the full amount until the entire job is done, each milestone has its own USDC amount and is approved independently.
When to use milestones
- Multi-phase projects — design, development, launch
- Ongoing work — monthly deliverables with separate payouts
- High-value deals — reduce risk by paying in increments
- Trust-building — a new working relationship where both sides want checkpoints
How it works
Creating a milestone agreement
- Start creating a new Escrow agreement as usual
- Toggle Use milestones in the creation form
- Add milestones — each one needs a title and USDC amount
- The total of all milestones equals the total escrow amount
- Fund the agreement — the full amount is deposited upfront into escrow
Approving milestones
Each milestone is approved separately. When the approval threshold is met for a specific milestone:
- That milestone’s USDC is released to the recipient immediately
- Remaining milestones stay in escrow, untouched
- The agreement stays Active until all milestones are complete
Example
A $3,000 web design project split into three milestones:
| Milestone | Amount | Deliverable |
|---|---|---|
| 1. Wireframes | $500 USDC | Site structure and wireframe designs |
| 2. Mockups | $1,000 USDC | Full visual mockups for all pages |
| 3. Final delivery | $1,500 USDC | Production-ready files and assets |
The payer deposits the full $3,000 USDC upfront. As each deliverable is completed and approved, that milestone’s funds release automatically.
Cancellation with milestones
If a milestone agreement is cancelled:
- Approved milestones — already paid out, those funds stay with the recipient
- Remaining milestones — refunded to the payer
This protects both parties: the recipient keeps what they’ve earned, and the payer gets back what hasn’t been delivered.
Plan limits
Free plan: Up to 2 milestones per agreement. Pro and Team plans: Unlimited milestones.
Tips
- Name your milestones clearly — “Phase 1” is vague; “Homepage wireframe with responsive mockup” is specific
- Front-load smaller amounts — build trust with a smaller first milestone before larger payouts
- Match milestones to deliverables — each milestone should correspond to something concrete the recipient can deliver and the payer can verify