Build the production line
Briefs in, drafts out, images built from templates at a fixed size, everything landing in one queue. Running for three brands at once, which is what forced it to be a system rather than a set of habits.
Generative AI · Paid media · Automation
I have run a generative AI production line for three brands in a real marketing team. Weekly production time went from 40 hours to 8 and output tripled. The quality held because a person had to approve every asset before it could reach a live channel.
The shape of the work
Briefs in, drafts out, images built from templates at a fixed size, everything landing in one queue. Running for three brands at once, which is what forced it to be a system rather than a set of habits.
The publishing job reads an approval flag that only a person can set. If nothing is approved, it does nothing. That one constraint is why the output stayed publishable after month three.
Ad campaigns built and staged through platform APIs rather than by hand, performance pulled back on a schedule, and CRM records repaired every fifteen minutes so the reporting underneath stays true.
Every piece carries its format, pillar, planned date, approval state, and published ID. That is what lets you ask which pillar has gone quiet, or how many days of queue are left.
Prompting and QA
Most bad AI marketing copy fails in the same few ways, and once you can name them you can write a rule that catches them. I keep an explicit list and check every draft against it: em dashes, the rule of three, hedging, meta-commentary about the piece itself, sentences with no subject, fake-profound closing lines, and claims nobody could defend.
That list is not a style preference. It is a QA checklist, and it works better than asking a model to "write naturally", because each item is something you can point at in a draft.
I have also shipped a classifier that was tested before it went live, against six months of past leads where the answer was already known. It blocked about one in five and let every real buyer through. That is the standard I hold AI decisions to when they touch money.
Tools
| Area | Tools | What I have shipped with them |
|---|---|---|
| LLM work | Claude, Claude Code, the Anthropic and Bedrock APIs | Daily driver. Copy production, a written weekly report summary with a fallback, intent classification, and my own custom skills and MCP integrations. |
| Automation | Python, scheduled jobs, Rust for tools | Scripts that publish, repair CRM data, pull ad performance, and build reports. Every one logs and shows its own health. |
| Paid media | Google Ads, YouTube, the OpenAI Ads API | Structured testing, campaigns staged through APIs, and lead quality followed through to closed revenue. YouTube acquisition at a five times return for Koinly. |
| Creative | Image generation, templated post assets, scripted video | Ad creative and social assets produced to a fixed template so brand and copy cannot drift apart. |
| Data | HubSpot, Airtable, Search Console, GA4 | All through their APIs, not exports. If it cannot run again tomorrow without me, it is not finished. |
Evidence
40 hours to 8 across three brands, with the approval gate that kept the quality up.
Read the case studyMeta Conversions API with pixel deduplication on my own funnel, and closed deals pushed from HubSpot back to Google Ads.
Read the case studyCampaigns split by intent, one variable per test, every lead followed through to whether it was real.
Read the case studyA classifier backtested against six months of known outcomes before it touched a live form.
Read the case studyEight channels, a model-written summary, a fallback when it fails, and a deck that builds itself.
Read the case studyA dashboard over five systems that hands its context straight to an AI coding session.
Read the case studyClient build. Drafted outreach from live buying signals, with a person approving every message.
Read the case studyThe CRM plumbing that makes any of the performance numbers worth reading.
Read the case studyHow I work
Every system above got built that way: a small thing that ran on Monday, then improved each week because it was already in use.
The one thing I will not compromise on is that anything running unattended reports its own health. The failure mode of automated marketing is not a crash. It is a job that quietly stopped in March and a number that has been wrong ever since.
Confidentiality
The case studies describe methods and structures. Employer figures are rounded or given as change rather than absolute values. Account identifiers, campaign names, post copy, and anything about a named contact or deal are left out.
That includes screenshots. I will not show you another company's ad account or CRM, which is the reason the diagrams here are drawn rather than captured. I will walk through any of it in detail in a conversation, at the level of method.