How to set up an approval workflow that does not stall, step by step

A step-by-step guide to setting up client approvals in HoopoeHQ, from the first client workspace to a recorded sign-off you can track across every client.

· 6 min read · Product notes

An approval workflow stops stalling when every deliverable in review has a named approver, a decision date and one place where the client can see what is waiting on them. This guide sets that up in HoopoeHQ, from an empty account to your first recorded sign-off, in about an hour of real work.

It assumes you have read why approvals stall in the first place. If not, why creative approvals stall is the five-minute version, and a client approval workflow that holds up covers the principles. This post is the practical half: which buttons, in which order, and the decisions to make before you press them.

Before you open the software: three decisions

Most stalled approvals were set up to stall on day one. Settle these with the client before the first review goes out, ideally in the kick-off call.

  1. Who approves, and who only comments. Reviewers give feedback. Approvers decide. Ask the client for as few approvers as they can live with, by name, and agree that everyone else is a reviewer.
  2. How long a round takes. Two or three working days per round is a reasonable default for brand and marketing work. Write it down.
  3. What happens when a date passes. Agree who you escalate to. A named escalation contact turns a stalled review into one polite email instead of five.
1Name the approvers

As few as the client can live with. Everyone else reviews.

2Agree a round length

Two or three working days is a sensible default.

3Agree the escalation

One named person when a review passes its date.

Step 1: start a trial and create the client's workspace

Start a 14-day trial. It needs no card, and it includes one client workspace and up to fifteen team members, which is enough to run a real client end to end. The trial includes your logo and colours, so the client sees your agency rather than ours.

Create a workspace for the client. Each workspace is isolated: your staff can see every client's workspace, and a client only ever sees their own, enforced on the server rather than hidden in the interface. That matters for approvals, because a review link or a comment can never surface in the wrong client's portal.

Step 2: invite the client's people

Invite the client contacts who will use the portal, using Invite someone to this workspace. Client users are free on every plan, so invite the people who genuinely need to see the work rather than rationing logins.

You do not need to invite every reviewer as a member. Occasional reviewers, such as a legal contact who sees one document a quarter, can review through a private link with no account at all. More on that in step 5.

Step 3: raise the request and give it a landing date

Every deliverable belongs to a request. A request can be raised by your team, sent in by the client through the portal or your public request form, or arrive by email. Scope it, assign it, and set a landing date: the day the person doing the work commits to, which the client can see on the request.

For repeat work, the workflow templates save time. Choose Use workflow in the workspace and pick a starter, such as brand and creative review, website launch, monthly content or campaign delivery. You can edit every request, checklist and target day before anything is created, and nothing is sent to the client by applying one.

Step 4: attach the deliverable

When the work is ready, add it to the request as a file or a link. Files can be up to 2 GB each. PDFs render in the review screen, and HTML runs in an isolated sandbox, so a client can review a page design without you hosting it anywhere.

Step 5: send work for review, with named approvers

Choose Send work for review. This is where the three decisions pay off.

Step 6: collect feedback and a decision

Reviewers pin comments to the exact spot in the file, so "third paragraph, second sentence, sort of" disappears. Each reviewer finishes in one of three ways: marks their feedback complete, approves, or requests changes. Comments on their own never close a review, which is what keeps a busy-looking review from quietly stalling.

If you need to send a revision, upload the new version to the same deliverable. Earlier review links become read-only, so nobody approves a superseded file by accident, and the pinned feedback stays with the history.

Step 7: track approvals across every client

This is the step most agencies never get to, because their approvals live in separate threads.

Step 8: the record

Every decision goes to an append-only log naming who approved which version and when. When a client asks in March who signed off the brochure in January, the answer takes one click. If you ever leave, a full export of the account is available on demand.

What this does not do

Being plain about the limits saves you a disappointing trial:

Questions agencies ask about setting up approvals

How do we track approvals across multiple client projects?

Keep every review in the client's own workspace, attached to its request, and work from a single list of what is waiting on whom. In HoopoeHQ that list is My feedback. The alternative, a spreadsheet updated by hand, goes stale the first week someone is on holiday.

Can approvals be tracked automatically?

The tracking can. Who has opened a review, who has decided and what is overdue should never need a person to update it. The decision itself should stay human: automatic approval after silence surprises clients and costs more goodwill than the delay it saves.

How many approvers should a deliverable have?

One, where possible, and never more than the client can name. Every extra approver in a sequence adds a handover and a wait.

Ready to try it on real work? Start a 14-day trial, set up one client, and send their next deliverable through the steps above.

All posts · Start a free trial