1
Identify the parent agreement and assign a schedule number
In the schedule header, enter the full name of the main agreement, its execution date, and both parties' legal entity names. Assign the schedule a number or letter (Schedule 1, Schedule A) consistent with the numbering system used in the main agreement.
π‘ Check the main agreement's table of contents or definitions section to confirm the naming convention β mixing numbers and letters across schedules in the same contract creates confusion during disputes.
2
Draft the purpose statement and precedence rule
Write one to two sentences identifying what the schedule covers and whether the schedule or the main agreement takes precedence in the event of a conflict. Make this decision consciously β a fee schedule updated annually should typically override the body; boilerplate terms should not.
π‘ If you want the most recently signed schedule to govern, say so explicitly: 'In the event of conflict, the version of this Schedule most recently executed by the parties shall prevail.'
3
List all defined terms specific to this schedule
Identify any terms used in the schedule that are not already defined in the main agreement. Add a short definitions section at the top of the schedule body, using the same capitalisation and format as the parent contract.
π‘ Never introduce a defined term in a schedule that contradicts a definition in the main agreement without including an express override clause.
4
Describe deliverables or subject matter with precision
Write out every deliverable, service, asset, or data item covered by the schedule. Use numbered sub-clauses, not prose paragraphs. For each item include: a description, a format or standard it must meet, and the deadline or delivery trigger.
π‘ If a deliverable is iterative β such as software with multiple releases β specify the version numbering system and which version triggers the payment milestone.
5
Set the timeline with explicit milestone dates
Create a milestone table listing each phase or deliverable, the party responsible, the due date (calendar date, not a relative reference like '30 days after kickoff'), and whether time is of the essence.
π‘ Avoid relative date references like 'within 2 weeks of written notice' unless the notice trigger is itself unambiguously defined β chains of relative dates become impossible to enforce.
6
State fees and link each payment to a milestone
List every fee, rate, or payment in a numbered table. Link each payment directly to a deliverable or milestone in the schedule using the same numbering. Include the invoicing trigger, payment terms, and any late-payment rate.
π‘ State the currency explicitly if either party operates across borders, and add a single-sentence clause confirming whether fees are inclusive or exclusive of applicable taxes.
7
Add acceptance criteria and deemed-acceptance language
For each deliverable, write measurable acceptance criteria β format, content standards, performance benchmarks β and set a defined review period. Include a deemed-acceptance clause so the clock has a clear stop.
π‘ Keep review periods short: 5β10 business days for documents, 10β15 for complex deliverables. Longer periods encourage procrastination and slow your payment cycle.
8
Confirm IP ownership and execute the schedule
Add or cross-reference the IP clause and ensure the signature block is completed by authorised signatories for both parties before any work under the schedule begins.
π‘ Send the schedule for signature at the same time as the main agreement where possible. Schedules signed weeks after the main agreement can face 'fresh consideration' challenges in common-law jurisdictions.