Skip to content

Workflow · Content

Build an AI Content Batch Pipeline

Generate, edit, and publish 50+ pieces of content in one run — programmatic content production with quality controls and human-in-the-loop review.

Advanced4–6 hoursStack: Claude or GPT-5, Postgres, Cron / Trigger.dev, Next.js or Astro
ContentBatchSEOWorkflow
Edited by The AIKnowHub team · Editorial team

Problem

You need to produce a lot of content (programmatic SEO, glossary entries, comparisons, location pages). Doing it one piece at a time burns weeks. Doing it without controls produces AI slop nobody wants to publish.

Final output

Run a batch job that turns a CSV of topics into 50 publish-ready Markdown drafts in 30 minutes — each fact-checked, voice-matched, and queued for human review before publish.

Architecture

Topics CSV
  → For each topic (in parallel, capped):
    Outline LLM call (Sonnet)
    Draft LLM call (Sonnet, with voice examples cached)
    Fact-check pass (search + LLM)
    Edit pass (Sonnet, applies your style rules)
    Save as Markdown draft + metadata
  → Human review queue
  → Approved drafts → publish (commit to repo / CMS)

Step-by-step

  1. 01

    Build the topic input

    CSV with: topic, target_audience, target_keywords, internal_links_to_use, length_target, optional notes. Dedupe before processing.

  2. 02

    Outline + draft per topic

    Two-step: outline first (cheap), then draft against the outline. Use prompt caching for the voice examples + style guide.

  3. 03

    Fact-check pass

    For each draft, extract factual claims. Search for verification. LLM marks each claim verified / unverified / contradicted. Flag drafts with unverified claims.

  4. 04

    Edit + format pass

    Apply style rules (heading caps, link formatting, banned phrases). Run readability check. Add internal links from the queue.

  5. 05

    Save to review queue

    Save each draft as Markdown + JSON metadata. Build a simple admin UI for human review (accept / edit / reject). Approved drafts commit to repo or CMS.

Why batch matters

One piece of content takes 20 minutes of LLM-assisted work. Fifty pieces takes 1000 minutes — or 30 minutes if you batch correctly. The pipeline is the difference.

The non-negotiable: voice

Without voice samples in the prompt, your output sounds like every other AI content site. The quickest way to make AI content readable: include 5-10 paragraphs of your writing in the cached system prompt. Every piece inherits your tone for free.

Quality gates that actually work

In production-grade pipelines:

  1. Fact-check pass for any factual claim → flag unverified ones for review.
  2. Voice score via LLM-as-judge → reject anything below threshold.
  3. Plagiarism check (Originality.ai or similar) → skip outputs that lift too closely from sources.
  4. Internal-link enforcement → require 2–3 internal links per piece.
  5. Human review → 30 seconds per piece, 25 minutes per batch.

Skip any of these and quality degrades visibly within weeks.

What to NOT batch

  • Content with strong original opinion — write it yourself.
  • Personal essays — voice is the entire product; AI averages it.
  • Original research — AI synthesizes, doesn't discover.
  • Hot-take commentary — outdated by publish.

What batches well: glossary entries, comparison pages, location/industry variants, FAQ pages, programmatic SEO targets, internal documentation, course modules.

A weekly cadence

A typical content team running this pipeline:

  • Monday: topic planning, build CSV.
  • Tuesday morning: run batch (30 min).
  • Tuesday afternoon: review queue (2 hours, ~50 pieces).
  • Wednesday: edits + publish.

That's 3 days of process producing 50 pieces. Without the pipeline, the same 50 pieces takes 50 days.

A note on ethics

Programmatic content is a double-edged blade. Used well, it makes your knowledge accessible to more people. Used poorly, it floods the internet with mediocre content nobody asked for. The voice + quality gate + human review pattern keeps you on the right side. Drop them and you're contributing to the slop. Your call.

Prompt examples

Copy any of these, replace the placeholders, run.

Outline prompt

Generate an SEO-optimized blog post outline.

Topic: {{topic}}
Target audience: {{audience}}
Primary keyword: {{keyword}}
Length target: {{words}} words

Output JSON:
{
  "title": "Working title (under 60 chars)",
  "meta_description": "150-160 chars",
  "thesis": "1 sentence: what this post argues",
  "sections": [
    { "heading": "H2", "angle": "What this section argues", "key_points": [string] }
  ],
  "opening_hook": "1-2 sentence opener",
  "closing_takeaway": "1 sentence final line"
}

Rules:
- 5-8 H2 sections
- Each section advances the thesis (no fluff sections like "overview")
- Avoid generic headings ("What is X" only if literally a glossary post)

Fact-check pass

Extract every factual claim in the draft below. For each claim:

1. Quote the exact sentence.
2. Search results: {{search_snippets}}
3. Verdict: "verified" | "unverified" | "contradicted"
4. Source URL if verified

Output JSON: { "claims": [{ quote, verdict, source }] }

Draft:
"""
{{draft}}
"""

Cost estimate

Line itemApprox. cost
Outline (per piece, Sonnet)$0.02
Draft (per piece, Sonnet, cached system)$0.06
Fact-check search + LLM$0.04
Edit pass$0.02
Per piece total$0.14
Per 50-piece batch$7.00
Total per run (approx.)~$7.28

Costs depend on model choice, content length, and how aggressively you cache.

Optimizations

  • Prompt-cache the style guide + voice examples — applies on every piece, massive savings.
  • Run drafts in parallel (cap at 5–10 concurrent). 50 pieces in <10 minutes wall-clock.
  • Skip fact-check on opinion / how-to pieces; reserve for factual / comparison content.
  • Pre-build internal-link database; auto-suggest 2–3 internal links per draft.
  • Reuse research across topic clusters — one fact-checked source supports multiple pieces.

Common mistakes

  • Skipping the human review step — published AI slop kills brand trust.
  • No voice examples — output sounds like ChatGPT.
  • Generating 1000 pieces about overlapping topics — you waste budget on cannibalization.
  • Not deduping internal links — same link appears 5 times in one piece.
  • No metadata on drafts — can't track which pieces underperformed and why.

Frequently asked questions

Google's stance (mid-2026): content quality matters; production method doesn't. AI-generated content with genuine value ranks. AI slop with no value gets demoted. Quality controls (voice, fact-check, human review) are how you stay on the right side.