AI in Content Marketing - A Production Process That Raises Output Without Losing Quality
RETURN_TO_BLOG
Updated: AI & Automation 10 min

AI in Content Marketing - A Production Process That Raises Output Without Losing Quality

Paweł Wiszniewski
Paweł Wiszniewski
SEO & GEO Specialist · AI Engineer

AI won't replace a copywriter, but it can multiply their output - provided you build a process in which AI handles research, structure and first drafts, while a person brings experience, current knowledge and the final edit. Since 2023, Google has said plainly that it rewards valuable content regardless of how it was produced, but since 2024 it has treated mass production of thin pages as spam. So success depends not on how much content AI generates, but on which quality gates each piece passes before publication.

A real agency case where a copywriter went from 24 to about 60 articles a month: how to split work between AI and people, the process step by step, a Make and Notion architecture, pitfalls, a pre-publication quality scorecard and costs.

In this post I show a real case of an agency that served more clients with the same team, how to split the work between AI and people, the article production process step by step, the technical architecture, the pitfalls, a quality scorecard to check before publishing, and the real costs.

The case: an agency that ran out of hands

Tomasz runs a content marketing agency: three copywriters, 18 clients, four articles a month each, so 72 pieces. Each copywriter wrote 24 articles a month - a physical limit. In December the agency signed six new clients. A fourth copywriter meant about PLN 5,000 a month and three months of onboarding, and subcontractors at PLN 150 per piece delivered random quality.

I built a process for the agency in which AI prepares the research, structure and first draft, and the copywriter goes from writing from scratch to being an editor and expert. A copywriter who used to write 24 articles a month now produces about 60 at the same quality. The agency took on the new clients without hiring.

What AI does and what people do

/// ONE BRIEF → 8 CONTENT FORMATS

1× BRIEF + RESEARCH
→
AI pipeline (~60 min)
→
8 ready formats
BLOG ARTICLE
1800–2200 words
SEO, H2, case study
LINKEDIN POST
300 words
Hook + body + CTA
NEWSLETTER
600 words
Personal tone, insight
X THREAD
10–12 tweets
Each standalone value
VIDEO SCRIPT
10 min of speech
Different sentence rhythm
EXEC SUMMARY
1 A4 page
Numbers and decisions only
FAQ
8–10 questions
Schema.org-ready
EMAIL SEQUENCE
3 emails
Teaser → Dive → CTA
−75%
COPYWRITER TIME
3x
PRODUCTION VOLUME
2–3 mo
RETURN ON INVESTMENT
StageAIPerson
ResearchGathers audience questions, threads to check, suggested sourcesPicks what's true and important, adds industry sources
StructureProposes a heading plan matching search intentApproves it and aligns it with the business goal
First draftWrites a draft following the brief and brand rules-
Experience-Adds examples from practice, market observations, an opinion
FactsFlags every number and quote for checkingVerifies each number at the source
EditingSuggests cuts and style fixesSets the final tone and signs off on the text
SEO and GEOChecks topic coverage, suggests an FAQ and meta descriptionDecides on the final shape

AI won't replace three things: first-hand experience ("I've rolled this out for 40 clients and the same mistake always comes back"), current industry knowledge (models have a cutoff date) and a distinctive brand voice. A good process doesn't try to get around this - it simply assigns those elements to a person.

The article production process step by step

  1. 1.Brief. Topic, target keyword, reader persona, the three key ideas, sources and data to use, tone of voice. A good brief is half the quality.
  2. 2.Research with AI. The model generates a list of questions the audience asks, threads to check and possible sources. A person selects and adds to them.
  3. 3.Structure. A heading plan matching search intent, approved before writing - fixing a plan takes a minute, fixing a finished text takes an hour.
  4. 4.Draft. AI writes the first version following the brief and the brand rules document.
  5. 5.The expert layer. The copywriter or an expert adds examples from practice, their own data and opinion. This is the part competitors using the same model can't copy.
  6. 6.Fact checking. Every number, quote and name is checked at the source.
  7. 7.SEO and GEO. Checking topic coverage against the top results (for example with Surfer or Clearscope), direct answers at the start of sections, an FAQ and structured data. Details in the guide on how to write content AI cites.
  8. 8.Editing and the scorecard. The final edit and a pass through the quality scorecard below.
  9. 9.Publication. The draft goes to the CMS, and the editor clicks "publish".

You can then turn the finished article into posts, a newsletter and short video. I describe how to do it without sounding automated in the post on social media automation with AI.

The technical architecture

