Give each of the client's stakeholders one defined decision, tie that decision to a specific version, and record final sign-off only once every required approval covers the campaign as it stands now. A single Approved status cannot survive the ordinary case, which is the client's legal contact approving v4, their brand lead changing v5, and their marketing owner signing v6 without anyone checking whether legal's decision still applies.
The agency does not own any of those decisions. It owns the question of whether they are legible, and four of them have to be answerable without reopening an email thread: who at the client has to approve, what exactly each of them approves, which version they approved, and whether a later change puts their decision back on the table.
What is a campaign approval workflow?
A campaign approval workflow is the defined sequence of decisions that determines whether a campaign can move from production toward release.
On the client side those decisions usually belong to different people, and they are not four copies of the same approval. They differ in what they cover, and in what the agency needs back from each of them.
| Client-side role | Decision scope | What the agency needs back |
|---|---|---|
| Legal or compliance | Claims, promotional terms, disclaimers | An explicit decision scoped to the terms |
| Brand | Copy, tone, imagery, brand rules | An explicit decision scoped to the creative |
| Marketing or CRM contact | Campaign content and channel readiness | An asset decision |
| Final client approver | The campaign as a whole | Campaign sign-off |
Not every client has all four. Some route everything through one marketing contact who consults the others privately, which is fine as long as the agency knows that is what is happening. What is not fine is assuming it.
Collapse those decisions into one checkbox and you lose the ability to answer the only question that gets asked afterwards: whose approval covered the thing that went wrong. A workflow worth having, in campaign approval software or anywhere else, keeps them distinguishable.
Keep one more thing distinguishable while you are at it. When these stakeholders leave comments, that is feedback, and it belongs to client proofing. When they decide, that is an approval. The same person produces both in the same week, often in the same message, and only one of them authorizes anything.
Who should approve what in a marketing campaign?
Assign approval by decision scope, before review starts, rather than inviting every stakeholder to approve the whole campaign.
Giving four people the same Approve button produces four decisions that all mean something different and none of which state what.
Take an email promoting 25% off through Sunday. The client's legal contact owns the offer language and the disclaimer. Their brand lead owns the headline, the CTA wording, the image and the tone. Their marketing contact owns whether the campaign content is what they asked for. Their final approver owns whether the campaign proceeds at all. Legal does not need to hold an opinion on the hero image, and nobody at the client should be redoing the agency's QA.
Written down before the campaign starts, that becomes a matrix:
| Campaign component | Legal | Brand | Marketing contact | Final approver |
|---|---|---|---|---|
| Promotional claim | Approves | Reviews | ||
| Disclaimer and terms | Approves | |||
| Headline and body copy | Reviews | Approves | ||
| Images and visual treatment | Approves | |||
| Produced email | Reviews | Approves content | ||
| Complete campaign | Confirms readiness | Final sign-off |
The roles vary by client and the matrix is worth arguing about once, at kickoff, rather than repeatedly by implication during every campaign. What does not vary is that the argument has to be settled before the first proof goes out, not discovered during it, and that settling it is an agency job even though none of the decisions are.
Should legal and brand review in parallel or in sequence?
Parallel review means several reviewers evaluate the same version at once.
Sequential review means one stage finishes before the next begins. Neither is correct in general, and the choice turns on a single question: can one reviewer's changes invalidate another reviewer's decision?
When parallel review is right
Legal and brand can work on the same version simultaneously when their scopes do not overlap in a way that matters. Legal reads the disclaimer, brand reads the imagery and tone, the marketing contact checks the content is what they briefed. Three decisions, no dependency, no reason for anyone to wait.
Parallel is the default worth reaching for, because sequential review adds one full response window per stage. Four sequential reviewers with a two-day window each is eight days before anybody has seen the whole thing.
When sequential review is right
Sequential review is right when an upstream decision changes what the next reviewer needs to look at. The promotional offer is the usual example:
- The agency drafts the offer and the claim against the brief.
- The client's legal contact reviews the claim and the terms.
- Copy is revised to match legal's decision.
- The client's brand lead reviews the resulting wording and treatment.
- The client's marketing contact reviews the produced campaign.
- The final client approver gives sign-off.
Sending that campaign to brand in parallel with legal wastes brand's time, because the wording brand approves may not survive legal.
The real failure is neither model. It is a workflow that resolves itself by whoever at the client happens to reply first, which produces a sequence nobody chose and nobody can reconstruct. Sequencing the client's reviewers is one of the few levers an agency actually holds here, and it is the same lever behind cutting review rounds.
What happens when one approver requests a change?
A requested change should reopen the approvals that the change actually affects, and leave the rest standing.
Restarting all four stages for a corrected typo is how an account team learns to route small changes around the process entirely, which is worse than the problem it solves.
Start from this state:
| Client-side role | Version | Decision |
|---|---|---|
| Legal | Email v5 | Approved |
| Brand | Email v5 | Changes requested |
| Marketing contact | Email v5 | Waiting |
| Final approver | Email v5 | Waiting |
Brand asks for a different hero image, and the agency builds v6. Nothing in legal's scope moved, so under most approval rules legal's decision carries forward to v6 and only brand re-reviews.
Now change the request. Brand asks to rewrite the headline from "20% off selected products" to "20% off everything". That is a promotional claim, which is legal's scope, so legal's approval of v5 says nothing about v6. The version number moved in both cases. Only in the second one did the approval need to move with it.
So the rule is scope, not version count:
- Record what the reviewer asked for.
- Build the revised version.
- Name which parts of the asset changed.
- Map those parts onto the approval scopes in the matrix.
- Reopen the stages whose scope was touched.
- Carry forward the stages whose scope was not, with that carry-forward visible in the record.
- Allow final sign-off only when every required decision covers the campaign as it stands.
Step six is the one to get right. A carried-forward approval has to be legible as a carried-forward approval, showing the version it was originally given on. An approval that silently renumbers itself to the current version is indistinguishable from a fresh decision, and that is the exact ambiguity the workflow exists to remove.
How do you keep each approval tied to the version its reviewer saw?
Record every decision against the specific revision that was in front of the reviewer, and never move it forward when a new revision appears.
With four approvers on one asset the versions desynchronize immediately:
Landing page v4 Client legal approved the promotional terms
Landing page v5 Client brand asked for a new headline
Landing page v6 Client marketing changed the discount from 20% to 25%
Legal's approval belongs to v4 and stays there. It does not quietly become an approval of the 25% offer that appears in v6, and any system that displays it that way is producing evidence of something that did not happen.
The mechanics of keeping that straight, including which changes should send a version back for review, are covered in tracking approved campaign versions. Without that version context, an approval history can prove legal approved something. It cannot prove legal approved what shipped.
What is the difference between a review comment and a sign-off?
A review comment evaluates the work. A sign-off is a recorded decision, made by somebody with the authority to make it, covering a defined scope on a defined version. The two look similar in a chat window and they are not the same object.
These are all comments:
Looks much better.
Fine from my side.
I think we're good.
No further comments.
Thanks.
Every one of them sounds like approval. None of them states what was approved, which version was reviewed, whether the writer had authority to approve it, or what their decision covered. Six weeks later they are unreadable as decisions.
A sign-off is explicit, and it has a shape:
Client legal Email v7 Promotional claim and disclaimer Approved
Client approver Campaign at v7 Final release decision Approved
The practical consequence: a thread with every comment resolved is not an approved campaign. Resolving comments is how a version becomes reviewable. Sign-off is a separate action somebody has to take on purpose.
What should each approval record contain?
Nine fields make a decision reconstructable months later without asking the person who ran the campaign.
- Campaign
- Asset, or the campaign-level record
- Version reviewed
- Reviewer
- Role
- Approval scope
- Decision
- Timestamp
- Whether the asset changed afterwards
Fields five, six and nine are the ones agencies skip, and they are the three that make a multi-approver record different from a single-approver one. Without role and scope, four approvals look interchangeable. Without the last field, every approval reads as though it covers the current state.
Those nine fields are the raw material of a campaign approval audit trail. The test of one is whether it removes inference: nobody should have to deduce that legal approved v4 because a message reading "fine by me" happened to land between two attachments.
How do you stop the decisions ending up in Slack and email?
Treat chat and email as notification channels and keep the decision itself somewhere it can be found without a search.
One client campaign routinely spreads across five surfaces:
#summer-campaign agency Slack channel
Legal review email thread with the client
Brand feedback Slack Connect
Production task Monday.com
The asset itself PDF attachment or preview link
Five searchable places is not centralization. The decision history still has to be reassembled by somebody who was there, which is the failure mode rather than a step toward fixing it.
Slack saying "the client's legal contact has one open comment on the landing page" is useful. Slack being the only place that comment exists is not. The wider version of this problem, and what a single review location has to hold, is covered in how to centralize campaign feedback.
How do you know when the whole campaign has final sign-off?
Every asset being approved is not the same as the campaign being approved, because the asset approvals were given at different times by people looking at different things.
A promotion can reach this state and still not be cleared:
| Asset | Current version | Status |
|---|---|---|
| v7 | Approved | |
| SMS | v3 | Approved |
| Landing page | v6 | Approved |
| v2 | Approved |
Four approvals, and the campaign may still be missing legal on the WhatsApp wording, brand on the final landing page, the agency's own QA, or the client's release decision. It may also contain a contradiction between two assets that were each correct alone.
Asset-level approval answers whether one item is approved. Campaign-level sign-off answers whether the set moves forward together, at these versions, on these dates. The difference, and what the second one has to assert, is set out in what campaign-level approval means.
Is your approval workflow actually working?
The workflow works when the current state and the decision history are legible to somebody who was not involved.
Take a campaign that shipped recently and answer these:
- Who had to approve it?
- What was each of them responsible for?
- Which version did the client's legal contact approve?
- Which version did their brand lead approve?
- Did anything change after either decision?
- Which stages reopened as a result?
- Who gave final sign-off?
- Which campaign version did that sign-off cover?
An answer along the lines of "legal approved the PDF, then brand changed some things, and their marketing lead said fine in Slack" is a record of conversations. It is not a record of approvals, and the difference only becomes visible on the day somebody needs it.
In LaunchSign, each asset type carries its own pipeline of phases, configured per workspace, with a named owner on each phase and a phase blocking the next until it is done, which is how a sequential legal-then-brand order stops depending on who replies first. The approval level is set per phase: internal only, client only, or both. A review round is bound to the version sealed when the round opened, so a decision cannot slide onto a later edit, and verdicts are appended rather than edited or deleted. Campaigns are produced, proofed and approved there before execution moves to the platform the client already uses to build and send campaigns, such as Salesforce Marketing Cloud, Braze, Klaviyo or HubSpot. LaunchSign does not send, and does not connect to that platform.
What it will not do is decide the matrix for you. Who at the client owns the promotional claim, and whether a headline rewrite reopens their legal contact, is the client's decision about their own organization, and no tool can infer it from the file.
FAQ
Who should approve a marketing campaign?
The required approvers follow the client's own decision rights, not a standard list. At most clients a legal or compliance contact approves claims, terms and disclaimers; a brand lead approves copy, tone and creative; a marketing or CRM contact approves the content; and one named person gives the final campaign sign-off. Not every client has all four. The useful step is writing down which of them owns each component before the first proof goes out, rather than settling it mid-campaign.
Should the client's legal and brand contacts approve at the same time?
Ask for the two decisions in parallel when the scopes are independent, for example legal on the disclaimer and brand on the imagery. Move to sequential when one reviewer's changes are likely to alter something the other has to approve, which is usually the case with promotional claims: brand approving wording that legal then rejects wastes the round. Sequential review costs one response window per stage, so use it where the dependency is real.
Does every campaign change require legal approval again?
No. Evaluate the change against the scope of the existing legal approval rather than against the version number. A new image or a layout fix usually leaves a legal decision intact. A change to an offer, a claim, a term or a disclaimer does not, because the approver never saw the wording that shipped. The carried-forward approval should stay visible as one, showing the version it was originally given on.
How do you know when a campaign is fully approved?
A campaign is fully approved when every required role-specific approval and the campaign-level sign-off apply to the campaign as it currently stands. Positive comments and isolated asset approvals do not add up to that on their own, because they were given at different moments against different versions. The check is whether any approval predates a change inside its own scope.
What is the difference between approval and sign-off?
Approval usually describes a role-specific decision within a defined scope, such as legal accepting the promotional terms. Sign-off is the decision that a stage, or the complete campaign, can move forward. Both should name the version they were given on, and both should be actions somebody takes deliberately rather than sentiments read out of a thread.



