Caleb Ulku demonstrates an AI agent he built that automates the full local SEO workflow — from GBP category auditing and gap analysis to content generation, schema markup, video creation, YouTube upload, and WordPress deployment — for under $1 per page in API costs. The system is built on a 'Core 30' framework where every GBP service and category gets a dedicated website page, supplemented by topical relevance content (scraped from People Also Ask, Reddit, forums) and geo-targeted location pages using Google Places API data. The content pipeline uses an 8-pass writing system designed to mimic human writing patterns, including burstiness variation, perplexity injection to remove AI word patterns, and human-sounding bookend sentences. A real-world test case shows a Malden, MA plumber improving from average position 6.18 with 15% top-3 map coverage to position 3.22 with 74% green coverage across the greater Boston area after one session with the tool.
Google's approach since 2018 of matching entities (businesses, services, geographies) rather than keywords, where ranking depends on how well all related entities align and reinforce each other.
View concept page →A local SEO website architecture strategy consisting of approximately 30 pages built from 3-4 GBP categories and 20-25 services, structured so the website exactly mirrors the Google Business Profile to signal trust and relevance to Google's algorithm.
View concept page →An AI content generation system that writes articles through eight sequential passes—research synthesis, strategic outline, section drafting, burstiness, perplexity injection, human bookends, conversion optimization, and final quality check—to produce human-sounding content.
View concept page →An automated AI-powered system that executes the full local SEO content workflow—entity research, GBP audit, gap analysis, content production, schema, images, video generation, YouTube upload, and WordPress deployment—in approximately 90 minutes at under $1 per page.
View concept page →The practice of building additional content that connects a business entity with its service entity by answering real questions people ask about that service, proving to Google the business genuinely performs those services.
View concept page →The practice of creating hyper-local content referencing specific landmarks and neighborhoods to prove to Google that a business operates in specific geographic areas, improving local rank map positions.
View concept page →A geographic visualization tool (also called a 'local SEO heat map') that shows exactly where a business ranks for a given keyword across different locations, helping identify gaps and guide optimization efforts.
View concept page →An analysis of competitor Google Business Profile categories in a target market to identify categories a client is missing that competitors are using, which represent lost ranking opportunities.
View concept page →A process of crawling a client's existing website and comparing its pages against all GBP categories and services to identify which service pages are missing and need to be created.
View concept page →A writing technique that varies sentence length and paragraph cadence to mimic human writing patterns, breaking the uniform rhythm that characterizes AI-generated content.
View concept page →A content editing pass that identifies and replaces predictable AI vocabulary patterns and clichéd phrases with more natural, human-sounding language.
View concept page →An AI writing approach where each H2 section of an article is generated with a separate, independent API call, producing natural tonal variation that mimics how human writers work across a session.
View concept page →The primary guest and SEO expert featured in the video, founder of an AI SEO agency that developed the Core 30 local SEO methodology and scaled to 97 plumber clients using AI-driven content and local link-building strategies.
View concept page →A writing pass that crafts the first two and last two sentences of an article with highly conversational, opinionated language, targeting the portions Google and readers weight most heavily.
View concept page →A third-party GBP management and local rank tracking tool that provides the rank map interface used to visualize local search positions and identify geographic targeting opportunities.
View concept page →Most agencies spend 60 hours or more and thousands of dollars in labor to rank a local business. Even with AI helping write content, you're looking at 30 to 45 minutes per page, times 30 pages or more. That's a significant amount of work per client before the full system is even in place.
The AI agent runs the entire local SEO process including entity research, Google Business Profile (GBP) audit, gap analysis, content production, schema markup, image generation, video generation, YouTube upload, and WordPress deployment. The full process runs in about 90 minutes of runtime at under a dollar per page in API costs. It uses a bring-your-own-key model with no markup.
Since 2018, Google doesn't match keywords — it matches entities. Your Google Business Profile is an entity, your website is an entity, every service you list, every category on your GBP is an entity, and your geography is an entity. Google constantly checks whether all of these entities match each other. The closer they match, the better you rank. The more gaps between them, the less Google trusts you. This means local SEO is fundamentally about aligning all your entity signals rather than stuffing keywords.
A GBP category audit involves researching what categories your Google Business Profile has (primary and secondary), and comparing them to what competitors are using that you aren't. Every missing category represents a search where Google will show your competitor instead of your business. For example, for a plumber in Malden, Massachusetts, the tool found 68 GBPs with 'plumber' as a category, and those businesses also used categories like electrician (17 times), heating contractor (14 times), and bathroom remodeler (8 times). The audit helps you identify which additional categories make sense to add to your GBP.
The Core 30 means creating one page for every category and service listed on your Google Business Profile — typically around 30 pages. The structure works as follows: the homepage targets the primary category plus city; each service gets its own dedicated page; internal linking follows the same hierarchy as the GBP (homepage links to secondary categories, and secondary category pages link down to the service pages under that category). The goal is to build a website that is an exact mirror image of your Google Business Profile, ensuring Google sees consistent entity signals across both platforms.
A gap analysis compares the services and categories on a Google Business Profile against the pages that actually exist on the website. The process involves: (1) pasting in the GBP categories and services and parsing them with the tool; (2) crawling the website to identify all existing pages and mapping each page to the correct service or category; (3) running a research comparison that identifies which services and categories have no corresponding page on the website. Those missing pages are then added to a bulk content generation queue. Most agencies skip this step entirely, which is a major reason their clients stay stuck for months.
Beyond the Core 30 pages, you need to build topical relevance and geographical relevance. Topical relevance connects your business entity with your service entity — it proves you actually do what you say you do. It's built by creating content that answers real questions people are asking about your service (from sources like People Also Ask, Reddit, competitor headlines, and local forums). Geographical relevance connects your business and service entities with a specific location entity — it proves you operate where you say you operate. It's built by creating location-specific pages targeting landmarks and neighborhoods in your service area. Both are essential; most agencies build neither. Weekly blog posts are not an effective substitute.
Geographical relevance content convinces Google that your business actually operates in specific locations within your service area. The process involves looking at your local rank map (using a tool like LeadSnap) and identifying areas where you're ranking 4th, 5th, or lower. For those weak spots, you zoom into the map and find real landmarks that appear on Google Maps — things like golf clubs, parks, stadiums, or community centers. You then write articles like 'Window Cleaning near Highland Falls Golf Club in Las Vegas.' The landmarks are pulled directly from the Google Places API, so Google already recognizes them. The goal is to turn a rank-4 position into a rank-3 rather than trying to move a rank-10 to rank-9, since rank-9 still gets no traffic.
Two main things kill local content: (1) It reads like every other page on the internet in that niche — when content is generic, Google has no reason to rank it and increasingly won't even index it. (2) It isn't genuinely local. Saying 'we serve the Malden area' isn't enough — content needs to reference specific local details like the triple-deckers in Medford, old pipe infrastructure in Somerville, or coastal weather coming off Revere Beach. The fix involves doing thorough research before writing (Reddit, local forums, People Also Ask, competitor sites, local landmarks), and using a multi-pass writing pipeline that mimics how humans actually write rather than generating everything in a single AI prompt.
The 8-pass writing pipeline works as follows: (1) Research Synthesis — compresses raw research (Reddit threads, People Also Ask, competitor angles, local landmarks) into a structured content brief; (2) Strategic Outline — builds the full page architecture with every H2 heading, section angles, and how sections connect; (3) Section Draft — writes each H2 section with a separate independent API call, creating natural variation in tone; (4) Burstiness — breaks up robotic rhythm by varying sentence lengths and mixing in short punchy lines and fragments; (5) Perplexity Injection — finds and replaces predictable AI word patterns (like 'robust,' 'leverage,' 'streamline') with language humans actually use; (6) Human Bookends — rewrites the first two and last two sentences with extremely conversational, opinionated language since those are weighted most heavily by Google; (7) Conversion Pass — naturally injects calls to action, phone numbers, and conversational language tailored to the content type; (8) Final Check — re-evaluates the entire article for correctness, cohesion, adherence to the original brief, word count, and any remaining AI patterns.
Writing each H2 section with a separate independent API call results in slightly different tone and angle for each section, which mimics how a real human writer drafts an article section by section over the course of a day. When a human writes, they take breaks, come back, and their energy and word choice shifts naturally between sections. This natural variation is what makes content feel like a person wrote it instead of a machine. Most AI content tools use a single prompt for one output, which produces a consistent robotic tone throughout — a telltale sign of AI-generated content.
Burstiness refers to the natural variation in sentence length and paragraph cadence that characterizes human writing. AI typically writes in a very consistent rhythm where sentences tend to be about the same length and paragraphs follow the same cadence. Humans, by contrast, write a long sentence, then a short one, then two medium ones, then a fragment. The burstiness pass in the writing pipeline goes through the entire draft and breaks up the robotic rhythm by varying sentence lengths, mixing in short punchy lines, and adding irregular pacing that makes content feel alive instead of generated.
While the 8 writing passes are running, the agent simultaneously executes several parallel steps: generating an FAQ section, generating the meta title, meta description, and H1 tag, generating schema markup, generating images with specific image generation prompts, and inserting highly relevant external links to authority sources. After the content is finished, the tool also renders a video script, generates the video, creates a YouTube title tag and description, uploads the video to YouTube, and publishes the entire page to WordPress with the video embedded. The result is a fully deployed page with no human intervention needed.
Before running the system, the plumber's GBP had an average rank map position of 6.18 with only 15% of the map in the top three, showing mostly orange (positions 7-8) across the greater Boston area. After running the system, the average position improved to 3.22 with 74% green coverage across the entire greater Boston area, including Malden, Medford, Somerville, Cambridge, Revere, Lynn, and Saugus. The remaining non-green spots ranked 4th or 5th, and one more round of geographical relevance pages would likely turn those green too. This was achieved in a single session, not through months of blogging or hundreds of backlinks.
The AI agent runs at under a dollar per page in API costs, using a bring-your-own-key model with no markup. Over the lifetime of the tool with 1,162 pages generated by real users, total token spend was approximately $700 — well under a dollar per page. The agency using this tool has seen their cost per article drop to under half of what it was before, while quality has actually improved. Most labor time has shifted from copy-paste prompting to double-checking and reviewing the content the tool produces.
The first two and last two sentences of an article are the ones that Google's algorithm and other AI systems weigh the most heavily. They're also the sentences that searchers actually read — people typically read the first couple of sentences, then scroll to the bottom and read the last ones. Because of this disproportionate weight, the writing pipeline includes a dedicated pass (Pass 6 - Human Bookends) that writes these specific sentences with extremely conversational and opinionated language. Getting those right matters more than the rest of the article combined.
When you fix entity alignment for Google — ensuring your GBP categories, website pages, and content all match and reinforce each other — you simultaneously become more visible to every AI model that is starting to replace traditional search. Google's own AI, ChatGPT, Perplexity, and Claude are all evaluating the same entity signals. So the work done to fix entity gaps for Google's ranking algorithm also improves your visibility in AI-powered search tools. This makes the investment in proper entity-based SEO doubly valuable as search behavior shifts.
In a completed run of 29 articles (53,000 words), the content achieved an average AI detection score of 39%. Individual articles varied — some scored as low as 10 (likely fine to publish as-is) while others scored as high as 65 (likely needing another editing pass to lower the AI score). The AI detection scores allow editors to prioritize their review time: low-scoring articles can go straight to publication while higher-scoring ones get a human editing pass. None of the content in the demo run had been touched by a human before scoring.
The internal linking structure should mirror the hierarchy of your Google Business Profile. The homepage should link to secondary category pages. Each secondary category page should then link down to the individual service pages that fall under that category. This creates a clear entity hierarchy that Google can follow, reinforcing the relationship between your primary category, secondary categories, and individual services — exactly matching how they're organized on your GBP. This structured approach is far more effective than random internal linking.
Weekly blog posts are generally a waste of time for local SEO because they don't address the core problem — entity alignment gaps. Instead of random blog content, agencies should focus on two specific types of relevance-building content: topical relevance pages (answering real questions people ask about your services, sourced from People Also Ask, Reddit, competitor content, and local forums) and geographical relevance pages (hyper-local content targeting specific landmarks and neighborhoods in your service area to prove you operate there). These targeted content types directly address Google's entity matching requirements, while generic blog posts do not.
Most agencies spend 60 hours or more and thousands of dollars in labor to rank a local business.
Since 2018, Google doesn't match keywords. It matches entities.
Every missing category is a search where Google is going to show your competitor instead.
If your client's website has fewer pages than their GBP has services, then you know what the problem is.
You basically build a website that is an exact mirror image of your Google business profile.
When you fix this for Google, you're simultaneously becoming visible to every AI model that's starting to replace traditional search.
Their suggestion is weekly blog posts, which is a waste of time. Do not do weekly blog posts.
I would much rather turn a 4 into a 3 than turn a 10 into a 9. Nine is still losing, not getting any traffic.
A plumber in Malden should be talking about the triple-deckers in Medford, the old pipe infrastructure in Somerville, the coastal weather coming off Revere Beach. That's what makes Google and the AI systems believe you're genuinely local, even if you've never set foot in that city before.
One prompt, one output. And it reads like AI wrote it because it did. One model, one pass, one consistent tone the whole way through. That is not how humans write.
The natural variation is what makes content feel like a person wrote it instead of like a machine wrote it.
AI has favorite words — robust, leverage, streamline. Humans don't talk like that. This is the pass that kills that AI sniff test.
What's the point of ranking a page if it doesn't make the phone ring?
This isn't six months of blogging. It's not hundreds of backlinks. That's this system executed by this agent in a single session.
Once you see it, you'll understand why most of what agencies charge for is about to become irrelevant.
Every missing category is a search where Google will show your competitor instead; Google matches entities not keywords since 2018
The tool scrapes nearby GBPs and shows how many times each category appears, revealing gaps in your client's GBP
Closing category gaps directly improves entity matching and ranking across those service searches
If a client's website has fewer pages than their GBP has services, Google sees an entity mismatch that hurts rankings
Internal linking should follow the same hierarchy as the GBP to reinforce entity signals
Most agencies skip this step, which is a primary reason clients stay stuck for months
Weekly blog posts are described as a waste of time; topical and geographical relevance pages are far more effective
Topical relevance connects your business entity with your service entity, proving to Google you actually do what you say
Focus on turning a rank-4 into a rank-3 rather than a rank-10 into a rank-9, since position 9 still gets no traffic
These landmarks come directly from Google's own database, making the geo-signals credible to Google
The geo planner tool is specifically designed to work with LeadSnap rank map exports
Generic local references don't convince Google or AI systems that the business genuinely operates in that market
Research is used to build a structured content brief that guides all subsequent writing passes
Skipping the outline phase causes AI content to wander; the outline maps what each section needs to accomplish and how sections connect
Separate calls per section mimic how humans write — slightly different tone and word choice per section — making content feel human rather than machine-generated
AI typically writes in a consistent cadence; irregular pacing makes content feel alive instead of generated
AI has favorite words that trigger AI detection; replacing them kills the AI sniff test
Google's algorithm and AI systems weigh these sentences most heavily; readers read the first and last sentences first
Ranking a page is worthless if it doesn't generate leads; this pass turns information articles into lead-generating pages
Multiple writing passes can introduce inconsistencies; the final pass catches what earlier passes missed
These elements should be produced in parallel with content writing so the page is fully built when content is done
Videos improve indexing on Google, improve ranking, and improve authority; this is done regularly for client content
The tool shows per-article AI detection scores; a score of 65 likely needs another pass while a score of 10 is probably fine
The video was produced before the tool but explains the foundation of what the tool is doing
All these AI systems evaluate the same entity signals; fixing for Google simultaneously improves visibility across all AI-driven search
Recommended as a local rank map and GBP management tool; affiliate link mentioned for half off first three months
"This is the tool LeadSnap. And with this, anything that's on this map, we know Google recognizes because this is Google... it's a very good tool. We use it for GVP management. There's a link in the description."
Central to the SEO process described; used for category audits, entity matching, and ranking
"What categories does the GBP have? What's the primary? What are the secondaries? What are the competitors using that this client isn't?"
Referenced as the basis for the rank map interface and landmark data
"This is a Google Maps-based interface."
Used by the AI agent to pull landmark data for geographical relevance content
"all of these landmarks are being directly pulled from the google places api this these are coming from google's own database this is not guesswork"
Mentioned as an AI system evaluating entity signals alongside Google, and as a search replacement
"It's Google's own AI, it's ChatGPT, perplexity, it's Claude. They're all evaluating the same entity signals."
Mentioned as an AI system evaluating entity signals alongside Google
"It's Google's own AI, it's ChatGPT, perplexity, it's Claude. They're all evaluating the same entity signals."
Mentioned as an AI system evaluating entity signals alongside Google
"It's Google's own AI, it's ChatGPT, perplexity, it's Claude. They're all evaluating the same entity signals."
Used as the deployment platform for AI-generated content; the agent publishes directly to WordPress
"publishes the whole thing to WordPress with the video embedded on the content. Fully deployed, no human needed."
The AI agent generates and uploads videos to YouTube as part of the content pipeline
"generates a YouTube title tag and description, uploads the video to YouTube, and publishes the whole thing to WordPress with the video embedded"
Scraped by the AI tool for real user questions to inform topical content research
"It's going to scrape Reddit and find these. It's going to scrape other local forums."
Speaker's own community offering access to the AI tool, prompts, and weekly live Zoom sessions
"It's all inside my AI SEO Pro community. I'll put a link in the description."
Referenced extensively as the search engine whose entity-matching algorithm the entire SEO system is designed around
"Since 2018, Google doesn't match keywords. It matches entities."