Client approval for Meta ads: four ways agencies get sign-off before anything goes live
The client wants to see the ads before they run. Meta has no approve or reject button, but it has preview links, Creative Hub mockups and paused ads, and each one breaks in a different place once a batch has forty ads in it. Here is what Meta documents, and which route fits which client.
The short answer
Meta has no approve or reject button. What it has are preview links for draft ads, Creative Hub mockups you can share, and the option to create ads paused so that someone switches them on later. Agencies build client approval out of those, or buy a tool that adds an approval step. Which route fits depends on two things: how many ads are in the batch, and whether your client has a role in their own ad account.
Everything Meta-specific below is quoted from Meta's help centre and Marketing API reference, checked on 24 September 2026. Claims by other tools are their own, from their websites on the same day. Our recommendations are labelled as ours.
1. A preview link from an Ads Manager draft
Meta presents this as the approval route: "Generate a preview link for any draft ad in Meta Ads Manager for review and creative approval." The client sees "how your ad could look in different placements, across mobile and desktop".
What to know before you send one:
- The client needs Facebook. Sharing "allows anyone with a Facebook profile, even people outside your business, to see your ad preview", and to open the link "you'll need to be logged into Facebook".
- The link is temporary. Link sharing "is off by default"; you choose "30 days or 60 days", and "when your ad is published, your previews are no longer viewable on that link".
- It is live, not a snapshot. "If you make changes to the unpublished ad, the changes will be reflected in your shared URL until the ad is published." What the client approved is whatever the draft looked like when they looked.
- It shows one variation. "The preview you share will only include your original creative and one potential variation of your ad."
- Not every format. "Pre-publish preview links are not supported for multi-media ads."
- One ad at a time. Meta's share flow starts from a single ad ("For your ad, click Share in the top right"), and we found no Meta page describing one link for a whole batch. Forty ads means forty links (our reading).
Good for a handful of ads. Painful for a weekly batch.
2. A Creative Hub mockup
Creative Hub is Meta's tool for building ad mockups before anything exists in Ads Manager, and Meta says its previews "can streamline the approval process". You can "share a preview link of your mockup with people whether or not they are Meta Creative Hub collaborators".
The catches:
- "Preview links aren't password protected" and they "expire after 3 months for security reasons".
- "The preview link shows the latest version of your mockup so your client can see updates you make." To freeze what the client approved, Meta suggests duplicating the mockup.
- Turning an approved mockup into an ad needs "an ad account role that allows you to advertise. For example, Advertiser or Admin", and some objectives are not supported ("Engagement (with the conversion location Facebook Page) and App promotion (Meta Advantage+ app campaigns)"), nor are "dynamic creative ads".
Good for concepts before production. It is a second place to build every ad, so it does not scale to batches.
3. A paused batch in the client's own ad account
Build the real ads, paused, in the client's account, and let approval be the moment someone switches them on.
Why it works:
- Meta reviews at creation. "When an ad is created, it will first go through ad review, and will have the ad status PENDING_REVIEW before it finishes review and reverts back to your selected status of ACTIVE or PAUSED." Meta even recommends paused during testing "so as to not incur accidental spend". So Meta's review runs while your client is still looking. More on that timing in Facebook ad review in bulk.
- The client sees the real thing. "If you own the ad account, you automatically have the Admin role", and Admins "can view all ads and campaigns". Paused ads show "Off" in the Delivery column.
- Approval leaves a record. Switching on is a toggle, and Ads Manager's activity history logs run status changes ("when you pause, resume or delete your ad"), with who did it. How to read that log is in who changed this Meta ad.
The catches:
- The client needs a role in their account and some comfort in Ads Manager. A client with only view access (Analyst, or "View performance" in the business portfolio) can look but not switch anything on, per Meta's role descriptions.
- Edits after approval restart review: Meta's triggers include "Creative (for example, images, text, links or videos)". Freeze the batch once it is approved.
This route works at any batch size, because the batch is already built.
4. An approval tool
Some launch tools add the approval step Meta lacks. From their own pages:
- Kitchn: "Preview the real ad, with every variant and placement, then comment and approve in one place. No staging campaigns; no preview links." Its pricing page lists "Client Approvals" under an Agency Suite whose price is not published. See our Kitchn comparison.
- AdManage: "One link. Every ad. No Business Manager login." and "No login and no Meta account required." See our AdManage comparison.
On their public pages, Ads Uploader, Rapid Ads and Blip do not offer a client approval step or a client preview link (checked 24 September 2026). Blip describes the paused route instead: "Launching paused is a safe way to review a batch in Ads Manager before it spends."
Side by side
| Route | Client needs | Fine for a 40-ad batch | Record of the approval | Main catch |
|---|---|---|---|---|
| Draft preview link | A Facebook login | No, one link per ad | Your own email or chat | Link is live until publish, then dies |
| Creative Hub mockup | The link (mobile preview needs the Facebook or Instagram app) | No, every ad built twice | Your own email or chat | Some objectives and formats unsupported |
| Paused batch in their account | A role in their ad account | Yes | Activity history shows who switched it on | Client must be at home in Ads Manager |
| Approval tool | The tool's link | Yes, per the vendors | Inside the tool | Price and a second tool to run |
Our default
- Concepts: a Creative Hub mockup, or a screenshot, before anyone produces forty variants.
- Weekly batches for a client with account access: a paused batch in their account. They switch it on, or reply "go" and you switch it on. Either way the activity history shows who did it.
- Clients without Meta access, or who want to comment on each ad: an approval tool.
- Always: freeze the batch after approval. A change after sign-off is a new review at Meta and, worse, an ad the client never saw.
Where Adlio fits
We are Adlio, so weigh this section accordingly. Adlio is route 3 by construction: every ad it creates lands paused in the client's own ad account, with that client's naming, UTMs and settings, and there is no way to create an active ad. It has no approval step and no client preview link of its own; if your clients must approve in a link, Kitchn or AdManage do that and we do not. On the Team plan, the history page shows who launched each batch. How it fits an agency week is on the agency page, and the checks we run on a paused batch are in the pre-launch QA checklist. The launch itself: how bulk upload works.
Frequently asked questions
Does Meta have a built-in approval workflow for ads?+
Not an approve or reject step. Meta lets you "generate a preview link for any draft ad in Meta Ads Manager for review and creative approval", share Creative Hub mockups by link, and publish drafts with Review and publish. The decision itself happens outside Meta, or by the client switching the ad on in their own account.
Does my client need a Facebook account to see a Meta ad preview?+
For a draft preview link from Ads Manager, yes. Meta: sharing "allows anyone with a Facebook profile, even people outside your business, to see your ad preview", and to open it "you'll need to be logged into Facebook". Some approval tools, such as AdManage, advertise preview links that need no login or Meta account.
How long does a Meta ad preview link last?+
A draft preview link lasts 30 or 60 days, which you choose, and "when your ad is published, your previews are no longer viewable on that link". Creative Hub preview links "expire after 3 months". A preview generated through the Marketing API is an iframe that "is only valid for 24 hours".
Does a paused ad go through review again when the client switches it on?+
Meta reviews an ad when it is created, paused or not: it has the status PENDING_REVIEW and then returns to the status you chose. Meta's list of edits that start a new review is targeting, creative (images, text, links or videos), optimization and billing event; switching an ad on is not on that list. Edit the creative after approval and it goes back into review.
Sources
- Meta Business Help: Share an ad preview in Meta Ads Manager
- Meta Business Help: About ad previews in Meta Ads Manager on desktop
- Meta Business Help: Share a mockup preview (Creative Hub)
- Meta Business Help: Troubleshoot mockup previews in Meta Creative Hub
- Meta Business Help: Create ads from mockups
- Meta Business Help: How to publish saved ad drafts in Meta Ads Manager
- Meta Business Help: What are the ad account permission roles in Meta Ads Manager?
- Meta Business Help: About ads in review
- Meta Business Help: How to turn an ad on or off in Meta Ads Manager
- Meta Business Help: View delivery status in Meta Ads Manager
- Meta Business Help: How to view activity history in Meta Ads Manager
- Meta Marketing API reference: Ad (status, review)
- Meta Marketing API: Ad Previews
- Kitchn home page (preview, comment and approve)
- Kitchn pricing page (Agency Suite, Client Approvals)
- AdManage: preview links
- Blip docs: launch options (active or paused)
Adlio team
Built by media buyers who launch Meta ads in volume. Questions or corrections: support@adlio.ai.
Topic cluster
Launch hygiene and QA
Naming, UTMs, identity, DSA and the paused review that makes a bulk batch safe to set live.
- Meta ads naming convention: a template you can copy, and how to apply it to every ad
- UTM parameters for Meta ads: set them once per account, apply them to every ad
- The pixel and conversion event per ad account: set once, verify on every launch
- Instagram account not showing in Ads Manager: the causes, and when you do not actually need it
- Adding ads to an existing ad set: what it does to the learning phase, budget and delivery
- Facebook ad review when you publish in bulk: timing, re-review triggers, and the paused-ads advantage
- Rolling back a bulk launch: pause many ads at once without resetting learning
- Managing multiple Facebook ad accounts: how to keep client A's settings out of client B's ads
- Meta ad account roles for agencies: who can build ads, who can publish them, and who can spend
- Who changed this Meta ad? Ads Manager activity history, and what it misses for agency teams
- Client approval for Meta ads: four ways agencies get sign-off before anything goes live
- Meta ads in the EU: the DSA beneficiary and payer fields, and how to stop them blocking your launches
Related guides
- ChecklistLaunch every Meta ad paused: the pre-flight QA checklist for bulk batches
- How-toMeta ad account roles for agencies: who can build ads, who can publish them, and who can spend
- How-toFacebook ad review when you publish in bulk: timing, re-review triggers, and the paused-ads advantage
- How-toWho changed this Meta ad? Ads Manager activity history, and what it misses for agency teams