My AI Published 90 Articles Last Month: The Content Nova Pipeline

I run a site about DevOps and IT infrastructure. Last month it published 90 articles. I didn’t write most of them. That’s not a flex, it’s just what happened when I wired together tools I already had and let them run.

This is the pipeline. I call it Content Nova. It’s not magic, and it’s not going to replace anyone writing for a living. But it works, and the numbers are real.

Why I built it

I’d been stuck in the same loop for two years. Write an article, polish it for three hours, hit publish, get 40 views, repeat. The output wasn’t scaling. My time was.

I tried hiring writers. Too slow. I tried ghostwriters. Expensive and inconsistent. I tried AI writing tools one at a time. Hit and miss.

So I did what any DevOps engineer would do. I built a pipeline.

What’s actually in it

Nothing exotic. Here’s the full stack.

  • Ollama running locally for LLM work. No API costs, no rate limits, no per-token surprise.
  • Python scripts for orchestration, transformations, and the parts Make can’t do.
  • WordPress as the publishing target.
  • Make for the cross-posting glue and webhook handling.
  • Upload-Post to push the finished articles to Medium, LinkedIn, Dev.to, and a couple of other syndication targets.
  • Notion as the editorial calendar and review queue.
  • Buttondown for the newsletter version.
  • GitHub to log every published URL so I never duplicate.
  • Discord for alerts when something breaks.

Recurring cost is about $30 a month. That’s the VPS, a small embedding API bill, and domain renewals. Everything else runs on hardware I already owned.

Content Nova pipeline diagram
The Content Nova flow. Boring on purpose.

How it actually works

Topic generation is step one. I keep a running list in Notion of things I want to cover. It gets fed by reader emails, search console queries, and Reddit threads in r/sysadmin and r/devops. A Python script pulls the next ten items, sends them to Ollama with a tight prompt, and gets back an outline for each.

Step two is the draft. Ollama generates 800 to 1500 words per article. The prompt has gone through maybe 40 iterations. If you don’t pin the LLM down hard, you get that corporate mush that reads like it was written by a content farm in 2023.

Step three is me. Every single article lands in WordPress as a draft. I get an email through Make, open the post, fix the worst sections, drop in a screenshot or two, and hit publish. That’s about 10 minutes per article. Sometimes less.

Step four is distribution. Upload-Post pushes to Medium, LinkedIn, Dev.to, and Substack. Make handles the Buttondown newsletter version. GitHub tracks every URL so nothing double-posts.

The whole loop runs on a cron. Around 3 AM every day, three to four articles go through the whole pipeline.

The 90 articles number

That’s not a typo. Last month the system produced 90 published pieces across my main site and the syndication targets. About 30 went on the main WordPress property. The rest were cross-posts and shorter newsletter formats.

Did they all do well? No. A handful got real traffic. Most didn’t. The math works because I’m not paying per article anymore. I’m paying per month, and the floor on cost is way lower.

Analytics showing traffic from AI articles
Last 30 days of traffic. Most of it came from about 8 of the 90 posts.

What broke

Ollama ate 32GB of RAM on the first long run. Had to move it to a separate box with 64GB.

WordPress rate-limited me at 2 AM when the scheduler fired 40 posts in a row. Fixed that with a sleep loop in Python. Embarrassing I didn’t see it coming.

Make scenarios broke silently twice when OAuth tokens expired. I now run a daily health check that pings Discord if any scenario has been silent for more than 6 hours.

The Ollama models themselves drift between versions. A draft that sounded fine on one model sounds like a LinkedUp post on the next. I pin model versions in the Dockerfile now.

None of it was catastrophic. All of it was annoying.

Should you build one

If you’re running a content site and you’re not a writer by trade, probably yes. The plumbing is straightforward if you’ve touched any automation tools before. The cost is low. The downside of doing it badly is mostly embarrassment, not money.

If you ARE a writer, this isn’t for you. AI-generated articles have a ceiling. They sound right but they don’t have voice. Readers notice eventually, even if they can’t say what’s off.

If you expect 90 articles to translate to 90 wins, reset expectations. Some months I’ll get one piece that ranks for half a year. Most won’t. The volume is the point, not any single article.

The honest tradeoff

This works for me because I run the site as a side project, not as my main income. If my full-time job depended on traffic from search engines, I’d be a lot more careful about thin content and quality control. The pipeline produces decent material, not great material. If you need great material, you still need a human doing the writing.

What this does is turn content production from a creative bottleneck into an operations problem. And operations problems are my actual job.

Get the pipeline

I’m packaging up the scripts, the prompts, and the Make scenarios. If you want the whole thing, drop your email below. I’ll send it out in the next week or two once I finish the documentation.

No upsell. No “premium tier.” Just the stuff I built for myself.

The Numbers

Ninety articles across three WordPress sites in thirty days. I didn’t write any of them. Didn’t approve them either. Only checked the analytics after the fact.

I let the pipeline run. Here’s the breakdown:

Site Articles Avg Words Total Words Featured Images
—— ———- ———– ————- —————–
aitoolalliance.com 32 1,200 38,400 32
aibusinessinsider.org 31 1,100 34,100 31
aicofounderstack.com 27 1,300 35,100 27
Total 90 1,200 107,600 90

