I automated the production of 100 SEO articles. Then Google started ignoring my pages.

I built AI agents to produce 100 SEO articles. Indexing problems, lost visibility and a big clean-up: here is how it went.

Category
Automation
Published
Updated
Reading time
10 min
Author
SBSébastien BalieuFounder of Numinam

I built a set of AI agents that could prepare up to 12 blog articles a week, spread across three of my websites.

This went well beyond a ChatGPT prompt that writes an article from a keyword. I had automated almost the whole production chain:

  • finding SEO opportunities,
  • analysing the competition,
  • choosing topics,
  • writing briefs,
  • producing the articles,
  • illustrations,
  • internal linking.

In all, my system produced more than a hundred articles, mostly for Numinam and Harmonia.

On Coddy, my other company, I had built something different: code inside the site itself that generated some of the content pages.

Two different systems, and fairly similar problems a few months later.

Pages dropping out of Google, new articles that would no longer get indexed, and rankings I had held for a long time starting to slide, sometimes vanishing altogether.

In June, I finally stopped everything to clean up.

At first, I just wanted to save time

I run several projects, each with its own SEO needs.

There’s Coddy, my urban adventure games company, active in 9 European countries. SEO is an important acquisition channel for Coddy, especially for local activity searches.

There’s Harmonia, my mobile app that helps families organise children’s chores and rewards.

And then there’s Numinam, my consulting and development business around digital growth.

Three projects, three different audiences and a pile of topics to write about.

The problem is time.

Between keyword research, competitor analysis, preparing briefs, writing, illustrations and publishing, a good article can easily take several hours.

And since I’m a developer, when a task takes me too long, I have an unfortunate habit of wanting to automate it.

So I opened n8n, created an Airtable base and started building my editorial production system. Bear with me while I walk you through it.

A strategist agent that works on Sunday mornings

The first step was deciding which topics I wanted to write about.

I had defined six editorial pillars, the main themes I wanted to develop across my sites.

These pillars lived in Airtable, which acted as the central database for the whole setup.

Every Sunday at 9 am, a strategist agent started automatically in n8n.

Its job was to prepare the editorial schedule for the coming days, for each site.

To do that, it pulled in several data sources:

  • Google Search Console to find the searches where my sites already appeared and spot room to climb.
  • SE Ranking to analyse keywords, search volumes and rankings.
  • Google search results to see which content ranked for the topics under consideration.
  • My competitors’ sitemaps to see which themes they covered.
  • The existing content on my sites to avoid producing the same thing twice.

The agent cross-referenced all this to pick the most promising topics and prepare the writing briefs.

I had also added a few safeguards against producing content for nothing.

For example, if the Airtable backlog already held enough briefs for the next few days, the agent didn’t create any more.

A JavaScript filter also checked for duplicates. If a keyword overlapped too much with one already in the list, it was dropped. Recently published keywords were also excluded for 90 days. That way, topics rotated on their own.

The goal was a system that chose what to write based on SEO data.

And frankly, I was quite pleased with the result.

Screenshot of the n8n workflow

A small army of AI writers

Once the briefs were ready, the writer agents took over.

I had planned a pace of 12 articles a week:

  • 6 for Coddy, spread across different customer segments.
  • 3 for Numinam.
  • 3 for Harmonia.

Each site had its own writing workflow, adapted to its audience, its editorial line and its CMS.

Every day, an agent picked up an available brief in Airtable.

It drafted an outline, wrote the article, added internal links to existing content and chose illustrations on Pexels.

For multilingual content, I had the French and English versions written separately.

Searches and phrasing change from one language to another, and I wanted each version to reflect that.

I had even added a pass through a skill I wrote myself, humanizer, to make the texts sound more natural.

Once finished, the article was sent to its CMS.

On Numinam and Harmonia, articles landed directly as drafts in Sanity, with their images and formatting.

On Coddy, they landed in a Teamwork task to be added to the site by hand.

Everything was logged in Airtable: the topics covered, the briefs, the articles produced and each run.

Screenshot of the Airtable backlog and editorial briefs

The system was fairly complete. And above all, it worked.

Over time, the agents produced about 100 articles, mostly for Numinam and Harmonia. Actual output sometimes fell short of the 12 articles planned each week. It was still a substantial volume.

All I had left to do was review the content and publish it.

Well, “review” may be overstating it.

I reviewed the articles, more or less

That’s probably where I started going wrong.

I had spent a lot of time designing the workflows, refining the prompts and improving how well the agents wrote.

The content arrived with its titles, paragraphs, images and internal links.

At first glance, it was fairly decent, and some of it even taught me things.

So I skimmed it, checked there were no errors and hit publish.

On Numinam, it was especially easy. All the articles arrived in Sanity and I could publish them in bulk.

In the end, I changed very little in the texts.

And I trusted my system. After all, every topic had been chosen from SEO data. Duplicates were filtered out, the briefs were detailed and the agents had fairly precise instructions.

Except that when I read some of the content more carefully, I started noticing problems.

The structures looked very alike. Some paragraphs were fairly generic. And several articles ended up saying roughly the same thing, even though they targeted different keywords.

