approvalagencies

Client content approval: the rules and the checklist

How to run approval so an “ok” in a chat never becomes “that’s not what I approved” — a policy template, edit rounds, and a pre-send checklist.

The argument “that’s not what I approved” cannot be won if approval lived in a chat thread. Not because the client is wrong — because there is nothing to point at. That “ok” on Thursday referred to some version of the text, and which one does not follow from the thread. Below is how to run approval so the argument never comes up, plus two documents you can take away: a policy template and a pre-send checklist.

Why an “ok” in a messenger doesn’t work

The problem isn’t messengers as such. It’s three of their properties.

“Ok” isn’t attached to a version. You sent the text, the client asked to change one word, you sent it again — and the “ok” arrived after the third message but referred to the second. Two weeks later that is unrecoverable.

Edits are mixed into conversation. One thread holds “swap the photo”, “when does this go out?” and “morning”. Some edits get lost not through carelessness but because they are physically indistinguishable from chat.

The person who replies isn’t the person who decides. The account manager writes in the chat; the director makes the call and never opens it. Formally, approval happened. Practically, it didn’t.

Add that a post also has an image, a publication time and a channel, and that in a chat each of those is discussed in separate messages — and it becomes clear why “that’s not what I approved” happens even with a client acting in good faith.

What counts as approval

The working definition has three parts, and without any one of them approval is just an opinion.

  1. A specific version. What gets approved is not “the delivery post” but the text, media, channel and publication time exactly as they were on screen.
  2. A record. The fact of approval is stored separately from the discussion and can’t be edited after the fact.
  3. An identifiable person. You can see who approved, not “agreed in the chat”.

Everything else is implementation. You can do this in a spreadsheet with signatures or in a dedicated tool; what you cannot do is run it in a message feed.

An approval policy template

Take this and paste it into the brief or an annex to the contract. The clauses are written to be accepted without a lawyer in the room.

1. Delivery of materials. The agency delivers materials for approval no later than 5 working days before the publication date.

2. Response time. The client responds within 2 working days of delivery.

3. Form of response. A response means approving or rejecting a specific item. General comments without a decision are not a response.

4. Rounds of edits. Each item includes one round of edits. A second round applies only to substantive objections — a factual error, a legal risk, or a change of brief from the client.

5. Silence. If no response arrives in time, the item moves to the next free slot and the publication date shifts. Nothing is published without approval.

6. Who approves. On the client side, materials are approved by: (list by name). Decisions by anyone else are advisory.

7. Time-sensitive material. Reactive posts follow a short path: response within 4 working hours, no rounds of edits.

Three places where policies usually break, and why the clauses are worded this way.

Clause 5 doesn’t punish the client, it states a consequence. “We publish without a response” is a bad rule: one day it will publish something the client did not want. “The date moves” is a good one: it hands the deadline back to the client and risks nothing.

Clause 6 should be agreed before the engagement starts. It is the clause that closes the story of the director who never opens the chat. If there are several approvers, agree whether one is enough.

Clause 7 is for everyone. Without it, reactive posts either never go out or go out around the policy — and a month later everything is going around it.

A document full of posts is a poor carrier for approval: it doesn’t show how the post will look, it’s awkward to comment on piece by piece, and it has no status. A link to a page of materials solves all three at once.

What that page must have:

  • a preview as the post will actually appear — media, formatting and the channel it belongs to;
  • a decision per item — approve or reject each one, not “all approved”;
  • comments next to the item rather than in a shared feed, images included: “replace this with that” is explained by a screenshot in a second;
  • visible progress — how many of how many are approved, so the client knows where they stopped;
  • history — who approved what, and when.

And two properties people remember too late:

  • link protection. The link should carry a PIN or an expiry date: these materials are the client’s plans for the month ahead, and they should reach only the people they are meant for;
  • a separate link per set of channels. If the client runs several brands or venues, showing everything to one person isn’t always appropriate.

Edits: capping the rounds without a fight

Rounds are capped not by strictness but by the shape of the question. Compare “What do you think?” with “Approving this for Friday?”. The first invites discussion, the second invites a decision.

Three techniques that shorten the thread the most:

  1. Ask for a decision, not an opinion. “Approving?” produces an answer you can act on. “How do you like it?” does not.
  2. Separate “wrong” from “not to my taste”. A factual error is fixed out of turn. A taste note is a second round, and clause 4 applies to it.
  3. Send items back explicitly. A post should leave “awaiting approval” for “in progress” through a visible action, not disappear into a thread. Then every item has exactly one status at any moment, and “did we already fix this one?” stops being a question.

A pre-send checklist

Half a minute for the whole batch, and it removes most of the round trips.

  • every post in the batch belongs to one period and one client;
  • each post carries a channel and a publication date, not just text;
  • media are attached and open, not “we’ll send those later”;
  • links in the copy work and go where they should;
  • no internal notes or edit marks are left in the text;
  • names, prices and dates match the client’s latest brief;
  • if there are more than ten items, split them into two batches — long lists get approved worse;
  • the link has an expiry or a PIN if the material is sensitive;
  • the message to the client names the date you need an answer by.

That last one matters more than it looks: a link without a deadline reads as “have a look sometime”.

Read the media line more broadly than “files attached”. A post can be approved and still fail to go out — over an aspect ratio or a file format — and you find out on publication day. What to check in advance is covered in Instagram’s requirements for photos, video and captions.

Moving a client off the messenger

An abrupt switch usually fails — the client is asked to do something extra with no stated benefit. This sequence works.

Name the problem in their words. Not “approvals are inconvenient for us”, but “so nothing unapproved goes out on your channel and we stop asking twice”.

Keep the messenger as the notification channel. The link arrives where the posts used to arrive. What changes is not the channel of contact but the place where the decision is made.

Don’t require sign-up. Any password at the door is a reason to postpone. The client should open the link and see the materials immediately.

Walk through it together the first time. Five minutes on a call saves two weeks of getting used to it.

Refer to the policy, not the tool. The client agrees to clear deadlines and clear responsibility; the tool is merely what delivers them.

What to do about silence

Silence is the most common way a plan slips, and it is cured by process design rather than by reminders.

  • The response deadline is in the request itself. “We need an answer by Wednesday to go out on Friday.”
  • One reminder, the day before the deadline. More than that becomes background noise.
  • The consequence is already written down in clause 5, so the reminder carries no threat — you are simply reporting that the date will move.
  • Show approval statistics once a month — how many items passed first time, and the average response time. That is not pressure; it is a number, and numbers change behaviour better than persuasion.

How this works in Sonaco

Everything above is process, and it can be run with any tool that gives you a version, a record and a name. In Sonaco it is collected into one link: the client opens it without signing up, sees the posts with a native preview, approves or rejects each one, and comments — with images included — while the agency sees progress and the history of who approved what. The link supports a PIN and an expiry date, and different sets of channels can get different links. Sending an item back is a distinct action with a notification, not a message in a chat.

Start free trial

From there the approved post goes into the schedule and publishes itself — how to set that up in Telegram is covered in the channel setup guide. The planning it all starts from is in the content plan.