I built Tomasz's agency process on Make as the orchestrator and Notion as the editorial workspace:

  • The brief arrives in Notion through a form.
  • Make runs the next steps: research, plan, draft, topic coverage check.
  • All materials land in one Notion card with the status "to review".
  • The copywriter edits and changes the status to "ready".
  • Make creates a draft in the CMS (WordPress, Webflow or Ghost) with the title, content and meta description.

An example of the call that writes the draft. Keep the model in configuration - the same process works with models from different vendors, and the best one is chosen by testing on a few of your own texts:

content_pipeline.py
import json, osfrom openai import OpenAIclient = OpenAI()MODEL = os.environ.get("CONTENT_MODEL", "gpt-6.1-sol")

def draft_article(brief: dict, brand_guide: str) -> str: system = f"""You are an experienced B2B copywriter. You write specifically, with numbers and examples. You avoid filler like 'in today's fast-paced world'. You mark every number with [CHECK: source]. Target keyword: {brief['keyword']} Brand rules: {brand_guide}""" user = f"""Topic: {brief['topic']} Reader: {brief['persona']} Key ideas: {json.dumps(brief['key_points'], ensure_ascii=False)} Sources: {brief['sources']} Heading plan: {json.dumps(brief['outline'], ensure_ascii=False)} Follow the plan. Where an example from practice belongs, insert [EXPERT EXAMPLE].""" r = client.chat.completions.create( model=MODEL, messages=[{"role": "system", "content": system}, {"role": "user", "content": user}], ) return r.choices[0].message.content

The [CHECK] and [EXPERT EXAMPLE] markers are a simple trick: the draft itself shows the editor where to look up a source and where to add their own experience.

Pitfalls

  • Publishing without reading. One client published texts straight from AI for two months. Search Console showed zero clicks across 40 new articles: they all had the same structure, sentence rhythm and linking phrases. Every text has to go through a human edit that adds specific examples and changes the tone.
  • Unchecked facts. A model can produce a statistic that sounds credible but is wrong or outdated. Every number needs a source.
  • One prompt for every industry. A setup for an IT company won't work for a law firm. Each client needs their own brand rules document - 2-3 hours of work, but the result is radically better.
  • Reversed roles. AI prepares the material, a person decides. Not the other way around.
  • Mass production. Google treats hundreds of similar pages created just to capture traffic as spam (scaled content abuse). More in the post on AI content and Google's policies.

The pre-publication quality scorecard

Go through ten questions. A text goes out only with ten "yes" answers:

QuestionYes / no
Do the first two sentences answer the question in the title?
Does the text include an example or data competitors don't have?
Does every number have a stated source, and has it been checked?
Does the author have visible experience in the topic?
Does the text sound like the brand rather than the model's default style?
Have empty phrases and repetition been removed?
Do the headings answer the reader's questions?
Does the text cover the topic at least as well as the top results?
Is it clear what the reader should do after reading?
Would the text help the reader if Google didn't exist?

The last question matters most - it's essentially the test Google uses in its guidance on helpful, people-first content.

/// BEFORE / AFTER — AI PIPELINE IN CONTENT MARKETING

Articles/mo (1 copywriter)
24
60–72
+150%
Time per article + 8 formats
16 hrs
5 hrs
−69%
API cost per article
—
~0.80 PLN
marginal
Human review time
100%
30–40%
−65%
before: without AI | after: with AI pipeline + copywriter review

What it costs and saves

ItemWithout AIWith an AI process
Copywriter time per articleabout 4 hoursabout 1-1.5 hours (editing, examples, facts)
Articles per copywriter per month24about 60 (Tomasz's agency case)
Model cost per article-from a few cents to a few dollars, depending on the model
Process implementation-PLN 8,000-18,000 one-off

At 40 or more articles a month, implementation usually pays back within 2-3 months. Below 20 articles, payback takes 4-6 months. It makes the most sense for agencies serving many clients and B2B marketing teams with regular output. It makes the least sense for content built on the author's personal authority and in regulated industries without an expert to review it.

---

I build AI content production processes for agencies and marketing teams - from briefs and brand rules to integration with Notion, the CMS and SEO tools. I do this as part of content marketing and SEO and AI process automation. Get in touch - if you have more demand than production capacity, I'll show you how to change that without hiring more copywriters.

Worth reading next:

/// AUTHOR
Paweł Wiszniewski – AI & Web Engineer

Paweł Wiszniewski

SEO & GEO Specialist & AI Engineer

SEO/GEO specialist (10 years) and AI engineer (3 years). I build search visibility, AI systems and automations that reduce costs and improve operational efficiency.

Signal received?

Terminate
Silence

Initiate protocol. Establish connection. Let's build something loud.

> WAITING_FOR_INPUT...