Ad generation for regulated categories, where a headline has to clear platform policy, company brand and legal rules, and financial compliance. The rules are structured data the generator reads while it writes, and the same records score the audit afterwards.
Research tells you what the market is doing. AdRadar reads competitor campaigns and TechSpy reads their infrastructure. Neither writes your ads, and at PingPong, a B2B cross-border payments platform, writing them was the slowest part of the whole operation.
A single line of ad copy has to satisfy the platform's advertising policy, the company's own brand and legal rules, and financial compliance on top. Three reviewers, three queues, and a rewrite that sends the draft back to the start of all three.
Speed was never the missing piece. A draft could be produced in twenty minutes and still spend the rest of the week moving between three reviewers who each had a different rulebook open.
One product, one audience, one proof point, rewritten from scratch into four platform formats with four sets of character limits.
per platform, by handGoogle, Meta, LinkedIn and Bing each maintain their own rulebook and revise it on their own schedule.
queue 1The firm's own voice rules, competitor-mention rules, disclaimer requirements and discount limits.
queue 2The third reviewer. A change requested by any one of the three sends the draft back to the front of all three.
back to step 01The tools were already on the team's licence list. Each one solved a part of this and left the expensive part alone.
Volume and speed, at a fidelity that is perfectly good for most categories.
In regulated payments every draft still arrived at review needing work, so the writing got faster and the queue did not move.
RejectedCopy produced inside a system the team already paid for, with no new tool to adopt.
The same fidelity problem, plus no awareness of per-platform character limits or of the firm's own legal and brand rules.
RejectedThe real accumulated knowledge, written by the people who actually understood the rules.
A document applied from memory, consulted after the writing, and out of date the week a platform revised its policy.
Became the schemaThe spreadsheet was the useful one, and its problem was its format. Turning it into structured records the generator could read while writing is the whole build.
Review is expensive because it happens last. If the constraints are available while the copy is being written, most of what review used to catch never gets drafted.
So the policies became data instead of documents. Platform rules, company rules and compliance rules each live as structured records the generator reads, and the same records are what the audit pass scores against afterwards. One source, used twice.
CreativeOS is where two earlier builds ended up joined: the compliance reading from FinGuard and the platform-policy checking from AdGuard, now sitting inside the tool that does the writing.
A scan of your own landing page builds the product profile: what it offers, the funnel position, the audience and the claims the page already makes.
Generation produces distinct angles for the chosen platform and ad format first, so the variants argue different things rather than reword one idea.
Each angle expands into copy already shaped by that placement's specification, down to the headline and body character counts.
Every line is scored against platform policy, company policy and compliance rules, with the rule ID that fired attached to the finding.
Several models split the work, and a control plane holds the system prompts and the tools each agent is allowed to reach, so changing behaviour is a governed change rather than an edit inside a prompt string.
The people accountable for the rules maintain them directly. A compliance officer or marketing manager writes a company policy in the product, sets its severity, and chooses what happens when copy trips it: rewrite, warn, escalate or block. Legal reads the same records.
The platform side is a country-aware knowledge base rather than a banned-words list. Rules carry traceable IDs and source links, split into a global baseline and country-specific additions, alongside each placement's creative specification. When a finding appears, it says which rule and points at where that rule came from.
A person still signs off at the end. What changed is that they receive drafts that already respect the rules, so the review is a decision instead of a repair job, and the turnaround that used to span days fits inside one.
Campaign-first generation: pick the platform and ad format, get angle-led copy back.
Saved jobs with their angles kept, so a campaign can be reopened and iterated instead of rebuilt.
The validation pass, reporting findings against the rule that produced each one.
The company policy engine and the country-aware platform knowledge base.
The product knowledge library, built by scanning the pages the ads will point at.
Any model will write you an ad. The work that eats the afternoon happens after that draft exists, and all four pieces of it are mechanical enough to be owned by the tool.
It reads your own pages to learn the tone before it writes a line, so the draft arrives in the company's voice instead of a house style you then have to edit out.
Angles are stored against the campaign. Ask for more and it pushes into territory the campaign has not used, which is the difference between testing and repeating.
Counted with spaces, per field, per platform. A 27 of 30 headline is a headline you can paste; a 34-character one is a rewrite you find out about in the ads manager.
Platform policy and company policy shape the line as it is produced, with the reason attached, so the compliance pass stops being a separate round trip.
Coverage is four platforms with their formats built in: Google (Search, PMax, Demand Gen), Meta (Feed, Stories, Reels, Carousel), LinkedIn (sponsored content, lead gen) and Bing (Search, Audience, Shopping), with the company's brand, legal and compliance rules sitting as a fifth layer over all of them. The audit path also runs backwards, so existing copy can be pasted in and checked against the same rules before it goes live.
One thing the product refuses to claim: it does not guarantee platform approval, because no tool can. What it lowers is avoidable risk, and where a line is genuinely a judgement call it says so and asks for a human. Performance marketers, growth leads, marketing ops and founders running their own ads all reach for it at the same point in the process, once the drafting is done and the approvals begin.
ReactThe four-surface workspace.
TypeScriptIncluding the policy-rule types, so a malformed rule fails at build.
ViteBuild tooling.
TailwindThe design layer.
Gemini 2.5 FlashAngle generation and the per-platform copy pass, where speed matters more than depth.
Keeping the rulebooks as structured records rather than prompt text is what lets the same source drive the writing pass and score the audit afterwards. One source, used twice.
Nine systems shipped across compliance, reporting, intelligence and content.