Your traffic is flat, or it’s dropping, and you don’t know why. Somewhere between a plugin update, a theme change, and eighteen months of blog posts, something broke — or never got set up right in the first place.
A WordPress SEO audit finds that “something” instead of guessing. This is the same six-step process a senior developer runs before touching a client site: crawlability, on-page elements, speed, structured data, internal linking, and content quality — each with the specific free tool that checks it. Work through it in order and you’ll know exactly what’s costing you rankings, not just that something is.
What Is a WordPress SEO Audit?
A WordPress SEO audit is a systematic review of a site’s technical health, on-page optimization, and content quality to find what’s blocking search engines from crawling, indexing, or ranking it. It covers six areas — crawlability, on-page elements, site speed, structured data, internal linking, and content quality — each checked against a specific issue list, not a vague “does this look okay” pass.
The output isn’t a score. It’s a prioritized list of fixes, ranked by how much each one is actually costing you in rankings and traffic.
What Do You Need Before You Start?
Five free tools cover the whole audit. Set these up first so you’re not stopping mid-checklist to register for something.
| Tool | What it’s for | Cost |
|---|---|---|
| Google Search Console | Indexing status, crawl errors, search performance, manual actions | Free |
| Google PageSpeed Insights | Core Web Vitals, lab and field speed data | Free |
| Screaming Frog SEO Spider | Full site crawl — titles, headings, status codes, redirects | Free up to 500 URLs |
| Rank Math or Yoast SEO (whichever you already run) | On-page checks, sitemap generation, schema output | Free tier |
| Google’s Rich Results Test | Validates structured data / schema markup | Free |
If Google Search Console isn’t verified for the site yet, do that first — half of this audit reads directly from its reports.

