The WordPress SEO Checklist
WordPress gives you everything and nothing at once. The settings that decide whether Google can read your site are two clicks away, and the plugin you install decides the rest. This checklist covers the 20 checks that matter, the order to run them in, and the four settings that quietly cost a site its traffic.
20 checks for a WordPress site, each with the exact admin path, the frequency, and the time it takes.
What WordPress Already Handles
A WordPress site is only as good as the settings somebody chose. The reading screen has a checkbox that can remove the whole site from the index, the permalink screen can rewrite every URL on a live site, and the plugin shelf can put two sets of title tags on every page. None of it is broken by default, and all of it is easy to break by accident.
The plugin question comes first because it changes everything after it. Yoast and Rank Math both handle titles, descriptions, sitemaps, schema, and redirects. Running both means the browser receives two title tags, two canonicals, and two schema graphs, and Google has to guess which one you meant.
This page sits inside the complete technical SEO checklist, and the platform-specific work it covers is the same work the general pages cover, with the exact admin path to each setting.
Handled by WordPress
The 20 WordPress SEO Checks
Every check with the admin path it lives in, how often to run it, and how long it takes.
| # | Check | Frequency | Tool | Time |
|---|---|---|---|---|
The Setting That Removes the Whole Site
One checkbox on the install screen decides whether Google can see the site, and a site that keeps it ticked after launch keeps it ticked until somebody unticks it.
1 What the box actually does
Since WordPress 5.3 the Discourage search engines from indexing this site checkbox does two things: it prints a noindex, nofollow robots tag on every page the site serves, and it switches off the sitemap at /wp-sitemap.xml, which then answers 404. It writes nothing into robots.txt, so reading robots.txt tells you nothing about whether the site is indexable.
2 Where it lives and how to check it
It is under Settings, then Reading, in the row headed Search engine visibility. WordPress stores it as the option blog_public, where 0 is ticked and 1 is not, and a WP-CLI command reads it. The Dashboard shows a Search engines discouraged link while it is ticked, and since WordPress 6.9 the Site Health Status tab lists it as a recommended improvement.
3 Turning it off properly
Untick the box and save, or run the option update command. Then clear the page cache, the host cache, and any CDN that stores whole pages, because a copy stored while the box was ticked still carries the tag. Finally read the source of a page rather than trusting the setting, since a plugin or the server can leave the same instruction in place.
What WordPress Cannot Do For You
The limits worth knowing before you start.
It cannot pick a plugin for you
Two SEO plugins print two titles, two canonicals, and two schema graphs. The choice is between Yoast and Rank Math, and the discipline is to configure the one you pick properly.
It cannot stop a cached page from lying
A copy of a page stored while the box was ticked keeps the noindex tag long after the setting is fixed. The cache is the last thing to clear and the first thing to forget.
It cannot keep a sitemap clean for you
The common configuration mistake is leaving thin tag archives enabled, which dilutes the signal with hundreds of low-value URLs. That is a setting, and it is a decision.
It cannot unblock a crawler for you
Some plugins ship a crawl optimisation panel with toggles for Google-Extended, GPTBot, and CCBot. They are off by default on a fresh install and they undo the AI search positioning silently if left on.
It cannot earn you rich results for FAQs
Google limits FAQ results to well-known government and health sites, and removed HowTo results in 2023. The markup is still worth having for the AI layer, but it is not a traffic strategy.
It cannot make a review count for you
Google treats self-serving review stars as ineligible. A rating for your own business does not show, and adding it anyway risks a manual action.
Get the Full Checklist as a Template
Every checklist in the library, in a printable PDF and a spreadsheet with a Status and an Owner column, so the work can be assigned and tracked between passes.
The data is open source under CC BY 4.0 on GitHub. The broader platform work is in the technical SEO checklist.
WordPress SEO FAQs
Direct answers on the platform, the settings that get missed, and the AI layer.
Yes, and it is the most flexible option, which cuts both ways. WordPress can do anything the other platforms can do and several things they cannot, and it will also faithfully do whatever a plugin, a theme, or a setting tells it to do. The platform is not the constraint, the configuration is.
Either, and the setup matters more than the choice. Yoast is the simpler interface, Rank Math has more schema types and better multi-site handling for agencies. What matters is that you install one, run its wizard, and fill in the title template and the brand data rather than leaving the defaults.
You need something to write the sitemap, the titles, and the schema, and WordPress on its own does not do those to a standard. The plugin earns its place on the two things core WordPress handles badly: a catalogue of templated titles, and per-page metadata at scale.
Check the Discourage search engines box under Settings, then Reading first, because it is the setting that hides an entire site. If that is already unticked, look for a noindex in the page source, a caching plugin serving an old copy, or a plugin that added a robots rule.
Short, and it must not block the files the pages need in order to render. Never block the content or includes directories, and never use robots.txt to keep a page out of the index, because a crawler that cannot read the noindex will index the page anyway. Use a noindex tag for that.
Yes, and the decision is a commercial one rather than a technical one. Some plugins ship a crawl panel with toggles for the training crawlers such as Google-Extended, GPTBot, and CCBot, and they are off by default on a fresh install. What matters is that you choose deliberately rather than inherit a default you never looked at.
One. Two plugins print two title tags, two canonicals, and two schema graphs, and Google has to work out which one you meant. If a second plugin is already installed, import the data out of it first, because removing it takes its settings with it.
Not without a redirect map first. Changing the permalink structure on a live site rewrites every URL at once, and the links that break are the ones you cannot see from the inside. If the current structure works, leave it and spend the effort on titles and content instead.