Core 30 Gap Analysis

Author: Caleb Ulku | Published: unknown | Source: transcript


Summary

Caleb shows the pre-build step for Core 30: a gap analysis that lists which Google Business Profile categories and services lack website pages, which existing pages need optimization to match the GBP structure, and the priority order to build in. He frames it as three steps — crawl with Screaming Frog, analyze the crawl against the GBP with AI, then double-check the AI — and as the difference between a systematic Core 30 and “adding random content.”

Screaming Frog’s free tier (≤500 URLs) is enough for most local sites. Export Internal All and Links All. In Claude he uses a course prompt with Opus 4.1 (not Sonnet), attaching Internal All CSV, pasted homepage copy, GBP categories, GBP services, and the city (demo: a Chicago carpet cleaner). While the prompt runs he filters Internal All to HTML + indexable rows and reads title tags, H1s, and H2s so he can sanity-check the model against the real page list.

The first Claude pass is useful and wrong. It correctly notes the homepage title matches the primary category (carpet cleaning service) and sees secondary categories (carpet installer, upholstery cleaning). It marks many services as missing — including “area rug cleaning,” which already exists as “Area rug cleaning in Chicago” among 222 pages. Caleb’s point: the output is a starting point, “not something to take and start producing.” Claude also lectures on URL structure; he dismisses that (“URL structure doesn’t matter. I don’t know why Claude is so fascinated with it”). After he tells Claude it missed the rug page, the model finds more real service pages, then admits it had ranked “priority” services as high-search-volume with no search-volume data. He makes it redo the analysis. After ~30 minutes of checking and re-prompting he trusts the list enough to treat it as three to four months of planned content.

He generalizes: AI speeds a multi-hour audit to ~45 minutes (his timing: ~10 minutes for the prompt, ~30 to verify), but first-pass crawl analysis often misses poorly optimized existing pages and recommends pages that already exist. Always verify every suggested page against the live GBP and the Internal All title-tag list, and verify that recommended optimizations make sense for the business. Next lesson tees the single-prompt content system that builds the pages this gap list identifies.


Key Claims

  • Core 30 starts with a gap analysis, not with writing: missing category pages, missing service pages, existing pages to optimize, and a priority order.
  • Stack: Screaming Frog (free ≤500 URLs) → export Internal All + Links All → Claude Opus 4.1 prompt (homepage copy + GBP categories/services + city) → human verification.
  • Do not ship the first AI pass. In the demo Claude missed an existing “area rug cleaning” page and invented high-search-volume priorities without data.
  • URL structure recommendations from Claude should be ignored; “URL structure doesn’t matter.”
  • A verified gap analysis is ~45 minutes of work and can plan 3–4 months of page production so you do not repeat the audit every month.
  • Priority should be based on value of the service to the business, not on unsourced “search volume” from the model.

Notable quotes

“You just can’t trust AI output blindly. AI makes mistakes, especially when analyzing technical data like website crawls.”

Why citable: The course’s own anti-automation caveat, demonstrated in the same video when Claude misses a live page and fabricates search volume. Stronger than generic “use AI” marketing elsewhere in the corpus.

“URL structure doesn’t matter. I don’t know why Claude is so fascinated with it.”

Why citable: Repeats the Core 30 lesson’s URL claim, now as a correction of his own model’s output. Primary exhibit for the “URL structure doesn’t matter” vs. Google starter-guide tension.


Connections

Entities mentioned: Caleb Ulku, Screaming Frog, Claude, Google Business Profile, Google Concepts referenced: Local SEO, Core 30, GBP–Website Alignment (Consistency Signals)


Contradictions / Tensions

  • “URL structure doesn’t matter” vs. Google Search Essentials (descriptive URLs) and vs. Claude’s own (training-data) insistence on URL hygiene. His operational point is “don’t delay Core 30 to rename folders”; the wording is absolute.
  • “AI analysis” as the method vs. this lesson’s demonstration that the same method’s first pass is not production-ready. When aggregating, prefer this verification requirement over the YouTube versions that make the Claude Core-30 checker sound one-shot.
  • Priority-by-service-value here vs. keyword-volume-driven page lists in conventional SEO. He only arrives at value-based priority after catching Claude’s fake volume. Don’t cite the first-pass “priority services” as his method.

Notes

Demo client: Chicago carpet cleaner, ~222 pages, primary category carpet cleaning service. Model specified: Claude Opus 4.1. Prompt lives “below the lesson” in Skool (not in the transcript). Commercial: this gap analysis is also the unlock homework for the Facebook ads classroom (see l1-facebook-ads). Transcript is relatively clean; no GVP glitch in this file.