Zodiac Tech CRM Docs

Creatives

How ad creatives travel from idea to approved asset — versioned, client-reviewed, and released for ads only when approved.

client admin ad-specialist Medium ⏱ 10 min Updated 2026-10-05

Creatives

A creative is the ad itself — image or video, headline, copy, and the offer it points to. Creatives in Zodiac Tech CRM are versioned (every revision is a new version, nothing is overwritten) and client-reviewed (you see and approve what will run with your name on it). Only after approval is a creative released "ready for ads".

Who this is for

  • Clients — approve creatives or request changes, from your own CRM.

  • Creative specialists — move creatives through the pipeline.

  • Ad specialists / QA — pick up creatives marked ready for ads.

  • Difficulty: Medium

  • Time: 10 minutes

  • Prerequisites: An agency workspace provisioned for your business (the creative pipeline lives in the agency console; approvals land in your /admin).

The lifecycle

flowchart LR
    A[Internal review] --> B[In progress]
    B --> C[Sent to client for review]
    C -- Approve --> D[Approved]
    C -- Request changes + comments --> E[Changes requested]
    E --> B
    D --> F[Ready for ads]

Additional states exist for completeness: brief required and content required (the creative needs a brief or assets before work can start), and changes requested loops back into production.

The rule that matters: a new version is created for every revision — the client's feedback is stored on the exact version it judged, so "what did we approve?" is always answerable.

Part 1 — Approve a creative (client)

1. Open Creative Approvals

  1. In your CRM open Ads → Creative Approvals (/admin/creative-approvals).

Expected result: creatives waiting on you (status client review) are listed as pending, each with the version's preview, copy and details.

2. Approve or request changes

  1. Review the creative exactly as a customer would.
  2. Choose:
    • Approve — the creative becomes approved and moves toward "ready for ads".
    • Request Changes — a comment box appears; write what must change (this is mandatory — a vague "not happy" just costs a round trip).

Expected result: your decision is recorded on that version (feedback stored on the creative version, status updated, audit logged). The agency side is notified. If you requested changes, a new version will come back through the same path.

Review like a customer, not a colleague You are the last gate before money is spent. Check the offer, spelling, prices and the contact path on the creative itself — not the email around it.

Part 2 — Produce and route creatives (agency)

3. Where creatives live

  1. In the agency console open Meta Ads → Creatives (requires the creative manage permission).

Expected result: the creative list with status and the assigned reviewer.

4. Send a creative to the client

  1. Open a creative that is ready for eyes (from internal review, in progress, or after changes), and use Send to client for review.

Expected result: the creative's status becomes client review; it appears in your client's Creative Approvals screen; the action is audit-logged (meta_ops.creative_client_review).

5. Handle the client's answer

  • Approved → use Mark ready for ads on the approved creative.

Expected result: the creative is released for ads — it can now be attached to campaigns. If the client requested changes, the feedback is on the version: produce a new version addressing every comment, and send that one to review.

Expected result

Every ad asset has a visible history: who made it, what version the client saw, what they said, what they approved — and only client-approved creatives can be "ready for ads".

Common mistakes

  • Editing an approved version. Don't — the system is versioned precisely so approvals stay honest. Make a new version.
  • Requesting changes without comments. The comments are mandatory on the client side; on the agency side, respect the intent — a changeless "changes requested" is unactionable.
  • Sending a half-finished creative to the client. Use internal review / in progress first; client attention is a scarce resource.
  • Assuming "approved" means "running". Approval releases the creative for ads; campaigns still go through the campaign workflow.

Troubleshooting

Symptom Fix
Nothing is pending for the client No creative is in client review — the agency must send one (above).
Cannot approve The creative is not in the client-review state (it may already be decided); refresh the page.
Feedback lost It is stored on the version row (client_feedback) — open the creative's version history in the agency console.
"Mark ready for ads" unavailable It only applies to approved creatives; check the current status.

Technical details

  • Agency/SA resources: App\Filament\Resources\MetaCreativeResource (agency, permission meta.creative.manage; also present in the Super Admin panel) and the Super Admin creative approvals page. States include STATUS_INTERNAL_REVIEW, STATUS_CHANGES_REQUESTED, STATUS_BRIEF_REQUIRED, STATUS_CONTENT_REQUIRED, STATUS_IN_PROGRESS, STATUS_CLIENT_REVIEW, STATUS_APPROVED, STATUS_READY_FOR_ADS.
  • Actions: Send to client for review (from internal review / changes requested / brief required / content required / in progress; audited as meta_ops.creative_client_review) and Mark ready for ads (from approved). A reviewer_id can be assigned.
  • Client side: App\Filament\Pages\CreativeApprovals (tenant /admin, Ads group). Decisions write client_feedback + status on the version row and are audit-logged. Creatives are versioned — a revision creates a new row rather than overwriting.

Was this page helpful?