Step 1: Is Your Site Actually Crawlable and Indexed?
Nothing else in this audit matters if Google can’t crawl or index the page you’re optimizing. Check this first — it’s also the fastest step to rule out.
- Check the “Discourage search engines” setting. WordPress has a single checkbox under Settings → Reading that adds
noindexsitewide. It’s meant for staging sites and gets left checked after a migration more often than you’d expect. If traffic died all at once with no other explanation, check this first. - Pull the Coverage report in Search Console. It shows every URL Google has indexed, excluded, or flagged with an error, split by reason. Look for “Excluded by ‘noindex’ tag” and “Crawled – currently not indexed” on pages you want ranking.
- Verify your XML sitemap. Most SEO plugins auto-generate one at
/sitemap_index.xml. Confirm it’s submitted in Search Console and doesn’t list pages you’ve deleted or set tonoindex— a sitemap full of dead URLs wastes crawl budget. - Check robots.txt for accidental blocks. A single misplaced
Disallow: /line — sometimes left over from staging — blocks the entire site from being crawled, sitemap or no sitemap. - Run a Screaming Frog crawl and filter by status code. Anything returning 4xx or 5xx that isn’t supposed to is either broken internally or costing you a page that used to rank.
A broken audit usually shows up first here: a plugin conflict, a caching layer serving a stale noindex header, or a migration nobody fully cleaned up. If the site checks out, move on.
Step 2: Are Your On-Page Elements Set Up Correctly?
On-page SEO is what most people picture when they hear “SEO.” A plugin does most of the heavy lifting here — but it flags issues, it doesn’t make judgment calls.
- One H1 per page, matching its actual topic and primary keyword. Multiple H1s confuse the topical signal — a common leftover from page builders that treat every heading widget as an H1 by default.
- Title tags and meta descriptions — every indexed page needs a unique title (under ~60 characters) and meta description (under ~155). Duplicate titles across category and tag archives are one of the most common flags Search Console surfaces on WordPress sites, since archive templates often generate them automatically with no override.
- Heading hierarchy — H2s for main sections, H3s for subsections, no skipped levels. This matters for readability and featured-snippet eligibility, not just crawlers parsing structure.
- URL structure — short, keyword-relevant, no stacked paths like
/blog/category/subcategory/post-name/. If permalinks are already wrong sitewide, fixing it means a redirect plan, not a one-page edit — flag it, don’t fix it mid-audit. - Image alt text — every meaningful image needs descriptive alt text with the target keyword where it fits naturally, not stuffed in.
- Keyword placement — primary keyword in the H1, the first 100 words, and one H2. Beyond that, natural language beats forced repetition.
Rank Math and Yoast surface most of this automatically per page. Run their bulk analysis, then sort by severity instead of fixing pages in whatever order the plugin lists them.
Step 3: How Fast Is Your Site (Core Web Vitals)?
Speed is both a direct ranking factor and the thing most likely to lose a visitor before they read a word. Two numbers matter: the PageSpeed Insights score, and the underlying Core Web Vitals — LCP, INP, and CLS — measured against real visitor data, not just one test run.
Run the URL through PageSpeed Insights and check the lab score and field data (Core Web Vitals) sections separately — they can disagree, and field data is what Google actually uses as a ranking signal. For the full fix list — image compression, caching, JavaScript deferral, and the WordPress plugin comparison — see our companion guide on page speed optimization; this audit tells you whether speed is a problem, that guide tells you how to fix it.
This is usually where a DIY audit’s fixes stop being a checkbox and start being actual engineering work. If you’d rather have a senior developer run this whole audit and hand you a fix roadmap instead of doing it page by page yourself, that’s what our free website audit covers: a full review of speed, technical SEO, and code quality, delivered as a video walkthrough within 48 hours, no obligation attached.
Step 4: Is Your Structured Data (Schema) Set Up?
Structured data doesn’t move rankings directly, but it controls eligibility for rich results — star ratings, FAQ dropdowns, breadcrumbs, review snippets — that materially change click-through rate at the same ranking position.
- Run key pages through Google’s Rich Results Test. It tells you what schema is present and whether it validates, not just whether markup exists.
- Check Article/BlogPosting schema on posts — most SEO plugins add this by default, but theme or page-builder overrides sometimes strip it out.
- Add FAQ schema to pages with an actual FAQ section — one of the highest-value additions for a blog, since it can win extra vertical space in results without any ranking change required.
- Verify Organization/LocalBusiness schema sitewide if you’re a service business — feeds knowledge panel data and local pack eligibility, and it’s usually set once and forgotten.
- Check for schema errors, not just presence. Missing required fields (a Product schema without a price) causes Google to ignore the markup entirely — present but functionally invalid.
Step 5: Is Your Internal Linking Doing Its Job?
Internal links are how authority moves around your site, and they’re the most commonly neglected part of a WordPress SEO audit — nobody sets out to skip it, but it’s rarely anyone’s job to maintain.
- Find orphan pages — pages with zero internal links pointing to them. Screaming Frog’s crawl surfaces these; they exist on the site but Google has to find them another way, if at all.
- Check link depth — how many clicks from the homepage to reach a given page. Beyond three or four clicks deep signals low importance, whether you intended that or not.
- Audit anchor text — descriptive, keyword-relevant anchor text (“technical SEO for WordPress”) passes more topical relevance than “click here” or a bare URL.
- Identify hub opportunities — your highest-authority pages should link out to related content, and that content should link back. A page with strong backlinks but no outgoing internal links wastes authority that could flow to newer posts.
- Fix broken internal links — these accumulate as posts get deleted or restructured, and each one is a small dead end for users and crawlers alike.
Step 6: Is Your Content Actually Good Enough to Rank?
Technical SEO gets a page indexed and crawlable. It doesn’t make Google want to rank it — that’s a content problem, and the step most DIY audits skip because it’s harder to check with a tool.
- Identify thin content — pages under roughly 300 words with no real depth rarely compete beyond exact-match, low-competition terms.
- Check for duplicate or near-duplicate content — common on WordPress sites with tag and category archives covering the same posts, or paginated content indexed alongside the main version.
- Look for content decay — posts that ranked well and have quietly dropped in Search Console’s performance report over the last 6–12 months, usually because a competitor refreshed theirs and yours didn’t move.
- Match content to search intent — a product page ranking for an informational query (or vice versa) signals a mismatch Google will eventually correct by ranking something else instead.
- Check E-E-A-T signals — author bylines with real credentials, an about page, original data instead of restated generalities. This matters most for YMYL (finance, health, legal) topics, but it’s a factor everywhere now.
This step doesn’t get fixed in an afternoon the way a noindex checkbox does — treat it as the audit’s output feeding your content calendar, not a one-time cleanup.