They were clean, well presented and optimised.

But did they offer anything more than the top ten Google results?

Not really.

On Coddy, I had made the same mistake. Without AI agents.

The funny part: I had another content generation system running on Coddy.

And that one barely used the n8n agents at all.

Coddy runs adventure games in many European cities, so it needs pages specific to each destination to present its activities.

To avoid writing every content variant by hand (70 cities x 9 scenarios x 3 languages), I had built generation mechanisms straight into the site’s code.

The system could produce pages from existing data, adapting some elements to the city or the theme.

I won’t pretend otherwise: it was very handy.

But over time, we had piled up pages whose content looked very much alike.

And I started seeing SEO problems similar to the ones on Numinam.

On one side, articles written entirely by AI agents from fairly sophisticated briefs.

On the other, pages generated directly in the code.

Two different approaches, and in both cases a lot of content produced with little editorial input.

Google started giving my sites the cold shoulder

I keep a regular eye on my projects’ SEO performance, mainly with Google Search Console and SE Ranking.

At first, I just noticed that some new pages were struggling to get indexed.

I could publish an article, wait several days and find that Google still hadn’t added it to its index.

I started requesting indexing manually from Search Console.

Some pages still didn’t come back.

Then I noticed something more worrying.

Pages that had been indexed for a long time and held good rankings were starting to disappear or slip too.

Google also seemed to crawl some sections of my blogs less often.

On Coddy, I saw organic traffic drop by as much as 60% in a month.

The indexing problems and the loss of some long-held rankings worried me most.

Something was clearly wrong.

Ah yes, the famous thin content

In SEO, thin content means pages that give visitors little value.

Length has little to do with it.

You can write a 2,000-word article with a nice H1, well-structured H2s and every keyword you need, and still offer very little of interest.

And as I reread part of my content, I found plenty of those traits.

Generic paragraphs, topics too close to each other, information that already existed everywhere else.

The trouble was that my automation was mainly built to find SEO opportunities and produce articles that answered those searches.

It was much worse at judging whether an article brought anything new.

And because I was reviewing too fast, I let all of it through.

I can’t say for sure that Google penalised me for thin content. I received no manual action notice, and several factors can explain a loss of visibility.

Google describes this case in its spam policies, under the name scaled content abuse: many pages produced to manipulate rankings, with little or no value for users, however they were created. Among its examples, Google mentions using generative AI tools to produce lots of pages that add no value for users. The criterion is the value of the page, and AI is one production method among others.

But between the sometimes questionable quality of the content, the indexing problems and the falling rankings, I had enough clues to start worrying seriously.

In June, I stopped everything

I could have kept improving the prompts, adding new checks or trying other AI models.

But I already had a fair amount of published content that needed revising.

So I switched off the production automations.

No more new briefs, no more articles generated every week.

I wanted to fix the existing content before producing anything again.

On Numinam, I deleted nearly 50% of the articles

I started with the blog articles.

Some covered topics that were too similar, others were too generic, and several didn’t carry enough information to justify their existence.

I deleted nearly half of them.

Then I reworked my service pages to explain my offer better and give more specific information.

I’m still revising the pages about the different business sectors.

On Coddy, I deleted the automatically generated pages

I did a similar clean-up, adapted to the site’s structure.

I removed the mechanisms that generated content pages dynamically.

Then I went back over the city pages to give each one content specific to its destination.

And when you operate in several dozen cities, in 3 languages, that’s a lot of work.

I spent weeks rewriting content I had automated precisely so I would never have to write it by hand again.

Which is fairly ironic.

Four months later, things are starting to move

Since the clean-up began in June, I’ve seen SEO visibility in SE Ranking improve steadily.

Rankings for several tracked keywords are moving in the right direction.

I watch these indicators alongside organic traffic, especially for Coddy, where seasonality can make the curves quite misleading.

SE Ranking screenshot showing the change in visibility since June 2026

I can’t credit all of this progress to the clean-up. Google changes all the time, so do my competitors, and SEO depends on many factors.

But the results are encouraging.

I’m still reworking existing pages, and I haven’t restarted my production system yet.

So what do I do with my agents now?

I fully intend to reuse some of the tools I built.

The strategist agent, for example, did fairly interesting work cross-referencing data from Search Console, SE Ranking and my competitors.

The Airtable backlog management worked well too.

The writing part is what I mainly want to rethink.

I’d rather move to semi-assisted production: use the agents to prepare the research, identify opportunities and build the briefs, then get much more hands-on with the final content.

There’s also a feature I never quite finished: automatic performance tracking after publication.

My system could tell me how many articles had been produced, which briefs were done and what was planned for the following week.

I had planned to measure each article’s rankings 60 days after publication, but that part never worked.

So I knew exactly how much content I was producing.

I knew far less about what that content was actually worth.

For now, everything is still on hold. I’m finishing the clean-up before putting anything back into production.

The most frustrating part of the whole story is that I built this system to save time.

And now I’m spending even more of it cleaning up after it.

A bit ironic, all the same.