DEV Community

Cover image for Writing got easy. Knowing what to write didn't. So I built a content strategy platform.
Saied Alimoradi
Saied Alimoradi

Posted on

Writing got easy. Knowing what to write didn't. So I built a content strategy platform.

A few weeks into building this, I ran my own tool on a tester's site — a plumber — and proudly showed him the content plan it spat out. He read it for about ten seconds and said, "this could be for literally any plumber." He was right. It was generic mush. That was the moment I realized the hard part of this whole thing isn't the AI writing — it's everything that comes before it.

Because for a solo founder or a small business, AI basically solved writing. I can generate a decent 1,500-word article in 30 seconds. What it did not solve — and arguably made worse — is knowing what to write, and whether anyone (or any AI) will ever surface it. That gap is what I've spent the last few months building around, and I'm posting because I need people to break it. More on that at the end.

The version that embarrassed me

The first build was the obvious one: keyword research, scrape the SERP, cluster into topics, hand back a tidy plan. It demoed beautifully and was useless — for exactly the reason the plumber spotted. It only knew the category, not the business, so every plan came out the same. It also only cared about Google, right as people started asking ChatGPT and Perplexity for recommendations instead.

So I threw most of it out and started on the parts that are actually hard.

The three things that kept going wrong

I'll spare you the full architecture, but three problems ate most of my time — and they're the ones I'd most like other builders to weigh in on:

  1. Cannibalization. Small sites quietly end up with five pages competing for the same intent, splitting their own ranking. I landed on embedding every page, clustering them to spot the overlap, then running an LLM pass per cluster to decide merge / keep / rewrite. "AI writes 100 articles" tools make this worse, which is half of why I don't trust them.
  2. Generic output. The plumber problem. No prompt fixed it — better inputs did: feed the model the business's own services, its real pages, its actual demand data and competitor gaps, then constrain it to those. Grounded beat clever every single time.
  3. The AI-visibility blind spot. Ranking on Google no longer means an LLM will recommend you. So I had it query ChatGPT / Perplexity / Gemini the way a customer would and check whether the business is even named. That turned out to be the most interesting signal in the whole thing.

The objection I already agree with

Someone's going to say the web doesn't need more AI content. I mostly agree — it's the whole reason the cannibalization and audit steps exist. Helping someone write the five posts they're genuinely missing, and merge the twenty already fighting each other, is a different thing from spraying a hundred pages into the void. Whether I've actually pulled that off is fair game to argue with me about.

Why I bothered with the AI-visibility half

A few numbers that made me think it wasn't a gimmick: only around 1.2% of local businesses currently get recommended by ChatGPT (SOCi's 2026 index, 350k+ locations), fewer than half of Google-page-one businesses show up in AI answers at all, and Gartner expects traditional search volume to drop ~25% by 2026 as people shift to chatbots. Argue the exact figures if you like, but the direction seems hard to dispute.

This is where I need you

It's a free beta and it's genuinely rough in places — which is the point. I'd rather have ten people tell me what's confusing or dumb than one polite signup.

Easiest way in: the free report — paste a URL and see whether ChatGPT actually recommends that business, no signup needed → planmoon.app/for. Run it on your own site, a client's, or a competitor's. If you want to see the rest — the plan, the generated articles, the WordPress publishing — that's the account, and it's free while the beta's open, no card. Everything's at planmoon.app.

Two things I'd genuinely like torn apart:

  1. Small businesses without a marketing team are who I built this for — is an AI tool the right answer for them, or am I solving the wrong problem?
  2. Is "does an LLM cite you" a real, durable channel worth engineering for, or am I overfitting to 2026 hype?

And if you try it and it breaks or does something stupid, that's the most useful comment you can leave me.

Top comments (10)

Collapse
 
mohammad_hossein_cdf656c9 profile image
Mohammad Hossein

Great insight. I really like the shift from "AI can write" to "AI needs the right strategy." The plumber example made the problem instantly clear. Looking forward to seeing how this evolves—especially the AI visibility side. Best of luck with the beta!

Collapse
 
ali_1183d267ebd5bb016b480 profile image
Ali

The cannibalization piece is the part I'd poke at. Semantic similarity and search-intent overlap aren't the same animal — two pages can sit almost on top of each other in embedding space and still rank for completely different queries, and you'll also miss pairs that are worded differently but chase the identical intent. Did you validate the clusters against actual Search Console data (which of your URLs surface for the same queries)? I think I'd start from GSC query overlap as the ground truth and use embeddings as a secondary signal, not the primary one. What did your false-positive rate look like in practice — how often did it flag a "merge" that a human immediately overruled?

