Back to Experiments

SEO Agent

LLM AutomationNov 17, 2025
Priority:
(Medium)
SEOAgent

Result Summary

Good result, sufficient for personal bloggers or small websites


The SEO Audit Agent

Agent Setup

Requirements:

  • Free to use
  • No technical help needed
  • Handles ~5–20 websites
  • Reliability‑focused
  • To meet these needs, the stack uses:

  • Gemini API
  • SerpAPI
  • Jina AI Reader API
  • GitHub repo: Agent source code

    Full usage instructions are in the README. Even without programming experience, you can set it up in under 10 minutes with Claude’s guidance.


    API Limits

    While it’s effectively “free,” each API has limits:

  • SerpAPI (Free tier): 100 searches / month (≈ 100 website audits)
  • Gemini API (Free tier): Rate‑limited (e.g. ~15 requests / min)
  • Jina AI Reader: Currently free to use
  • For personal bloggers or small sites, these quotas are usually enough.


    Sequential Workflow (3‑Agent System)

    The system uses 3 agents in sequence:

    Agent 1: Page Auditor

  • Scrapes the web page using Jina AI Reader
  • Analyzes title tags, meta descriptions, and headings
  • Counts words and identifies keywords
  • Flags technical SEO issues
  • Surfaces content opportunities
  • Agent 2: SERP Analyst

  • Searches Google for your primary keyword
  • Analyzes the top 10 ranking pages
  • Identifies competitor patterns
  • Finds content gaps and opportunities
  • Suggests differentiation angles
  • Agent 3: Optimization Advisor

  • Combines insights from Agents 1 and 2
  • Generates a structured SEO audit report
  • Prioritizes recommendations (P0 / P1 / P2)
  • Provides a high‑level implementation roadmap
  • Estimates expected impact

  • Testing Results: My Substack Has So Many Issues

    I tested the agent on a previous post. For a simple blog site, the entire audit took about 3 minutes.

    You can see the full audit report here: SEO audit output.

    As an SEO outsider, I found the output very actionable. The agent surfaced multiple optimizations on Substack that I had been ignoring, such as:

  • Adding proper META data in Substack’s SEO settings
  • Writing meaningful alt text for images
  • The agent flagged these issues one by one, turning vague “I should fix SEO someday” into a precise checklist.


    4 Tips for Quickly Improving SEO on Substack

    1. Add Meta Data to Your Substack Posts

    Metadata is “data about data” for a webpage. It helps search engines understand and categorize your content.

    How to add it:

  • Open your article’s editing page.
  • Click Settings in the bottom‑right corner.
  • Go to SEO Options.
  • Fill in the SEO description field with a clear, keyword‑rich summary.

  • 2. Optimize URL Structure

    You can also edit the Post URL from the same SEO Options panel.

    From Colin Gardiner’s The Complete Guide to Optimizing Your Substack for SEO:

    - Keep it short, aim for 3–5 keywords maximum
    - Use your main target keyword near the beginning of the slug
    - Separate words with hyphens, never underscores or spaces
    - Remove unnecessary words like “the,” “and,” “a,” or “in”
    - Avoid special characters, numbers, or dates unless necessary
    - Make it readable by humans – it should make sense when read aloud
    - Match the URL closely to your post title when possible, but shorter is better

    Example (before and after):

  • Original default URL: https://ellen1889.substack.com/p/how-to-find-your-place-in-the-growth
  • Updated, cleaner URL: https://ellen1889.substack.com/p/find-place-in-growth-marketing

  • 3. Improve Image Alt Text

    Alt text describes an image for both accessibility and SEO.

    In practice, my main task here is to stop skipping it out of laziness and:

  • Describe what’s in the image
  • Include relevant keywords where natural

  • 4. Manually Submit URLs to Google Search Console (Early‑Stage)

    For newer or smaller Substack publications, Substack may not immediately generate a sitemap. That means Google may not index your content quickly on its own.

    Workaround:

    Use Google Search Console to submit each article URL:

  • Add your Substack as a property in Search Console.
  • Use URL Inspection for each article.
  • Click Request Indexing.

  • Other Optional Optimizations

  • Add a table of contents
  • Add a strong CTA (call to action) at the end
  • Add more internal links between your own posts
  • I have not implemented all of these yet, but I plan to add them gradually as my content library grows.


    Reflection: The Learning Flywheel of Building in Public

    There are countless SEO agents and tools. Most sat in my bookmarks unused—until I decided to publicly write a post about building an SEO agent.

    Suddenly my execution speed increased dramatically. Why?

    The Building‑in‑Public Learning Flywheel:

  • Public commitment turns “I want to learn” into “I must learn.”
  • Because there is an audience and a commitment, actions become more focused and efficient.
  • Action leads to learning.
  • Learnings become content.
  • Publishing content generates feedback.
  • Feedback deepens learning and increases motivation for the next cycle.
  • Over time, this turns learning + sharing into a self‑reinforcing loop.