The template
Copy this for one process at a time. If it runs past one page, you have two processes.
SOP: [Process name]
| Field | Entry |
|---|---|
| Purpose | One sentence: what this process produces and for whom |
| Owner | One named person, not a team |
| Backup | Who runs it when the owner is out |
| Trigger | The event that starts it |
| Inputs | What must exist before step 1 |
| Tools | Where the work is done and recorded |
| Done when | A check someone else could verify |
| Review date | [Date], and who reviews it |
| Last changed | [Date], by [Name], and why |
Steps
| # | Step | Owner | Tool | Time limit |
|---|---|---|---|---|
| 1 | [Verb first: "Create the task"] | [Role or name] | [Tool] | [For example, same working day] |
| 2 | ||||
| 3 |
Exceptions
| If | Then | Who decides |
|---|---|---|
| [Situation that happens] | [What to do] | [Name] |
Change log
| Date | Change | Reason |
|---|---|---|
A filled-in example: client request intake
This is an example for a made-up 12-person agency. Change the names, tools and time limits to match yours.
SOP: Client request intake
| Field | Entry |
|---|---|
| Purpose | Every client request, from any channel, becomes one task with an owner and a due date |
| Owner | [Account coordinator] |
| Backup | [Account manager on that client] |
| Trigger | A client asks for something in Slack, email, WhatsApp, a call or a document comment |
| Inputs | The client's message or the call notes, and the client's task project |
| Tools | Slack, Gmail, the task tool (Asana, ClickUp, monday.com or Trello), the client folder |
| Done when | One task exists in the client's project with an owner, a due date, a link to the original message and a reply posted to the client |
| Review date | [Date], reviewed by the agency owner |
| Last changed | [Date], by [Name], after a request was lost in a call |
| # | Step | Owner | Tool | Time limit |
|---|---|---|---|---|
| 1 | Capture the request where it arrived. Whoever receives it puts a link or a copy in the intake channel | Whoever received it | Slack | Same working day |
| 2 | Check whether a task for it already exists. Search the client's project by keyword | Coordinator | Task tool | Next working morning |
| 3 | Create one task. Title starts with a verb. Paste the original message and link to it | Coordinator | Task tool | Next working morning |
| 4 | Assign an owner and a due date. If the request is outside scope, set the status to "Needs scope decision" and tag the account manager | Account manager | Task tool | Within 1 working day of step 3 |
| 5 | Reply to the client in the channel they used: who has it, and when they will hear back | Account manager | Same channel | Same day as step 4 |
| 6 | Mark the original message with a checkmark reaction so everyone can see it is filed | Coordinator | Slack | Same day as step 3 |
| 7 | When the task is done, reply with the result and close it | Task owner | Task tool, then the client channel | On completion |
| If | Then | Who decides |
|---|---|---|
| Request arrives by phone or WhatsApp | The person who took it writes it up in the intake channel after the call, in their own words, and tags the coordinator | Person who took it |
| Request is urgent | Post in the account team channel with the word URGENT and call the account manager. Do not wait for step 2 | Account manager |
| Request changes something already approved | Create a new task. Do not edit the approved one | Account manager |
| Client sends several requests in one message | One task per request, each linked to the same message | Coordinator |
| Nobody can tell what the client wants | Ask one question in the client's channel before creating the task | Account manager |
How to use an SOP so it does not rot
Write the SOP after the process has gone wrong, not before. An SOP written in advance describes the process as you imagine it, and staff ignore it because it does not match the week they are having. One written after a lost request contains the exception that really happened, and the person who lost the request will recognise it. Start with a rough process, run it, and write the SOP when something breaks.
One owner. A team cannot own a process. When the owner is a group, the review date passes without anyone noticing.
Verbs first. "Create the task" can be checked. "Ensure tasks are tracked" cannot.
Set a time limit on every step that waits on someone. The step that has no time limit is the step where requests sit.
Keep exceptions in the SOP. If an exception lives in one person's head, the SOP fails when that person is on holiday.
Cap the steps. If you need more than about ten, split the SOP. A process that long usually has two triggers hiding in it.
Test it with someone who did not write it. Hand the page to a new starter and watch where they stop. Each stop is a missing input or an unclear verb.
Where SOPs belong
Store them where people already work. An SOP in a folder nobody opens is read once. Pin it in the channel where the process runs, and link it from the task template so step 1 of the task points to the page.
Keep the change log honest. When the process changes, edit the SOP the same day and write the reason, so the next reader can tell a deliberate change from a mistake.
Run it in Slack
Make one intake channel, for example #client-requests, and pin the SOP there. Requests that arrive by email or phone get pasted in by whoever received them, which is step 1.
If your team uses the Kipwise Agent, tag it on a message in the intake channel and ask it to create the task. It reads the Slack thread, creates or updates the task in Asana, ClickUp or monday.com, and waits for your Approve card before the change is made. A message it posts also waits for an Approve card. The SOP stays the same whether a person or the agent does step 3. The Asana, ClickUp and monday.com pages list what it can write.
Related
For a general version outside agency work, see the SOP template and how to write an SOP. For the intake problem itself, read stopping client requests from disappearing in Slack. For the 30 days after a new client signs, use the client onboarding checklist.
What to do next
Pick the one process that lost a client request most recently. Fill in the template for it today, send it to the person who lost the request, and ask them to correct the exceptions table.


