On this page
TL;DR:
- Claude Code helps with SEO because it can read your site's files, your Search Console exports and public web pages, then run checks and make edits. It does the slow evidence work. You keep the decisions.
- The workflow that holds up has seven steps: record a baseline, study public data, keep a keyword map, use one writer per post, send each post to a separate fact-checker, block unchecked posts at build time, then measure and prune.
- Publishing AI pages in bulk is the main risk, and checking accuracy does not remove it. Google's scaled content abuse policy covers mass-produced pages that add little value, however they were made.
- llms.txt is optional. Google says Search ignores it. One large study found no link between having the file and being cited by AI tools, and another found that most of these files got no requests in the month measured.
- As of 8 November 2026, Claude's Free plan does not include Claude Code: Pro costs $20 a month, or $17 a month billed annually. The five prompts below are free to copy, and four of them work in a free chat tool.
Who this guide is for
This guide is for marketers, founders and small teams who own a website and want more of the right people to find it. You do not need to be a developer. You do need to be willing to read what the tool proposes before you accept it.
If you want to know what Claude Code is from the start, Anthropic's overview explains it.
What Claude Code adds to SEO work
Claude Code is an agent that reads your files, edits them, runs commands and fetches web pages, in the terminal, an editor, the desktop app or the browser. A chat window can give you SEO advice. Claude Code can check your advice against your actual site.
| SEO task | What Claude Code does | What you still do |
|---|---|---|
| Technical audit | Reads templates, sitemap and robots rules, then compares them with the live site | Decide what to fix, and approve each edit |
| Search Console analysis | Processes exported CSV files and finds near misses and decay | Judge what fits the business |
| Keyword planning | Keeps a map of pages and tests new ideas against it | Own the map |
| Writing | Drafts from a brief, with sources opened in the session | Supply first-hand knowledge and examples |
| Fact-checking | Runs as a separate agent and re-opens every source | Settle anything it cannot resolve |
It has limits. It knows your rankings only if you give it the data. Google's AI search guide warns that no third-party tool can see its internal ranking or AI systems, and that applies here too.
Price, as of 8 November 2026. Anthropic's pricing page lists Pro at $20 billed monthly, or $17 a month with annual billing ($200 up front), and Max at $100 a month. Both include Claude Code. The Free plan does not. Prices are in US dollars and exclude tax, so check what your bank charges for the conversion.
Your data. Claude Code sends your prompts, and the content it works with, over the network to the model. On consumer plans you choose whether your data can be used for training, as Anthropic's data usage page explains. Keep customer lists and lead forms out of the folder. Our guide to an AI usage policy covers what staff should never paste. If a file must stay on your machine, look at running an open-source model locally.
Permissions. In Manual mode, Claude Code asks before it edits a file or runs most commands, according to its permissions page. Keep it that way until you trust your setup.
The workflow at a glance
Most steps leave a file behind, so the next session continues from evidence.
| Step | Output |
|---|---|
| 1. Baseline | Search Console exports, dated |
| 2. Public-data study | Teardown notes with labelled evidence |
| 3. Keyword map | One primary keyword per page |
| 4. Writing | One post from one brief |
| 5. Independent check | A claims table and a status label |
| 6. Build gate | A build that refuses unchecked posts |
| 7. Measure and prune | Monthly log, then merge or improve |
Step 1: Record a baseline in Search Console
Export your Search Console data before you change anything, because without a starting point you cannot tell whether your work did anything.
The Performance report gives clicks, impressions, click-through rate and average position, grouped by query, page, country, device and date. Google's traffic drop guide uses a 16-month view, so save what you export if you want a longer record.
Five details decide whether your analysis is honest:
- Clicks are visits. Impressions are times you were shown. Confusing the two is how a modest site gets described as having huge traffic.
- Queries and pages sit on separate tabs. A table of queries and a table of pages cannot prove that two pages compete for one query. To check, filter the report to that query, then open the Pages tab. The Search Analytics API can group by both, but returns top rows and does not promise every row.
- Some older numbers need care. Google's data anomalies page lists a logging error that affected impressions, click-through rate and average position from 13 May 2025 to 27 April 2026. Clicks were not affected, so trust clicks when you compare across that period.
- AI features now have their own report. Google's Generative AI performance report reached all sites worldwide by 31 August 2026. Its help page lists impressions by page, country, date and device, and does not list queries, clicks or position.
- Indexing can be checked one page at a time. The URL Inspection tool shows whether a page is on Google, when it was last crawled and which canonical Google chose. Requesting indexing has daily limits and does not guarantee anything.
In Kenya, filter by country before you read anything. A site with visitors abroad can look healthier than it is at home. We also treat third-party keyword volumes for Kenya as rough at best, so your own Search Console queries are the better guide.
Step 2: Study public data before you copy anyone
Most of what a competitor does on its site is public, and Claude Code can collect it in an afternoon. Start with four sources: robots.txt, the XML sitemap, llms.txt and sample pages read as raw HTML. Add the Wayback Machine's CDX server to see how a site changed over time.
We ran this on a training company's site in November 2026. We are leaving its name out, because the method is the point. Here is what the public files showed:
- Sitemap
lastmoddates revealed batches of hundreds of pages on single days. - Sampling pages showed one repeating template: a direct answer first, then a contents list, then an FAQ.
- Two large batches published two days apart had very different median lengths, about 1,700 words and about 550, in small samples of 13 and 15 pages.
- A live page still showed placeholder text saying a fact needed verifying.
- The newest pages were the strongest, with dozens of linked sources and last-checked dates.
Label every finding as measured, estimated by a tool, or inferred. A sitemap shows what a site offers Google, and its lastmod date is meant to record when a page last changed. Neither tells you what Google kept or when something was written.
Testing a traffic claim. If someone says a site gets a huge number of monthly visits, work through this order:
- Look for a published source for the number.
- Find a free traffic-estimate rank for that site.
- Find a similar site at nearly the same rank whose visits are shown, and bracket a range from it.
- Ask for Search Console, with the date range and the clicks column visible.
In our test, public signals came in far below the claim. That did not settle it, because these tools are weak on small, mobile-heavy African sites. Only the fourth step can. Watch the summaries too. On one free traffic page, the second number beside a rank is rank movement, and an AI summariser reported it as visits.
Be polite. Fetch about one page per second. If a site refuses you with a 403 or a bot check, record it and use another source. Never disguise your requests.
Step 3: Keep a keyword map so posts do not compete
A keyword map is one file listing every page, its one primary keyword and the one question it answers. We avoid two pages chasing one query, because they can split links and clicks and leave Google to choose between them. The map stops that before anyone writes.
| Page | Primary keyword | Question it answers |
|---|---|---|
/services/payroll |
payroll services Nairobi | Who runs payroll for small firms in Nairobi? |
/blog/payroll-cost |
payroll outsourcing cost Kenya | What does outsourced payroll cost? |
/blog/paye-mistakes |
common PAYE mistakes | Which PAYE mistakes cost companies most? |
Three rules keep it useful:
- One primary keyword per page, and update the map before adding a page.
- A question becomes a heading on the mapped page or its own post, never both.
- When two pages overlap, merge them and redirect the weaker one.
The map's best use is saying no. In one project it stopped a planned post because a page already owned that query, and an audit found a near-copy page with a duplicate heading that had to be redirected into the main one.
Step 4: Use one writer per post, with one brief
Give each post its own agent and its own brief. Claude Code's subagents each run in a separate context, so a writer working on one topic does not carry another post's facts or phrasing into its draft.
Put your standing rules in one brief file that every writer reads: structure, voice, what you may claim about yourself, and how to source facts. A project CLAUDE.md loads at the start of every session, and Anthropic advises keeping each one under 200 lines. Point it at the longer brief instead of pasting the brief in.
The brief must demand something a generic answer lacks. Google's AI search guide advises against content that only repeats what is already online or could easily be produced by a model. Give the writer your own material: real questions from customers, mistakes you made, local prices, worked examples. If you have none on a topic, you may be the wrong site to write it.
Google asks you to review AI output for accuracy before publishing, and that includes titles, meta descriptions, structured data and image alt text. Add those to the brief.
Step 5: Send every post to a separate fact-checker
Use a second agent that has not seen the drafting, because a writer checking itself starts from its own assumptions. A standard subagent begins without your conversation history, which gives you that separation. A new session does the same.
The checker lists each claim, opens each source again and gives a verdict. These are real corrections from one batch of long guides that had already been self-checked by their writers:
| The draft said | The check found |
|---|---|
| A benchmark showed an average gap of a certain size | The paper reported a gap of up to that size |
| Tools stopped working in an app on a set date | Sources only said they were due to leave on that date |
| A law allows data transfers on three grounds | The law lists four, and one was missing |
| A figure applied to all institutions | It applied to those surveyed |
| A table of legal factors read as the full list | The Act has six, and the table showed five |
These are the small shifts that happen when a model paraphrases.
Make the checker show the source line for each verdict, because a checker can be wrong too. You can then spot-check the riskiest claims yourself in minutes.
Step 6: Block unchecked posts at build time
Instructions are advice. A gate is a rule. Anthropic says plainly that Claude treats CLAUDE.md as context, and points to hooks when something must always be blocked. So put your most important rule where it cannot be skipped: in the script that builds your site.
This small check stops the build if any post lacks a fact-check label or still contains a placeholder. We tested it on passing posts, failing posts, a file with no front matter and a missing folder.
import pathlib, sys
BANNED = ["Lorem ipsum", "lorem ipsum", "ADD SOURCE", "CHECK THIS"]
files = sorted(pathlib.Path("posts").glob("*.md"))
problems = [] if files else ["No posts found: check the folder name"]
for path in files:
text = path.read_text(encoding="utf-8")
parts = text.split("---", 2)
front = parts[1] if len(parts) == 3 else ""
if "independently fact-checked" not in front:
problems.append(f"{path.name}: no independent fact-check recorded")
for word in BANNED:
if word in text:
problems.append(f"{path.name}: contains {word}")
if problems:
print("\n".join(problems))
sys.exit(1)
print("All posts passed")
Change posts to your own folder, and run it before your build. Replace the banned list with your own placeholder markers and any claims your lawyer has told you to avoid. The gate can only read a label, so anyone can fool it by typing the words. Its value is making the missing step visible, so let only the checker set that label.
Inside Claude Code, a PreToolUse hook that exits with code 2 blocks a tool call. You could use one to protect files the agent should never touch.
Step 7: Measure, then improve or prune
Read Search Console about eight weeks after a batch goes live, and treat each page on its evidence. Improve what is close, build on what earns clicks, and merge or remove what earns nothing and helps nobody.
Keep a changelog with the date, the change and the reason. Then re-check the live site, because the code can say one thing and the site another. One audit found every post's canonical tag, plus the sitemap and RSS feed, pointing at an old address that returned 404. The cause was one unset environment variable. Prompt 1 below includes this comparison.
Why bulk publishing is the real risk
Google's spam policies define scaled content abuse as "many pages are generated for the primary purpose of manipulating search rankings". Google's examples include using generative AI to churn out large numbers of pages that give users nothing extra. The test is purpose and value to readers. AI use alone does not break the policy, and hand-written filler can.
Google's AI search guide adds a newer warning: creating a separate page for each variation of a query, to influence rankings or AI answers, can also break this policy.
Enforcement is regular. Google's status dashboard lists spam updates on 24 March, 24 June, 18 August and 24 September 2026. After the August update, SEO consultant Glenn Gabe published case studies of sites with programmatic and AI content losing rankings for between about 14,000 and over 200,000 queries, and wrote that recovery can take months. These are chosen examples, so they show what can happen and give no odds.
We know of no safe number of posts per day published by Google, and a fact-check does not make volume safe: an accurate page can still add nothing. Our opinion is to set your pace by how many posts you can properly check and improve with something of your own, and to raise it only when Search Console shows pages being indexed and earning clicks. A site-wide problem lands on the one domain your business depends on.
llms.txt: what it does and does not do
llms.txt is a proposed Markdown file at your site's root that gives AI tools a short, curated overview with links. Jeremy Howard published the proposal in September 2024. In our view it is worth an hour of work at most.
What it does not do:
- It does not help in Google Search. Google's AI features page says no new AI text files or special markup are needed, and its guide lists llms.txt among things you can skip.
- It does not control anything. Unlike
robots.txt, it cannot block or allow a crawler. - It has not been shown to raise citations. SE Ranking studied nearly 300,000 domains and found no correlation with AI citations, while noting that its result depends on the model and data it tested.
- It often goes unread. Ahrefs looked at 137,210 domains for May 2026 and found that 97% of the published files received no requests at all. AI retrieval bots made just 1.1% of the requests that did arrive.
What it can do: help when a tool is pointed straight at it. Anthropic's own documentation opens with a pointer to its llms.txt index for agents, and Claude Code was among the larger named AI requesters in the Ahrefs data. That suits software documentation, and a short, accurate file does no harm elsewhere. Keep it true, and update it when your offer changes.
What to do about AI answers
Google says AI Overviews and AI Mode rest on its normal Search systems, with no special technical requirements. Your job is good SEO plus four habits.
1. Decide which crawlers you allow. Search and training are usually separate, so you can choose.
| Company | For search answers | For model training | When a user asks |
|---|---|---|---|
| OpenAI | OAI-SearchBot | GPTBot | ChatGPT-User |
| Anthropic | Claude-SearchBot | ClaudeBot | Claude-User |
| Perplexity | PerplexityBot | Says it is not used for training | Perplexity-User |
For Google, Google-Extended governs Gemini training and grounding and has no effect on Search. A Search Console control removes your site from Google's AI features, at the cost of all traffic from them. Remember that robots.txt manages crawling and does not keep a page out of results.
2. Make your facts easy to find and hard to doubt. Put the answer in the first lines, keep important content in text that loads without JavaScript, and link to primary sources. Google says you do not need to chop pages into tiny pieces or write specially for AI.
Do not add an FAQ for the sake of a rich result. Google restricted FAQ results in 2023, and its anomalies page records them disappearing from May 2026. Write one if your readers really ask those questions.
3. Measure what you can. Use the Generative AI report in Search Console, and Bing's AI Performance report, which shows citations in Copilot, Bing's AI summaries and some partners. Both are free. Then run a monthly manual log: ask ChatGPT, Perplexity, Gemini and Google's AI Mode the ten questions your buyers ask. Record whether you were named, whether you were linked, and which page. Answers vary from run to run, so watch the trend.
4. Earn real mentions. Google says chasing artificial mentions across the web is less useful than it looks. Customer reviews, press coverage and being genuinely useful in your field last longer.
Copy this prompt
These five prompts cover the whole workflow, and they are free to use. Replace anything in square brackets. Start in Manual permission mode.
1. Teardown from public data
Do a read-only SEO teardown of [DOMAIN]. Do not edit any existing file. Do not log in, submit forms or use paid tools.
Fetch at most one page per second and respect robots.txt. If a site blocks you (403, bot check, empty response), record it and move on. Never change your user agent or look for a way round a block.
Save your evidence in a new folder called teardown-notes, then work in this order:
1. Read /robots.txt. List the sitemaps and any rules naming GPTBot, OAI-SearchBot, ClaudeBot, Claude-SearchBot, PerplexityBot or Google-Extended.
2. Download every sitemap. Count URLs by top-level folder and by lastmod month. List the ten dates with the most URLs.
3. Read /llms.txt if it exists and summarise what it claims.
4. Query the Wayback Machine CDX server for past captures of the sitemap. Compare the oldest usable capture with today. If there are none, say so.
5. Take a random sample of 40 content pages across the largest folders. Fetch raw HTML without running JavaScript. Record title length, meta description length, canonical, robots tag, H1, body word count, outbound links in the main content, FAQ present, schema types, author and visible date.
6. Describe the template: what repeats on nearly every page, and how each page opens.
7. Flag risks with URLs: pages under 600 words, placeholder text, pages that disagree on the same fact, and pairs aimed at one query.
Label every finding MEASURED, ESTIMATED BY TOOL or INFERRED. State plainly that a sitemap is not Google's index and that a lastmod date is not a writing date.
End with three lists: what to copy, what to avoid, and what you could not see. If this is my own site and the code is in this folder, also compare the live canonical, sitemap and robots output with what the code should produce.
2. Search Console analysis
The folder [FOLDER] holds CSV files exported from Google Search Console. This is read-only: do not edit anything.
First list the files, their column headers and the date range if stated. If query data or page data is missing, stop and ask me for it.
Calculate click-through rate yourself as clicks divided by impressions. If the export is not already filtered to [COUNTRY], ask me to re-export it with that filter.
Then give me four tables:
1. Near misses: queries at average position 5 to 20 with at least [50] impressions, sorted by impressions. If fewer than 20 qualify, lower the threshold and tell me.
2. Weak click-through: pages with many impressions and a click-through rate well below other pages at a similar position.
3. Gaps: queries that no page on [SITEMAP URL] clearly answers, judged from URLs and titles.
4. Decay: only if I gave you two periods, the pages that lost the most clicks.
For every row recommend one action: improve the page, merge, add internal links or leave alone. Recommend a new page only if no existing page could answer the query.
Rules: clicks are visits and impressions are times shown, so never treat them as the same. Do not claim two pages compete for a query unless one row holds both the query and the page. Instead, list the ten queries I should check by hand. Tell me to read Google's data anomalies page if my dates are old enough to be affected.
3. Keyword map and collision check
Look for [KEYWORD MAP FILE].
If it does not exist, build it. List every page from [SITEMAP URL OR CONTENT FOLDER] with its URL, one primary keyword, supporting terms and the single question it answers. Flag any pages sharing a primary keyword or question. Save the map and stop.
If it exists, read all of it and test this proposed post:
Working title: [TITLE]
Primary keyword: [KEYWORD]
Question it answers: [QUESTION]
Search the map and the site's own content for the keyword and close variants. Return one verdict:
NEW: nothing on the site owns this, so it can go ahead.
MERGE: an existing page should absorb it. Name the page and the section to add.
REFRAME: too close to an existing page. Propose a different keyword and angle.
Show the pages and lines behind your verdict. Do not write the post. Do not change the map until I say so.
4. One writer, one post
Write one article and work only on this article. Read [BRIEF FILE] first and follow it.
Primary keyword: [KEYWORD]
Reader: [WHO, AND WHAT THEY NEED TO DECIDE]
Question to answer: [QUESTION]
First-hand material to use: [FILES, CUSTOMER QUESTIONS, EXAMPLES, MISTAKES]
Rules:
1. Open with a direct answer. Start each main section with one too.
2. Every number, date, price, law, name and product feature must come from a source you opened in this session. Link it and record the date you checked it.
3. Use primary sources first: the regulator, the statute, the official product page.
4. If you cannot verify a claim, cut it and add it to your notes. Never cite research without naming it.
5. Date anything that ages. Say whether a bill is law and whether guidance is a draft.
6. Never invent a quote, client, result or example. If the material I gave you is thin, say so in your notes.
7. If a site refuses you, use another source or cut the claim.
8. Write no placeholders. Check the title, meta description and image alt text as carefully as the body.
Save the article to [PATH] with the status "self-checked". Give me your list of cut claims. Do not publish, commit or change any other file.
5. Independent fact-check
Run this in a new session or a fresh subagent that has not seen the drafting.
You are an independent fact-checker. You did not write this article and have not seen the writer's notes. Assume any claim may be wrong.
Article: [PATH]
1. List every checkable claim, including those in the title, meta description, tables and FAQs. Include generalisations such as "most" or "usually".
2. Open the cited source for each claim yourself. If none is cited, look for a primary source.
3. For each claim give the claim, the URL, the supporting line, the date opened and one verdict: SUPPORTED, OVERSTATED, WRONG, OUTDATED or NO SOURCE. If a site blocks you, write UNVERIFIED and never work around the block.
4. Look especially for an "up to" reported as an average, a sample reported as everyone, a plan reported as done, a draft reported as final and a bill reported as law.
5. Check every internal link against [SITEMAP URL].
6. Fix only the problems. Make the smallest edit that makes each claim true, or cut the claim. Do not rewrite for style.
7. If every remaining claim is SUPPORTED, change the status to "independently fact-checked [TODAY'S DATE]". If anything is unresolved, leave the status alone and list what is left for me to decide.
If you cannot use Claude Code
You can still run most of this for free. Search Console and Bing Webmaster Tools cost nothing. Prompts 2 to 5 work in a free chat tool that accepts file uploads and can search the web. Use a brand new chat for prompt 5. You lose direct access to your site's code and the build gate, so you will need a person to apply the edits and hold the line on the checking.
Other coding agents can do similar work. OpenAI's Codex CLI also reads and edits local files and runs commands. Google's Gemini CLI README says individual access moved to Antigravity CLI on 18 June 2026. The workflow matters more than the brand, so use the tool your team will actually keep using.
Questions people ask
Is Claude Code good for SEO?
Yes, for work that depends on evidence: audits, Search Console analysis, keyword maps and checking. It is less useful if you have no site files, no data and nothing first-hand to say. Treat that as our opinion, based on using it.
Do I need to know how to code to use Claude Code for SEO?
No, though you need patience. You must be able to open a terminal or use the desktop app, and read the changes it proposes. If your site runs on a hosted builder with no code access, the analysis and writing steps still work.
Will Google penalise AI-written content?
Google's policy targets mass-produced pages that add little value, however they were made. AI assistance is allowed, and Google asks you to check accuracy before publishing. Risk rises with volume, thinness and lack of review.
Does llms.txt help you get cited by ChatGPT?
There is no good evidence that it does. A study of nearly 300,000 domains found no correlation with AI citations, and another found that most files got no requests in the month measured. Treat it as an optional summary and put your effort into the pages themselves.
Can Claude Code connect directly to Search Console?
Google offers an API, and Claude Code supports connections to outside tools through MCP. CSV exports are the simplest start, because they need no credentials and you can see exactly what you handed over.
How many AI-assisted posts can I safely publish in a day?
We know of no number published by Google, and no check makes high volume safe. Publish only what has passed your fact-check and adds something of your own, and raise the pace only when Search Console shows your pages being indexed and earning clicks.
How do I know if AI tools are citing my site?
Check Search Console's Generative AI report, Bing's AI Performance report and your analytics referrals. Then ask the main assistants your buyers' questions each month and log the answers. No single tool covers all of them.
Sources
All links last checked 8 November 2026.
- Anthropic, Claude Code overview
- Anthropic, Claude pricing
- Anthropic, Claude Code data usage
- Anthropic, Configure permissions
- Anthropic, Subagents
- Anthropic, How Claude remembers your project
- Anthropic, Hooks reference
- Anthropic, Does Anthropic crawl data from the web?
- Google Search Central, Spam policies
- Google Search Central, Using generative AI content on your website
- Google Search Central, Optimizing for generative AI features
- Google Search Central, AI features and your website
- Google Search Central, Debugging search traffic drops
- Google Search Central, Introduction to robots.txt
- Google Search Central, Google's common crawlers
- Google Search Central Blog, Changes to HowTo and FAQ rich results
- Google, Search Analytics API: query
- Google Search Console Help, Performance report
- Google Search Console Help, Generative AI performance report
- Google Search Console Help, Search generative AI control
- Google Search Console Help, Data anomalies
- Google Search Console Help, URL Inspection tool
- Google Search Status Dashboard, Ranking and spam updates
- Glenn Gabe, GSQI, "August 2026 Google spam update case studies" (31 August 2026)
- Microsoft Bing Blog, AI Performance in Bing Webmaster Tools (10 February 2026)
- The /llms.txt proposal
- SE Ranking, LLMs.txt and AI citations study
- Ahrefs, llms.txt study (15 June 2026)
- OpenAI, Overview of OpenAI crawlers
- Perplexity, Perplexity crawlers
- Sitemaps.org, Sitemap protocol
- Internet Archive, Wayback CDX server documentation
- OpenAI, Codex CLI
- Google, Gemini CLI repository
Where FuKazee fits in
FuKazee trains teams in practical AI for the work in front of them. We assume nobody in the room knows AI yet, avoid jargon and show the free version of each tool. We do not promote one vendor, and we are clear that nobody becomes an expert in a few days. Since 2022 we have trained more than 3,000 people.
A workflow like this one sticks only when a team practises it on its own work, which is why we build sessions around your team's real tasks. We explain more in why AI training often doesn't stick, and you can see how we work with companies on our AI training in Kenya page.
If your marketing or communications team wants practical AI training built around its own pages and data, email us at lead@fukazee.com.
Want guided support instead?
Not sure which programme fits? Tell us who you are and we will point you to the right path: corporate AI training, the ScholarShift Accelerator for postgraduates, or KCSE study plans and tuition.