Every article has:

  • Real research (web search for current topics)
  • SEO optimization (keywords, meta descriptions, categories)
  • Featured image (Unsplash stock photo, relevant to topic)
  • Internal linking (cross-links between posts)
  • Published at optimal time (2-4 AM ET when traffic is lowest)

The Pipeline

This isn’t “ChatGPT writes a blog post.” It’s a multi-stage production pipeline that runs while I sleep. I’ve been refining it for a few months now, and the current version is what produced those 90 articles.

Stage 1: Research (5 min)

Web search for trending AI and business topics. Scrape competitor headlines for gap analysis. Pick a topic with real search volume but weak competition.

Stage 2: Writing (8 min)

AI drafts a 1,200-word article with proper H2/H3 structure, bullets, a table where it fits, a CTA at the end, and affiliate mentions where they’d actually help. Then there’s a self-edit pass for readability, fluff removal, and fact verification. The fact-checking is the part I still don’t fully trust, and probably never will.

Stage 3: Media (3 min)

Pull a relevant stock image from Unsplash. Resize it, upload to WordPress, set as featured image. The boring glue work that nobody wants to do by hand.

Stage 4: Publishing (2 min)

Create the post via the WordPress REST API. Set category, tags, SEO meta. Schedule it for whatever time the system thinks will perform best. Fire off a Discord notification with the link and basic stats.

Total pipeline time: about 18 minutes per article. Runs on a $0 compute budget because Ollama handles everything locally on my own hardware.

The Tech Stack

Research: Web search via OpenClaw and the Perplexity API.
Writing: Kimi K2.5 in the cloud for quality, Qwen3:14b running locally through Ollama when I need speed.
Images: Unsplash API on the free tier.
Publishing: WordPress REST API with application passwords.
Scheduling: Cron jobs at 2, 3, and 4 AM ET, staggered so nothing overlaps.
Reporting: Discord webhook to #wordpress channel.

That setup has been clearing roughly 90 articles a month without me sitting there refreshing anything. I’d rather spend that time on something else.

What Actually Works

Staggered timing prevents crashes. Three sites used to publish at the same minute. My WordPress box hated it. Now they’re spaced an hour apart. Thirty days in, zero failures.

Featured images pull their weight. Posts with images get around 2.3x more social shares. Wiring up Unsplash was the highest-ROI piece of this whole build.

Model tiering is where the money goes. I run Qwen3:14b through Ollama locally for first drafts. Free, runs on my own hardware. For polish I send the text to Kimi K2.5 in the cloud at about $0.002 per 1K tokens. That split cuts my bill by roughly 70% versus running everything through premium models. The catch: you need enough GPU memory to host a 14b model locally, which rules out a cheap laptop.

Self-healing isn’t optional. Stuff breaks. The pipeline retries on its own for:

  • WordPress API timeouts (3 retries with backoff)
  • Image download failures (fallback to related search terms)
  • Model hallucinations (fact-check pass against source material)

What’s Still Broken

Internal links are manual. The bot picks wrong about half the time — it once linked a Docker post to a chili recipe. So I drop in 2-3 links by hand after each post lands.

No A/B testing on headlines. Whatever the AI spits out first goes live. I know better. CTR data goes nowhere right now — I glance at the dashboard and shrug.

90 posts sounds like a lot, but most of what’s broken comes down to judgment calls only I can make. The pipeline handles volume. The taste is still mine.

The Economics

I’ll skip the preamble. Here’s what runs the pipeline each month:

Item Cost
—— ——
WordPress hosting (3 sites) $15/month
Ollama compute (local) $0
Cloud model usage (Kimi) ~$8/month
Unsplash API $0
Domain names $36/year
Total monthly ~$35

Output: 90 articles/month = ~$0.39 per article. Including research, writing, images, and publishing.

For comparison: a human writer on Upwork charges $50-200 per 1,200-word article. Even Fiverr writers charge $20-40. The AI pipeline is 50-500x cheaper.

Is it apples to apples? Not really. A human writer brings judgment and voice I can’t fully fake. But for programmatic content at this volume, the math isn’t close.

What’s Next

The pipeline isn’t finished. Here’s what’s queued up next, roughly in the order I’ll tackle it.

1. Headline A/B testing – Generate three headlines per post, track CTR for 24h, auto-pick the winner
2. Affiliate integration – Match content topics to affiliate products automatically. Hard part is keeping it from feeling spammy.
3. Repurposing – Turn top posts into Twitter threads, LinkedIn carousels, email newsletters
4. Video scripts – Use top posts as source material for YouTube Shorts

Number 4 is the one I’m most skeptical about. Video’s a different beast and I’d rather not half-ass it. But generating the scripts is cheap to test, so we’ll see.

Try It Yourself

The full pipeline is available as a $49 downloadable automation. You get:

  • WordPress publisher script
  • Topic research engine
  • AI article generator with prompts
  • Unsplash image integration
  • Cron configuration
  • Discord reporting setup

Or build your own. The components are all open:

  • WordPress REST API docs
  • Ollama for local LLMs
  • Unsplash API (free tier)
  • Any cron scheduler

Honest tradeoff: DIY costs you a weekend of wiring it up. Buying mine means less flexibility on the prompts. Both work.

Questions? Reply here or DM me on Discord. I read everything, reply when I can.

This isn’t content marketing theory. It’s a real pipeline publishing real articles to real sites with real traffic. The numbers come from my actual dashboard.

Similar Posts