Which Free Tool Checks Which Audit Step?
Match the step you’re on to the right tool instead of running every tool for every step — the fastest way through the checklist.
| Audit step | Primary free tool | What it catches |
|---|---|---|
| Crawlability & indexing | Google Search Console (Coverage report) | Noindex pages, crawl errors, sitemap issues |
| On-page elements | Rank Math / Yoast bulk analysis | Missing titles, duplicate metas, heading issues |
| Site speed | PageSpeed Insights | LCP, INP, CLS — lab and field data |
| Structured data | Rich Results Test | Missing or invalid schema markup |
| Internal linking | Screaming Frog (Internal Links tab) | Orphan pages, link depth, broken links |
| Content quality | Search Console (Performance report) | Content decay, thin pages, intent mismatch |

How Long Does a DIY WordPress SEO Audit Take?
For a small site (under 50 pages), budget half a day to a full day for all six steps — most of it goes into Step 6 (content review) and Step 2 (on-page elements, page by page). Larger sites stretch this to several days, since crawls and Search Console reports need manual review, not a single glance.
Re-audit at least twice a year, and immediately after any site migration, major plugin update, or unexplained traffic drop — the three events most likely to introduce a crawlability issue overnight.
Don’t Have the Time (or Want a Second Opinion)?
A DIY audit catches most of what’s wrong. What it won’t catch is the interaction between issues — a caching plugin serving stale noindex headers, a page builder overriding your schema, a redirect chain three hops deep that only shows up under a full crawl. Those fixes come from someone who’s debugged a hundred WordPress sites, not their first one.
That’s what our free website audit is built for: senior developers run the checklist above, plus the parts that don’t reduce to a checkbox, then send back a video walkthrough and written fix roadmap within 48 hours — no sales call, no obligation to hire us afterward. Web Help Agency has run this process across 500+ WordPress projects, rated 5.0 on Clutch from 41 client reviews. Rates run $25–49/hr with no minimum retainer if you do want the fixes implemented.
If code-level issues turn up in the audit — broken functions, deprecated hooks, plugin conflicts — see our guide on common WordPress code issues for how to diagnose them before they become a rebuild.
Frequently Asked Questions
What is a WordPress SEO audit?
A structured review of a site’s technical health, on-page optimization, and content quality, covering crawlability, on-page elements, speed, structured data, internal linking, and content depth. It produces a prioritized list of fixes, not a single score.
How much does a WordPress SEO audit cost?
DIY, it costs nothing beyond your time — every tool in this guide has a usable free tier. A professional audit typically runs a few hundred to several thousand dollars depending on site size; some agencies, including Web Help Agency, offer a genuinely free version with no strings attached.
What’s the difference between a technical SEO audit and a full SEO audit?
A technical audit covers crawlability, indexing, site speed, and structured data — the infrastructure Google needs to find and process a page. A full SEO audit adds on-page elements, internal linking, and content quality — whether Google wants to rank the page once it can access it. This guide covers both; for technical SEO in more depth, see our complete guide to technical SEO for WordPress.
Can a plugin do my SEO audit for me?
Plugins like Rank Math and Yoast handle a meaningful chunk of Step 2 (on-page elements) and parts of Step 4 (schema) automatically. They don’t crawl for orphan pages, check Core Web Vitals field data, or evaluate whether content satisfies search intent — those need the other tools in this checklist, or a manual review.
How often should I re-audit my WordPress site?
Twice a year at minimum, plus immediately after any site migration, major plugin or theme update, or a sudden unexplained traffic drop. Those three events cause most of the crawlability and indexing issues a routine audit would otherwise catch months late.
You Might Also Find Useful
- Technical SEO for WordPress: The Complete Guide — a deeper dive into the crawlability and indexing fundamentals covered in Step 1
- Page Speed Optimization — the full fix list for the speed issues flagged in Step 3
- Common WordPress Code Issues — diagnosing the plugin conflicts and broken functions an audit often surfaces
- Free Website Audit — get a senior developer to run this checklist for you, free, within 48 hours
