Business System
CreativeOS
The system the company runs creative production on, from the first request through to sign-off in 13 localised markets.
- 13 markets, one workflow
- Four human sign-off points
- 22 AI review agents
- 25,709 assets shipped through the platform
Global creative production across thirteen markets generates a specific kind of chaos: requests arriving through four different channels, approvals stalling because someone is on holiday, the same asset localised twice, and no reliable answer to the question 'what did we actually ship last month'.
I knew exactly where it broke because I was the one operating it. CreativeOS is the system that replaced the coordination. Not a tool the team was handed, but the process they were already running, made explicit and given somewhere to live.
How a request flows through
- Request comes in
- Split & assign
- First draft
- Automated review
- Marketer feedback
- Final approval
- Localise + check (13 markets)
- Sign-off per market
- Local versions
- Goes live
The problem, precisely
- Requests arrived through whichever channel the requester preferred, so there was no single queue and no reliable prioritisation.
- Approval was a chain of people. One person on holiday stalled a market launch, and nobody found out until the deadline.
- Localisation drifted. Thirteen markets meant thirteen chances for tone, wording or seasonality to be wrong in a way nobody caught.
- Reporting was manual, which meant it was retrospective, contested and always slightly out of date.
What the system does
- Requests come in through either the ticketing tool or a form in the platform, and land in the same queue. The intake tool can be swapped later without rebuilding what sits behind it.
- Each request runs as one long-lived job with four points where a human signs off: splitting and assigning the work, feedback with the marketer, final approval, then sign-off in each market.
- It handles the real world. Stalled work gets chased, approvals reroute when someone is away, and a retried step never sends the same message twice.
- Localisation is an adaptation step rather than a translation step. Tone, wording, seasonality. A native speaker checks the result.
- There is a fast lane for one-off requests, because forcing a small job through a big process is how people start working around the system.
The automated review step
- Before a human looks at anything, a set of review agents does a first pass. The system reads the brief, extracts that brief's actual rules, and points the reviewers at those, so work gets checked against this brief rather than generic best practice.
- Separate reviewers for stills and video cover the hook, the message and copy, the call to action, imagery, layout, pacing, the end card and brand consistency.
- Each reviewer scores what it finds and how serious it is, then a second pass consolidates everything into one ordered list of changes rather than eight contradictory opinions.
- Restructuring it to make a single image call per review cut the review cost by around 85%. That was a cost-of-operation decision, not a technical one.
Visibility, and why it mattered
- Completed work is counted straight from the design tools and tied back to campaign and month, so nobody types the numbers in and nobody argues about them.
- Output can be sliced by type, global vs local, still vs video, country and campaign, including campaign-by-market heatmaps.
- It shows what was requested against what was delivered, how loaded the team is, and the split between in-house and external work. That is what turns a capacity conversation into a decision.
- Reports export with a server-stamped date, so a report cannot be quietly back-dated.
Where it went next
- A performance view over Meta ad data, with the creative metrics that actually matter. How many people stop scrolling, how many keep watching. Filtered by market, campaign, product and format.
- A rules-based scoreboard that says kill, watch or scale for each creative, and flags when the account is leaning too hard on one idea.
- Fatigue detection that drafts a refresh brief when a creative starts to fade, and can push an approved ad live. Always paused first, so a person makes the final call.
- A rights tracker that watches how long influencer content can be used and warns the owner before it expires, with a clear renew-or-remove decision. That turned a real compliance exposure into something that just runs.
- A companion Figma plugin that does the repetitive localisation work: duplicate the master per country, swap the country label, ensure both required sizes exist, drop local copy into the right layers, and report back where everything landed.
Delivery and ownership
- I designed the workflow, decided the rules, and delivered the system through AI-assisted development.
- Long-running jobs survive restarts, because a piece of work that takes three weeks cannot fall over halfway. When an upstream service is down it falls back to the last good data and says the data might be stale, rather than showing an error.
- There is a daily spending cap on the automated review, and a background monitor that spots recurring failures and surfaces them.
- I operate it. Adoption, exceptions, the settings for each market's tone and wording, access, the activity log, and key rotation without downtime are all mine.
The point
CreativeOS is what happens when the person running an operation is also the person who can make the system. Nothing in it came from a requirements workshop. Every rule exists because something specific went wrong first.