WordPress SEO
WordPress SEO explained: what core already does, which settings matter, how SEO plugins overlap, archives and attachment pages, performance, migrations, and an audit workflow.
- #Platform SEO
- #SEO Glossary
- #WordPress
- #Technical SEO
In Plain English
WordPress SEO is the technical and editorial work that makes a WordPress site crawlable, indexable, and useful in search, from core settings and permalinks to plugins, archives, and performance.
Key Takeaways
- WordPress core already outputs canonicals, a robots meta tag, XML sitemaps, and lazy loading; plugins should extend this, not duplicate it
- The search engine visibility checkbox, permalink changes, and theme updates cause more WordPress SEO incidents than missing plugin features
- Tag, author, date, and search archives need a deliberate decision, because WordPress creates them automatically
Deep dive
Quick definition
WordPress SEO covers everything that makes a WordPress site work well in search: core settings, permalinks, titles and descriptions, sitemaps, archives, media, performance, and the plugins that touch any of these. It is not a separate kind of SEO. Google evaluates a WordPress page like any other page.
What makes WordPress special is the amount of output you did not write yourself. Core, the theme, and every plugin can add URLs, tags, scripts, and markup. Good WordPress SEO starts with knowing which layer produces what, and then deciding deliberately.
What WordPress core already does
Many guides start with a plugin. It is worth looking at core first, because several SEO basics have been built in for years.
- Canonical tags. WordPress outputs a
rel="canonical"on single posts and pages. - Title tags. Themes that declare
title-tagsupport let WordPress generate the<title>element. - XML sitemaps. Since version 5.5, WordPress provides a sitemap index at
/wp-sitemap.xmlfor public post types, taxonomies, and author archives. - Robots meta tag. Since version 5.7, a central robots API outputs the robots meta tag. Public sites receive
max-image-preview:largeby default, which allows large image previews in search features. - Lazy loading. Since version 5.5, images get
loading="lazy". Version 6.3 refined this and addsfetchpriority="high"to the image most likely to be the largest element in the viewport. - Comment links. Since version 5.3, links in comments receive
rel="nofollow ugc". - Attachment pages. Since version 6.4, new installations redirect attachment pages to the file itself. Older sites keep their previous behavior until someone changes the option.
None of this guarantees good rankings. It does mean that a fresh WordPress site is not a technical blank slate, and that a plugin which adds the same features again can create duplicates.
The settings to check first
Search engine visibility
Under Settings, Reading, the checkbox "Discourage search engines from indexing this site" adds a noindex, nofollow robots meta tag to every page. It is meant for development sites. It is also the most common cause of a launched site that never appears in search, because the box survives the move from staging to production.
WordPress itself notes that the option does not block access. It is up to search engines to honor the request.
Permalinks
Under Settings, Permalinks, the default "Plain" structure creates URLs like /?p=123. Most sites switch to a readable structure, often just the post name. Decide this before launch. Changing the structure later changes every post URL and needs working redirects, otherwise internal links, backlinks, and bookmarks lead to errors.
Discussion and user registration
Comments, user profiles, and open registration are classic spam entry points. If you do not need them, disable them. If you do, moderate them, because spam pages and spam links can end up in the index under your domain.
Titles, descriptions, and URLs
WordPress builds the title tag from the post title and site name. That is a reasonable default, but it gives you no separate SEO title. SEO plugins add fields for a custom title tag and meta description per post.
Use these fields to clarify, not to stuff. A title should describe the page in the words searchers use, and the description should explain what the page offers. Google may still rewrite both in the results.
For URLs, keep slugs short and readable. WordPress generates the slug from the first title you save, so a draft title like "new post test 2" can survive into production if nobody checks. Fix the slug before publishing, not after.
SEO plugins: useful, but one at a time
Plugins such as Yoast SEO, Rank Math, All in One SEO, or SEOPress add editing fields, structured data, sitemap controls, redirect managers, and content hints. They make settings accessible that would otherwise need code.
The risk is overlap. Two SEO plugins, or one plugin plus a theme with built-in SEO features, can output two title tags, two canonicals, or two blocks of structured data that contradict each other. Most SEO plugins replace the core sitemap with their own. That is fine, as long as the old sitemap URL is not still submitted in Search Console.
Choose one plugin for SEO output and switch off overlapping features elsewhere. A plugin score that turns green tells you that the plugin's checklist is satisfied. It does not tell you whether the page answers the search intent.
Archives and thin pages
WordPress creates archive pages automatically: categories, tags, authors, dates, and internal search results. Each can be useful or useless depending on the site.
- Categories often work as real topic hubs, especially with an introduction and a clear structure.
- Tags tend to multiply. A tag used once creates a near-empty page, a classic case of thin content.
- Author archives on a single-author site duplicate the blog archive.
- Date archives rarely serve searchers.
- Internal search results should not be indexed, because they can produce endless URL variations.
For each type, decide whether it should be indexed, set to noindex, or disabled. Use search operators such as site:example.com inurl:tag for a quick look at what Google already shows, and confirm the details in Search Console.
Media and attachment pages
Before version 6.4, WordPress created a separate page for every uploaded file. These attachment pages usually contained only the image and a title, yet they could be indexed and even rank. On older sites, check whether they still exist and redirect them to the file or the parent post.
Image SEO in WordPress also means choosing sensible file names, writing alt text that describes the image's purpose, and avoiding oversized uploads. WordPress generates several image sizes, but it cannot rescue a 6 MB photo in the content area.
Performance and Core Web Vitals
WordPress performance problems usually come from the stack around core: heavy themes, page builders, sliders, many plugins that each load their own scripts, and slow hosting.
Good starting points:
- measure real templates, not only the homepage
- remove plugins you no longer use instead of just deactivating features
- use page caching and compress images
- check what the theme loads on pages that do not need it
- compare field data in Search Console with lab measurements
Core Web Vitals are measured per page type in practice. A blog post template, a product page, and a landing page built with a page builder can behave very differently on the same site.
Structured data
Many SEO plugins output structured data automatically, often as a connected graph of organization, website, page, and article. Themes and page builders sometimes add their own. The result can be duplicate or conflicting markup.
Check the rendered HTML of each template and keep one consistent source. Structured data should match the visible content. Adding review or FAQ markup that does not reflect the page invites problems rather than rich results.
Migrations and redirects
Most severe WordPress SEO incidents happen during changes: a new theme, a domain move, a switch from HTTP to HTTPS, or a new permalink structure. Before such a change, export a list of all indexable URLs. After it, check that each old URL answers with a permanent redirect to the right new URL, not to the homepage.
Also check the details that often get lost: the robots meta tag, canonicals pointing to the old domain, hardcoded internal links in content, and the sitemap URL submitted in Search Console.
Search Console and Site Kit
Connect your site to Google Search Console. You can verify ownership through a DNS record, a meta tag from an SEO plugin, or Site Kit, Google's official WordPress plugin. Site Kit shows Search Console and other Google data in the WordPress dashboard. For analysis and debugging, the Search Console interface itself remains more complete.
A practical audit workflow
- Check the search engine visibility setting and the robots meta tag on live pages.
- Review the permalink structure and test a sample of old URLs for redirects.
- Find which plugin or theme outputs titles, canonicals, sitemaps, and structured data.
- Remove duplicate output so that each element has one source.
- Decide per archive type: index,
noindex, or disable. - Check attachment pages on sites that predate version 6.4.
- Crawl the site and compare the rendered HTML of key templates.
- Measure performance per template and fix the heaviest assets first.
- Submit the correct sitemap in Search Console and watch the Page indexing report.
- Repeat the crawl after theme, plugin, or core updates.
Common mistakes
- launching with "Discourage search engines" still checked
- changing the permalink structure without redirects
- running two SEO plugins, or a plugin plus theme SEO features
- letting hundreds of single-use tags create thin archive pages
- keeping indexable attachment pages on older sites
- trusting a green plugin score as proof of content quality
- adding plugins for every small feature until the page weight explodes
- forgetting comment and registration spam
The Crawl Foundry perspective
Crawl Foundry has its own crawler with a crawl history. It checks the rendered HTML, so it sees what your theme and plugins actually output rather than what the editor shows. It lists internal links as found in the DOM with source, target, anchor text, and position, and runs can be compared after an update.
The site audit is a paid data action, and the price is visible before it starts. For the performance part, the audit uses the official Lighthouse runner on our own servers, so the Lighthouse measurement itself costs you nothing extra. The Search Console connection is read-only. If you run a WordPress site without a dedicated SEO team, Crawl Foundry for founders shows how this fits into a small setup.
Related terms
Review sources
- WordPress Documentation: Settings Reading screen
- Make WordPress Core: New XML sitemaps functionality in WordPress 5.5
- Make WordPress Core: Robots API and max-image-preview directive in WordPress 5.7
- Make WordPress Core: Image loading improvements in WordPress 6.3
- Make WordPress Core: Changes to attachment pages
- Google Search Central: SEO starter guide
- Google Search Central: Build and submit a sitemap
Why It Matters for SEO
WordPress makes publishing easy, and that includes publishing pages you never meant to put in search. Knowing what core, theme, and plugins output decides which URLs Google sees.
Common questions
What is WordPress SEO?
WordPress SEO is the technical and editorial work that makes a WordPress site crawlable, indexable, and useful in search, from core settings and permalinks to plugins, archives, and performance.
Why does WordPress SEO matter for SEO?
WordPress makes publishing easy, and that includes publishing pages you never meant to put in search. Knowing what core, theme, and plugins output decides which URLs Google sees.
Deep blog guides
When you are ready to move from definition to workflow, continue with these practical guides.
Reviewed by
Crawl Foundry Team
Editorial TeamThe Crawl Foundry editorial team.
Audit your WordPress site with Crawl Foundry
Run a site audit on your WordPress site when you need it. The price is shown before it starts, and the Lighthouse measurement itself costs you nothing extra.