Collapse
 
saied_alimoradi_c444b0c63 profile image
Saied Alimoradi

This is the sharpest version of the critique and you're right that I conflated two things early on. Semantic similarity was my v1 primary signal and it burned me exactly how you'd predict — pages that looked near-identical in embedding space but ranked for genuinely different queries kept getting flagged as merge candidates. Where I've landed matches your instinct: GSC query overlap is the stronger ground truth, so it's now the primary signal and embeddings are the secondary "these might be related, go check" pass. The honest catch is that new or tiny sites often have thin-to-no Search Console data, and that's exactly the audience I'm building for — so for them I'm still leaning on embeddings more than I'd like, which is where most of my remaining false positives live. I don't have a clean false-positive number I'd stand behind publicly yet; it was low enough on the GSC-backed sites to be useful and clearly worse on the data-poor ones. If you've dealt with the cold-start version of this problem I'd take any pointer you've got.

Collapse
 
dave_d56cce119 profile image
dave

Not a developer, this just showed up in my feed, but the "what do I even write about" thing is my whole life so I clicked. Ran the free report on my pilates studio site expecting a shrug and it kind of stung — asked the way a client would and I wasn't in a single answer, three studios I've never heard of were. The gaps it listed actually made sense, which I wasn't expecting from an AI thing. One bit of honest feedback: it gave me the diagnosis but I stared at it not knowing which fix to do first. A "start here, do this one" would go a long way for people like me who don't speak SEO.

Collapse
 
saied_alimoradi_c444b0c63 profile image
Saied Alimoradi

This is the most useful comment I could've gotten, thank you — and a little painful because you've named the exact thing I keep under-building. You're completely right: a list of gaps isn't help if you don't know which one to touch first. Right now the plan does prioritize under the hood, but I'm clearly not surfacing it as a plain "do this one first" the way a non-SEO person needs. That's going straight to the top of my list. Quick question if you're up for it, since you're precisely who I'm building for: would you rather it just picked the single highest-impact thing and told you to start there, or show you the ranked list but make #1 obvious? I've been guessing at that and I'd rather hear it from you than guess.

Collapse
 
fahime_sohrabi_9a1781f042 profile image
fahime sohrabi • Edited

On your second question, since you asked for it straight: I've watched a lot of "new channels" get oversold — everyone tuning for featured snippets a few years back, and how much of that survived? "Get cited by the LLM" has a similar smell. I don't think it's nothing, but my worry is durability. The models retrain, the retrieval layer shifts, and whatever earns a citation this quarter can quietly stop next quarter, and you don't own any of those levers. Building a product whose headline value is a moving target someone else controls makes me nervous. How are you thinking about that risk? And when you measure visibility — is it a fixed prompt set tracked over time, or more of a spot-check? Because those two tell very different stories.

Collapse
 
saied_alimoradi_c444b0c63 profile image
Saied Alimoradi

The featured-snippet comparison is fair and it's the risk that keeps me up, so I won't hand-wave it. My honest position: I'm not betting the product on "gaming the citation." The moving target you're describing is real and I don't own any of those levers, you're right. What I'm betting on is that the inputs the models seem to reward — clear structure, content that actually answers the question, consistent business data, real authority signals — are the same fundamentals that survive a retrain, because they're roughly what good SEO already wanted. So if the citation channel evaporates tomorrow, the work still produced better content and better Google visibility; the AI-visibility part is upside, not the whole thesis. That framing might be cope, and I'm genuinely open to it being cope. On measurement: it's a fixed prompt set tracked over time, not a spot-check — same queries, same cadence, so the trend is comparable — but I'll be honest that the prompt set is my best guess at how a real customer would ask, which is its own soft spot. If you think there's a more defensible way to define that set, I'm all ears, because you clearly know this terrain better than I do.

Collapse
 
mohamad_mohamadi_af7df3c3 profile image
Mohamad Mohamadi

Really interesting approach! I think the hardest part of content creation is often not the writing itself, but figuring out what’s actually worth writing about and how to stay consistent.
I especially like the idea of turning content strategy into something more structured instead of relying on random inspiration. It feels like a practical solution to a problem a lot of developers and creators face.
Great work, and congrats on building and sharing it!

Collapse
 
citedy profile image
Dmitry Sergeev

ngl the part about the plumber site is so real. tool works great until you actually see how the target audience reads it lol

Collapse
 
saied_alimoradi_c444b0c63 profile image
Saied Alimoradi

exactly. the demo always looks great because you're grading your own homework. did the "any plumber" thing ever bite you on something you shipped? feels like everyone has one of these stories.