Phase 1 · StrategyModule 4 of 15
Site architecture and keyword mapping
Architecture is where two pages quietly compete for the same term and both lose. It is also the phase people most want to skip, because nothing visible happens.
What this actually costs you
- Hours to learn
- 6
- Hours / month
- 1 to 2
- Tools
- $0 to $129/mo
- Difficulty
- Medium
What this looks like when it is done badly. A business publishes a services page, then a blog post about the same service, then a landing page for an ad campaign about the same service. Three pages, one intent. Google picks whichever it likes least, and all three underperform the one page that should have existed.
Hours and tool costs are RedSEO’s own estimates from client work and from teaching this material, not industry survey data. They assume a business owner doing the work themselves on a site under about 50 pages.
This is the module people most want to skip. Nothing visible happens. You do not publish anything, you do not see a ranking move, and at the end of it your site looks exactly the same as when you started.
It is also where the most expensive mistake in the curriculum gets made, quietly, and stays invisible for about a year.
One page per intent. That is the rule.
Module 3 ended with a list of terms grouped into rows. This module attaches each row to a URL, and enforces one thing: no two pages may claim the same intent.
When they do, Google has to choose. It chooses on signals that have nothing to do with which page you would have picked, it sometimes changes its mind between crawls, and the authority you have earned gets split across both. That is keyword cannibalisation, and the reason it goes unnoticed is that nothing looks broken. Both pages exist. Both are indexed. Both rank at position 14 instead of one of them ranking at 6.
I can point at my own version of this. The reason module 1 exists at /diy-seo/is-seo-worth-it while a tool sits at /tools/is-seo-worth-it is that I had five URLs on this site chasing the same cost-and-ROI questions. Between them they produced one click in sixteen months. Fixing it meant redirecting two of them into a single page, which is exactly the decision this checklist asks you to make.
You do not have a crawl budget problem
Somebody will tell you to worry about crawl budget. Google has published who should:
If your site doesn’t have a large number of pages that change rapidly, or if your pages seem to be crawled the same day that they are published, you don’t need to read this guide.
Their own threshold for the advanced guide is large sites of a million or more unique pages, or medium sites above ten thousand pages with content changing daily. For those sites Google recommends exactly two things: keep your sitemap current and check the Page Indexing report.
If you have forty pages and something is not indexed, the cause is not budget. It is eligibility, and that is a module 2 diagnosis.
Links Google can actually follow
Internal links are how authority moves around your site and how Google works out which of your pages you consider important. There is a mechanical requirement that catches modern sites out, and Google states it directly: “Google can only crawl your link if it’s an <a> HTML element with an href attribute.”
Which means a <span> with a click handler is not a link. A framework component that renders routerLink without an href is not a link. A button that navigates via JavaScript is not a link. They all work perfectly for a human and are invisible as paths through your site.
On anchor text, Google is equally plain: good anchor text is “descriptive, reasonably concise, and relevant to the page that it’s on and to the page it links to.” Which is the documented reason to stop writing “click here” and to stop letting a related-posts widget do your internal linking. A widget picks by recency or by tag. A sentence picks by meaning, and only one of those is a signal.
Have us map the structure before you build it
URLs: what matters and what does not
Less than people think. Google’s guidance is short: keep the structure simple and logical, “use readable words rather than long ID numbers,” and “use hyphens (-) instead of underscores (_) to separate words in your URLs.” That is close to the whole of it.
What is not in there: keyword stuffing the slug, matching the URL exactly to the target term, or restructuring a working site to get a keyword one level higher in the path. Those are folklore, and the last one is actively expensive.
The rule I would hold you to: do not change a URL that ranks unless the change fixes something real. Merging two competing pages is real. A tidier path is not. Every URL change is a redirect you have to get right, and a redirect you get wrong is authority you built and then threw away.
When you do have to change them, map every old URL to the specific new page that replaces it, before you ship, in a spreadsheet. Never redirect a batch of old URLs to the homepage. Google treats that as a soft 404 and you get the loss without the transfer.
Pillar pages, without the jargon
A pillar page is a page that covers a broad subject and links out to more specific pages underneath it, each of which links back. That is the entire idea. It is worth doing for one reason: topical authority is easier to build when your coverage of a subject is visibly organised than when it is fifteen unconnected posts.
You are reading one. The hub covers DIY SEO broadly and links to fifteen modules; every module links back to it and to its neighbours. If it works I will be able to show you the numbers in a year, and if it does not I will say so.
What makes it work is not the diagram. It is that each spoke genuinely answers a different question. Three spokes covering overlapping questions is a cluster with a cannibalisation problem and a nicer chart.
What I would do in your position
Run the sitemap tool, export your URLs, and put the keyword rows from module 3 beside them. Spend the first hour only on the conflicts, because that is where the compounding loss is. Resolve each one by picking a winner, not by rewriting both.
Then spend the second hour adding internal links from pages that already get traffic to pages that should. That is the cheapest ranking work available to you, it needs no new content, and on most small sites it is genuinely undone.
Then stop. Do not restructure. Do not renumber your URLs. Go and write something, which is phase 2, and come back here when you have enough pages for the structure to matter.
See the shape of your site
Both free. The sitemap generator draws what you actually have, which is usually not what you remember building.
The tools for this module
Free, no signup. The first one is the useful one; run it before you plan anything.
- Visual Sitemap GeneratorDraws your site’s actual structure from its sitemap, including the depth of each page.
- Hyperlink MakerBuilds clean anchor markup when you are adding internal links by hand into a CMS.
Map your keywords onto pages
The output is a spreadsheet with one row per URL and the terms that URL owns. Two rows may not claim the same term. That single rule is most of what this module is.
List every URL you have
From your sitemap, or by crawling the site. Include the pages you forgot about. The pages you forgot about are usually the ones competing with the pages you care about.
Put your keyword rows from module 3 next to it
One row per intent, each with the page that should own it. Where a term has no page, you have found something to build. Where a page has no term, you have found something to question.
Find every term claimed by two or more pages
Sort by keyword and look for duplicates. This is the cannibalisation check and it takes ten minutes. Search your own site for the term as a sanity check: site:yourdomain.com plus the phrase.
Decide, for each conflict, which page wins
Usually the one already getting impressions. The loser either gets merged into the winner and redirected, or gets re-pointed at a different intent. Doing nothing is also a decision, and it is the one that costs you.
Check every important page is reachable in three clicks from the homepage
Not because three is magic, but because a page buried six levels down is telling Google you do not think it matters. If it matters, link to it from somewhere that matters.
Add internal links from your existing pages to the important ones
Descriptive anchor text, in the body copy, on the first natural mention. Not a related-posts widget. Google is explicit that good anchor text is "descriptive, reasonably concise, and relevant".
Confirm your links are actually links
View the page source and check that navigation and body links are real anchor elements with href attributes. If your framework renders them as spans or click handlers, Google cannot follow them.
Leave your URLs alone unless you have a reason
A tidier URL is not a reason. Merging two competing pages is a reason. If you do change them, map every old URL to a specific new one before you ship, never to the homepage.
Can you do this yourself?
You can do this yourself if
- Your site is under about fifty pages, so the whole map fits in one spreadsheet and you can hold the conflicts in your head while you resolve them.
- You can edit your own navigation and body copy. Most of the work in this module is adding links in the right places, which needs access rather than expertise.
- You are adding pages rather than moving existing ones. Building new structure is low risk; rearranging live structure is not.
You cannot do this yourself if
- The fix requires changing URLs on a site that already ranks. Redirect mapping is where DIY attempts do real and lasting damage, because the mistakes are silent and you find out a month later.
- You are on a platform that generates URLs for you and gives you no control over them, which is common on ecommerce and booking systems. You cannot map what you cannot edit.
- You have hundreds of pages and no idea which ones compete. Past a certain size this stops being a spreadsheet exercise and becomes a data problem.
Questions people ask about this
- What is keyword mapping and why does it matter?
- Assigning each group of keywords to exactly one URL that owns it. It matters because when two of your pages claim the same intent, Google has to choose between them, and your authority gets split across both. Nothing looks broken: both pages are indexed, both rank at 14 instead of one ranking at 6.
- Do I need to worry about crawl budget?
- Almost certainly not. Google's own crawl budget guide says "if your site doesn't have a large number of pages that change rapidly, or if your pages seem to be crawled the same day that they are published, you don't need to read this guide." Their threshold is a million-plus pages, or ten thousand-plus changing daily. If a page on a small site is not indexed, the cause is eligibility, not budget.
- Does URL structure affect SEO?
- A little, and less than people think. Google asks for a simple logical structure, readable words rather than ID numbers, and hyphens rather than underscores. That is close to the whole of the guidance. Restructuring a working site to move a keyword one level up the path is not in it, and the redirects it requires cost more than the change gains.
- Should I change my URLs to be more SEO friendly?
- Not unless the change fixes something real. Merging two pages that compete for one term is real. A tidier path is not. Every URL change is a redirect you have to get right, and getting one wrong throws away authority you already earned. If you must, map every old URL to its specific replacement before shipping, and never redirect a batch to the homepage.
- What is a pillar page?
- A page covering a broad subject that links out to more specific pages beneath it, each linking back. The value is that organised coverage builds topical authority faster than the same content scattered across unconnected posts. This curriculum is structured that way. What makes it work is that each spoke answers a genuinely different question, not the diagram.
- How many internal links should a page have?
- There is no number worth chasing. Link where it helps a reader, using descriptive anchor text, on the first natural mention of the target topic. Google's stated standard is that anchor text should be "descriptive, reasonably concise, and relevant". A related-posts widget picks by recency or tag; a sentence picks by meaning, and only one of those is a signal.