# Consulting agreement template

A consulting agreement is a contract in which a consultant agrees to give expert advice or services to a client, usually on a retainer, an hourly rate or a fixed project fee.

## What it is

A consulting agreement is a close cousin of the [independent contractor agreement](/templates/independent-contractor-agreement). The difference is the kind of work. A consultant mostly sells judgment: strategy, audits, training, technical reviews. That shifts the weight onto confidentiality, conflicts of interest and limits on liability for advice.

What follows is general information about this type of document. It is not legal advice. Before you rely on a template, ask a lawyer to review it for your work and your jurisdiction.

## When it is used

- A company brings in an adviser for a three-month strategy project.
- A fractional executive works two days a week on a retainer.
- A specialist reviews a system, a process or a financial model. For regulated advice, see [financial advisers](/industries/financial-advisers).
- An agency takes on a discovery phase before a build. See [agencies](/industries/agencies).

Larger engagements often pair a master consulting agreement with a [statement of work](/templates/statement-of-work) per project.

## What it usually contains

| Section | Typical content |
|---|---|
| Engagement | Who the consultant is, who the client is, and that the relationship is independent. |
| Scope of services | The advice or tasks, or a reference to a separate statement of work. |
| Fees and expenses | Retainer, hourly or project fee, and which expenses are paid back. |
| Time commitment | Expected hours or days, and response times. |
| Confidentiality | Protection of the client's information, and sometimes the consultant's methods. |
| Conflicts of interest | Whether the consultant may work for competitors at the same time. |
| Work product | Who owns reports, slides and code made during the engagement. |
| Limitation of liability | A cap on what the consultant owes if advice turns out wrong. |
| Term and termination | How long it runs and notice to end it. |
| Signatures | Consultant and an authorised person at the client. |

## Things to get right

- **Separate the master terms from each project.** Signing a new full contract for every project wastes time. A master agreement plus short statements of work keeps each signing small.
- **Name the deliverable, not just the hours.** "Up to 20 hours" says nothing about what the client gets.
- **Watch the liability cap.** It is often the most negotiated clause. Leave room for redlines before you send for signature.
- **Record who signed and when.** Each event goes into the [audit trail](/glossary/audit-trail), and the finished file gets a [PAdES](/glossary/pades) seal so any later change is visible.

## How to send it for signature with docuinked

### In the app

Upload the agreement, add both signers and place fields. Save the master agreement as a template with roles "Client" and "Consultant". For each later statement of work, upload just that document.

### By API

A consulting firm's CRM can send the master agreement when a deal reaches "won". This example puts the client's signer first and leaves the consultant to countersign, with a checkbox to confirm the client read the attached rates.

```
curl https://docuinked.com/v1/documents \
  -H "Authorization: Bearer $DOCUINKED_API_KEY" \
  -H "Idempotency-Key: msa-deal-5530" \
  -H "Content-Type: application/json" \
  -d '{"title": "Consulting agreement: Example Co",
       "pdf_url": "https://example.com/msa/deal-5530.pdf",
       "ordered": true,
       "signers": [{"name": "Priya Nair", "email": "priya@example.com"},
                   {"name": "Dana Reed", "email": "dana@example.org"}],
       "fields": [{"signer": 1, "kind": "checkbox", "anchor": "Rate card received"},
                  {"signer": 1, "kind": "signature", "anchor": "For the Client:"},
                  {"signer": 1, "kind": "text", "anchor": "Title:"},
                  {"signer": 2, "kind": "signature", "anchor": "For the Consultant:"}],
       "send": true}'
```

### From an agent

A consultant can keep their pipeline in an agent and let it do the paperwork. The agent calls `create_from_template` with the client contact, reads the `review_url`, and asks to send. On a live key, a named person approves the exact draft from the `approval_url`. If the draft changed after the request, the server refuses with `draft_changed`. See [approvals](/docs/approvals) and [the MCP setup](/docs/mcp).

## Sources

Checked 2026-11-07.

- [ESIGN Act, 15 USC 7001](https://www.law.cornell.edu/uscode/text/15/7001)
- [ESIGN definitions, 15 USC 7006](https://www.law.cornell.edu/uscode/text/15/7006)

## Common questions

### What is the difference between a consulting agreement and a statement of work?

The consulting agreement holds the lasting terms, such as fees, confidentiality and liability. A statement of work describes one project under those terms. You sign the agreement once and a new statement of work for each project.

### Should a retainer consulting agreement renew on its own?

That is a business choice. If it renews automatically, say so clearly and state how to cancel. Many clients prefer an end date they can extend.

### Who signs for the client in a consulting agreement?

A person who can commit the client to spend, often a director or an officer. Add a text field for their title so the record shows the role they signed in.
