AI Blog Post Generator for SEO & AI Search

Daily blog posts in your brand voice, optimized to rank in Google AND get cited by AI search (ChatGPT, Google AI Overviews, Perplexity). Researched against authority sources, sitemap-aware to avoid duplicates, ready to paste into WordPress, Webflow, Ghost, or Notion.

Google Search Console impressions growing from near zero to ~6K in 6 weeks after publishing AI-generated SEO/AEO articles daily

Created by Chris Moen • Version 40 • 38 steps

Use this app

What you get

  • Daily blog posts in your brand voice, optimized to rank in Google AND get cited by AI search (ChatGPT, Google AI Overviews, Perplexity). Researched against authority sources, sitemap-aware to avoid duplicates, ready to paste into WordPress, Webflow, Ghost, or Notion.

Integrations

  • serpapi
  • firecrawl
  • resend
  • example
  • ai
  • email
  • publish
  • Set Up Your Daily Blog Drafts

How it works

  • Normalize installer setup input
  • Look up cached brand profile
  • Pick brand-profile artifact from search results
  • Parse cached brand profile JSON
  • Scrape homepage (Firecrawl)
  • Project homepage scrape result
  • Find about-page link from homepage
  • Scrape about page (Firecrawl)
  • Project about-page scrape result
  • Extract brand profile (LLM)
  • Apply user overrides on profile
  • Fetch existing post URLs (sitemap)
  • Build dedup context from sitemap + paste fallback
  • Find latest weekly-blog-content-calendar artifact
  • Pick weekly-calendar hit
  • Parse cached calendar JSON
  • Pick today's weekday topic
  • Generate fallback topic (no calendar available)
  • Generate SEO/AEO blog title
  • Extract search queries from title
  • Research the topic via SerpAPI + Firecrawl
  • Parse research JSON
  • Find citable authority sources for this niche
  • Parse authority sources JSON
  • Format authority + organic sources for writer
  • Write blog post (in brand voice, AEO-optimized)
  • Parse blog 3-section output
  • Slugify title
  • Strip HTML + truncate post body for summary
  • Extract a video-ready talking-point from the post
  • Parse video summary JSON
  • Build CMS publish payload
  • Parse installer-provided extra headers
  • POST post payload to installer's Publish connection
  • Render email subject + html + text
  • Send draft via Resend
  • Render markdown artifact (inline body)
  • Persist markdown to workspace blob

AI Blog Post Generator

Get a publishable blog post in your brand voice every weekday morning. Researched against real authority sources. Ready to paste into WordPress, Webflow, Ghost, Notion — anywhere.

What you tell us

Just two required fields at install:

  • Your website URL — we crawl your homepage and about page once to learn your brand name, niche, audience, and tone automatically.
  • Where to email drafts — any inbox.

Optional: schedule cadence, language, market region, CTA copy, manual brand-name / niche / audience / tone overrides (only needed if your site blocks scraping).

What you get

Every weekday at 8am UTC, a new draft lands in your inbox:

  • 1,500–2,000 words in your brand voice
  • Question-shaped H2s matching real user search queries
  • AEO-extractable answer block in the opening 100 words
  • One comparison HTML table — extracts cleanly into AI Overviews
  • 3–6 outbound @@INLINE_0@@ links to authoritative sources (.gov / .edu / industry leaders), all from real scraped corpus — never fabricated
  • 6–8 numeric / citable claims with named sources
  • FAQ section with 4–6 self-contained 40–60 word answers (FAQPage schema-ready)
  • Sitemap-aware deduplication — we pull your existing post URLs from your sitemap to avoid generating duplicates
  • Auto-derived CTA in your voice (or your override)

What you bring

Nothing. The flow author covers OpenAI, SerpAPI, Firecrawl, and Resend email costs.

Manually trigger or let the schedule run.

Auto-publish to your CMS (optional)

If you have a CMS with a REST API that accepts Bearer-token auth, drafts can be auto-published instead of just emailed. Three setup fields:

  • Publish connection — bind any HTTP connection (Bearer auth recommended) whose base-url points to your CMS host.
  • Publish path — relative path appended to your connection's base-url, e.g. /wp-json/wp/v2/posts.
  • JSON payload template — what your CMS expects. Use {{title}} {{slug}} {{html}} {{excerpt}} placeholders. Defaults to {title, slug, content, excerpt} if blank.
  • Extra headers (optional) — non-auth headers your CMS requires.

Template examples

WordPress (with Application Password):

{"title": "{{title}}", "content": "{{html}}", "excerpt": "{{excerpt}}", "status": "draft"}

Webflow CMS:

{"fields": {"name": "{{title}}", "slug": "{{slug}}", "post-body": "{{html}}", "_archived": false, "_draft": true}}

Ghost (custom integration with JWT in connection):

{"posts": [{"title": "{{title}}", "html": "{{html}}", "status": "draft"}]}

Generic webhook (Zapier, n8n, Make.com, custom backend) — defaults work, no template needed:

{"title": "{{title}}", "slug": "{{slug}}", "content": "{{html}}", "excerpt": "{{excerpt}}"}

Leave the publish fields blank to receive markdown by email only. The email is sent regardless of whether auto-publish succeeds — your draft is never lost.

How we choose what to write about

You don't have to pick topics. Each weekday morning we run a 3-stage research pipeline before writing:

  • Weekly strategy — Once a week, we generate a 5-slot editorial calendar for your niche. Each slot is framed around a real audience question your readers Google late at night, not around product variants. The strategist agent mines Reddit, Quora, and SERP related-searches for actual audience language.
  • Topic for today — From the weekly calendar we pick today's weekday slot (Monday's "panic-button" topic differs from Friday's "weekend project" angle). Calendar regenerates as it ages, so topics stay fresh.
  • Per-article research — Once the day's topic is locked, two parallel agents run:
  • Organic research: SerpAPI on the topic, then Firecrawl-scrape the top non-social results for a corpus of ~4-6 high-quality sources
  • Authority research: SerpAPI with site: filters against domains relevant to your niche (.gov, .edu, industry research bodies, recognized trade publications), then Firecrawl-scrape the top 3-5 for citable stats

Every numeric claim, percentage, and named authority in your article comes from this scraped corpus — never fabricated. The writer cites them by name with outbound <a href> links to the original source.

Sitemap-aware deduplication

Before generating a title, we fetch your sitemap (/sitemap.xml auto-detected, or paste a custom URL at setup) and pull all your existing post URLs. The title generator checks each candidate slug against this list and rejects collisions before writing. New articles never duplicate old ones — even after 100+ runs.

FAQ

How does the AI Blog Post Generator improve my search rankings?

This agent creates daily blog posts tailored to your brand voice. It researches authority sources, checks your sitemap to avoid duplicate content, and optimises every post to rank on Google and appear in AI search results like ChatGPT and Perplexity.

Can I customise the writing style to match my brand?

The workflow uses Firecrawl to scrape your homepage and about page, which builds a unique brand profile. You can also provide manual overrides during setup to ensure the writing style and tone match your business identity exactly.

Which tools and integrations does this workflow use?

The app uses SerpAPI and Firecrawl to research your topic and find high-quality authority sources. It then uses Large Language Models to write the content, Resend to email you the draft, and a direct connection to publish the post to WordPress, Webflow, Ghost, or Notion.

How do I get the generated posts into my website or blog?

Once you connect your chosen platform, the agent automatically formats the blog post into a publish-ready payload. It manages everything from slug generation to HTML formatting, then sends the final content directly to your Content Management System.