---
title: "How to Do a Free SEO Audit on Your WordPress Site"
slug: free-wordpress-seo-audit
excerpt: "A step-by-step guide to auditing your WordPress site's SEO using free tools. Seven practical checks you can run today — with an interactive tracker to mark your progress."
author: RankWiz Team
published_at: 2026-03-19 09:00:00
meta_title: "Free WordPress SEO Audit: 7-Step Guide (2026)"
meta_description: "Learn how to audit your WordPress site's SEO for free. 7 practical steps using Google Search Console, PageSpeed Insights, and browser DevTools."
category: wordpress-seo
reading_time_minutes: 9
featured: false
related_posts:
  - wordpress-seo-checklist-beginners
  - site-health-score-seo
  - google-search-console-setup
---

An SEO audit is a systematic review of your website that identifies the technical, content, and structural issues preventing your pages from ranking in search engines. Every step in this guide uses only free tools — Google Search Console, PageSpeed Insights, and Chrome DevTools — so you can complete the entire WordPress SEO audit checklist without a paid subscription.

Most site owners skip audits until traffic drops. By then, problems have been compounding for months. Running through this checklist once a quarter takes about two hours and is the single highest-leverage SEO task you can do.

![7-Step WordPress SEO Audit Process](/blog/free-wordpress-seo-audit/hero.svg)

## What an SEO Audit Covers

A WordPress site audit checklist typically spans four areas: **technical health**, **content quality**, **site structure**, and **mobile experience**. Fixing issues in all four areas compounds — a fast, well-structured site with strong content consistently outperforms sites that optimize only one dimension.

A few numbers worth knowing before you start:

- Google uses **over 200 ranking signals**, but Core Web Vitals, crawlability, and content relevance are among the most actionable for site owners.
- Pages with an LCP (Largest Contentful Paint) under 2.5 seconds have a measurably higher click-through rate than slower pages — in Google's own data, pages meeting Core Web Vitals thresholds see up to **24% fewer abandonments**.
- Sites with broken internal links lose PageRank that could otherwise flow to important pages. One audit study found that the average site has **at least 3 orphan pages** per 100 published URLs.

This guide covers all four areas in seven steps you can complete today.

---

## Step 1: Check Google Search Console for Issues

Google Search Console (GSC) is the most direct source of information about how Google sees your site. If you haven't connected it yet, start with the [Google Search Console setup guide](/blog/google-search-console-setup) — the free audit steps below depend on it.

Not sure what GSC is? Read the [GSC overview](/blog/what-is-google-search-console) first.

Once you're in, check three panels in order:

**Index Coverage Report** (`Index > Pages`)
This shows which URLs Google has crawled, indexed, excluded, or flagged as errors. Look for:
- **"Crawled — currently not indexed"**: Google crawled the page but decided not to index it. Usually a thin content signal.
- **"Discovered — currently not indexed"**: Google knows the URL exists but hasn't crawled it. Check for crawl budget issues or pages buried too deep in your site.
- **"Excluded by robots.txt"**: Verify these pages are *intentionally* blocked. A misconfigured `robots.txt` can accidentally block important pages.
- **404 errors**: Any URL returning 404 that Google has previously crawled.

**Manual Actions** (`Security & Manual Actions > Manual Actions`)
A manual action means a Google reviewer has applied a penalty to your site or specific pages. Most sites have none. If yours shows an action, the remediation steps are shown inline — follow them before doing anything else.

**Security Issues** (`Security & Manual Actions > Security Issues`)
Google flags hacked sites, malware injections, and deceptive content here. Clear any issues before proceeding with the rest of the audit.

**Time needed:** 20–30 minutes to review all three panels and document findings.

---

## Step 2: Run a Page Speed Test

Site speed is a confirmed ranking factor for both desktop and mobile searches. Google's PageSpeed Insights (PSI) measures Core Web Vitals — the three user-experience metrics Google uses in its ranking algorithm.

Run PSI on your **top 5 pages by traffic** (find these in GSC under `Performance > Pages`). Here are the thresholds to aim for:

| Metric | Good | Needs Improvement | Poor |
|--------|------|-------------------|------|
| **LCP** (Largest Contentful Paint) | < 2.5s | 2.5s – 4.0s | > 4.0s |
| **INP** (Interaction to Next Paint) | < 200ms | 200ms – 500ms | > 500ms |
| **CLS** (Cumulative Layout Shift) | < 0.1 | 0.1 – 0.25 | > 0.25 |

**Common WordPress-specific causes of failing Core Web Vitals:**

- **LCP failures**: Unoptimized hero images, no lazy loading on below-fold images, render-blocking JavaScript from plugins
- **INP failures**: Heavy JavaScript from page builders (Elementor, Divi), too many third-party scripts loading synchronously
- **CLS failures**: Images or embeds without explicit width/height attributes, web fonts loading without `font-display: swap`

For most WordPress sites, the fastest wins are: switch to a lightweight theme, defer non-critical JavaScript, and serve images in WebP format with proper dimensions.

**Time needed:** 15 minutes to run tests and note failing metrics per page.

---

## Step 3: Audit Your Title Tags and Meta Descriptions

Title tags and meta descriptions don't directly affect rankings, but they do directly affect click-through rate — which does. A page ranking in position 4 with a compelling title can outperform a position 2 result with a generic one.

**How to audit in bulk using GSC:**
1. Go to `Performance > Search results`
2. Click the **Pages** tab
3. Sort by Impressions descending
4. For each top page: search the URL in a new incognito browser tab, look at what Google is actually showing in the SERP (Google rewrites titles and descriptions about 60% of the time)
5. Compare the shown title against your `<title>` tag — significant mismatches mean Google doesn't think your title matches the page

**What to check for each page:**

- **Missing titles**: Any page without a `<title>` tag gets an auto-generated one from Google, usually worse than what you'd write
- **Duplicate titles**: Two pages with identical titles signal to Google they may cover the same topic — use a plugin like Yoast SEO or All in One SEO to find duplicates across your site
- **Truncated titles**: Desktop SERPs show approximately 55–60 characters. Titles longer than that get cut off
- **Missing meta descriptions**: While not a ranking factor, they affect CTR. Aim for 120–155 characters
- **Keyword alignment**: Your primary keyword should appear in the title, ideally near the front

For a complete checklist of on-page elements to review alongside titles and descriptions, see the [WordPress SEO checklist for beginners](/blog/wordpress-seo-checklist-beginners).

**Time needed:** 30 minutes for a 20-page site.

---

## Step 4: Check Your Internal Linking Structure

Internal links do two jobs: they pass PageRank (link authority) between pages, and they tell Google which pages are topically related. Sites that neglect internal linking leave both benefits on the table.

**Finding orphan pages:**
An orphan page is a published URL with no internal links pointing to it. Google may never crawl it, or may assign it very low importance. To find orphans:
1. Export all your published URLs from WordPress (`Tools > Export` or use a plugin like WP All Export)
2. In GSC, go to `Index > Pages` and export the URL list
3. Cross-reference: pages in your WordPress export but not being crawled by Google are candidates for orphan status
4. Alternatively, use the free Screaming Frog SEO Spider (up to 500 URLs free) to crawl your site and export the "inlinks" count per URL — any page with 0 inlinks is an orphan

**Checking link distribution:**
Your most important pages (high-converting, pillar content, money pages) should receive the most internal links. A quick proxy: count how many pages link to each of your top 10 pages. If your most important page has fewer internal links than a throwaway blog post, redistribute.

**Common WordPress internal linking issues:**
- Paginated archive pages eating internal link equity that should go to posts
- Tag and category pages with dozens of links each, diluting equity
- Posts that only link forward in time (to newer posts) but never backward

For a deeper treatment of how internal linking and topical structure interact, see the [topic clustering SEO strategy guide](/blog/topic-clustering-seo-strategy).

**Time needed:** 30–45 minutes depending on site size.

---

## Step 5: Review Content Quality and Freshness

Content quality is increasingly evaluated through Google's E-E-A-T framework — **Experience, Expertise, Authoritativeness, and Trustworthiness**. These aren't direct ranking signals but they inform how Google's quality raters assess sites, which feeds into algorithm adjustments.

**Thin content check:**
Thin content is pages with insufficient substance — typically under 300 words with no unique insights, or pages that are near-duplicates of other pages on your site. In GSC, cross-reference your "Crawled — currently not indexed" pages against your actual content. Thin pages are often the culprit.

**How to spot thin content without a crawler:**
1. Go to GSC `Performance > Pages`
2. Sort by Impressions
3. Find pages with high impressions but very low CTR (under 1%) — these are often ranking for irrelevant queries because the content is too vague
4. Visit those pages and ask: does this page give a better answer than the top 3 results for its target query?

**Content freshness:**
Outdated content is one of the most overlooked SEO issues on established WordPress sites. Pages about "best tools in 2022" that haven't been updated lose rankings gradually as Google's freshness signals downgrade them. For content-heavy sites, freshness decay is often the cause of slow, steady traffic decline that doesn't have an obvious technical explanation.

Signs a page needs freshness work:
- Published date or last-modified date is 18+ months ago
- It references product versions, statistics, or events that are now outdated
- Competitors have newer, more comprehensive pages on the same topic

For a full framework on updating old content, see the [content freshness and updating old posts guide](/blog/content-freshness-seo-update-old-posts). For the E-E-A-T signals worth prioritizing, see the [E-E-A-T content optimization guide](/blog/eeat-content-optimization).

**Time needed:** 45–60 minutes for initial review; content updates are a separate workstream.

---

## Step 6: Verify Mobile Responsiveness

Google uses mobile-first indexing for all sites — meaning the mobile version of your page is what Google primarily crawls and indexes. A site that looks fine on desktop but breaks on mobile is being indexed in its broken state.

**Using Chrome DevTools device mode:**
1. Open any page on your site in Chrome
2. Right-click > Inspect (or `Cmd+Option+I` / `F12`)
3. Click the device toggle icon (looks like a phone/tablet) in the toolbar
4. Test on at least three viewport sizes: 375px (iPhone SE / small Android), 390px (iPhone 14), and 768px (iPad)

**Common WordPress mobile issues to check for:**

- **Horizontal scroll**: Any element wider than the viewport forces horizontal scrolling — usually caused by fixed-width images, tables, or embeds (YouTube, maps) without `max-width: 100%`
- **Touch targets too small**: Buttons and links under 44x44px are hard to tap accurately. Check your navigation menu, CTA buttons, and inline text links
- **Font size under 16px**: Text smaller than 16px on mobile triggers the "legibility" warning in PageSpeed Insights
- **Pop-ups that block content**: Google's interstitial penalty applies to pop-ups that cover the main content on mobile. Full-screen newsletter pop-ups that fire on page load are a common offender
- **Viewport meta tag missing**: A WordPress site without `<meta name="viewport" content="width=device-width, initial-scale=1">` in its `<head>` will render as a zoomed-out desktop page on mobile

**Time needed:** 20 minutes to test on three viewport sizes.

---

## Step 7: Check for Broken Links and Redirects

A broken link (returning 404) on a page wastes the link equity that page is passing. Redirect chains — where URL A redirects to URL B which redirects to URL C — slow down crawlers and dilute PageRank with each hop.

**Finding 404 errors using GSC:**
1. Go to `Index > Pages`
2. Filter by status "Not found (404)"
3. Click any 404 URL to see which pages link to it (`Linked from` section)
4. For each 404: either restore the page at that URL, or add a 301 redirect to the correct destination

If a 404 has no inbound links and no search impressions, it can often be left alone — not every 404 needs fixing.

**Checking for redirect chains:**
A redirect chain exists when a URL goes through two or more redirects before reaching the final destination. One redirect is fine. Two or more is a problem. You can spot these manually using the free HTTP Status Code Checker browser extension, or by examining your `.htaccess` file for compound redirect rules.

**Common redirect issues in WordPress:**
- Old plugin or theme URLs that were redirected when the plugin was removed, then the redirect destination was later changed
- HTTPS migration redirects that still point to `http://` intermediary URLs
- Trailing slash inconsistency (`/page/` vs `/page`) creating one-hop redirects on every internal link

For context on how broken links relate to traffic drops, see the guide on [detecting traffic drops in Google Search Console](/blog/detect-traffic-drops-gsc).

**Time needed:** 20–30 minutes.

---

## Prioritizing Your Audit Findings

After running all seven steps, you'll likely have more issues than you can fix in a single session. Use the **SEO Audit Priority Matrix** to order your work:

**Tier 1 — Fix immediately (critical technical issues):**
- Manual actions or security issues in GSC
- Pages accidentally blocked by `robots.txt`
- 404 errors on pages with inbound links or search traffic
- Core Web Vitals failing on your top 5 pages

**Tier 2 — Fix this sprint (quick content wins):**
- Missing or duplicate title tags
- Meta descriptions that are blank or over 155 characters
- Thin content on pages with high impressions but low CTR
- Outdated statistics or product references on high-traffic pages

**Tier 3 — Plan for next cycle (structural improvements):**
- Orphan pages that need internal links
- Redirect chains that need consolidation
- Content freshness updates for posts 18+ months old
- Internal link redistribution to priority pages

The Tier 1 issues affect indexing — Google may not even be seeing your content correctly until those are fixed. Work top to bottom.

If you're managing multiple WordPress sites or want this prioritization done automatically, RankWiz analyzes your GSC data and surfaces findings ranked by estimated impact — so you always know what to fix first.

---

## Your SEO Audit Checklist

Use this tracker to mark your progress through each audit step:

<div data-component="ChecklistTracker" data-props='{"title":"SEO Audit Checklist","categories":["Technical","Content","Structure","Mobile"],"items":[{"id":"gsc-issues","label":"Check GSC for coverage and security issues","description":"Review index coverage, manual actions, and security issues panel","category":"Technical"},{"id":"page-speed","label":"Run PageSpeed Insights on top 5 pages","description":"Check Core Web Vitals: LCP < 2.5s, INP < 200ms, CLS < 0.1","category":"Technical"},{"id":"title-tags","label":"Audit title tags and meta descriptions","description":"Check for missing, duplicate, or truncated titles and descriptions","category":"Content"},{"id":"internal-links","label":"Map internal linking structure","description":"Find orphan pages and check link distribution","category":"Structure"},{"id":"content-quality","label":"Review content quality and freshness","description":"Check for thin content, outdated information, E-E-A-T signals","category":"Content"},{"id":"mobile-check","label":"Verify mobile responsiveness","description":"Test in Chrome DevTools device mode on 3+ screen sizes","category":"Mobile"},{"id":"broken-links","label":"Find and fix broken links","description":"Check GSC for 404 errors, fix or redirect","category":"Structure"},{"id":"ssl-check","label":"Verify HTTPS across all pages","description":"Check for mixed content warnings in browser console","category":"Technical"},{"id":"robots-txt","label":"Review robots.txt and sitemap","description":"Ensure important pages are not blocked from crawling","category":"Technical"},{"id":"image-alt","label":"Check image alt text coverage","description":"All meaningful images should have descriptive alt attributes","category":"Content"}]}'></div>

---

## Frequently Asked Questions

### How long does a WordPress SEO audit take?

A basic audit covering the seven steps in this guide takes **2–3 hours** for a site with fewer than 50 pages. Larger sites (100+ pages) take 4–6 hours for the initial review, not counting the time to fix issues. The first audit takes longest — once you've established a baseline, quarterly audits run faster because you're checking for changes rather than starting from scratch.

### How often should I audit my site's SEO?

**Once per quarter** is the practical minimum for most WordPress sites. Run a lighter check (just GSC coverage and Core Web Vitals) monthly if you're publishing frequently or running ad campaigns that affect landing pages. After any major event — a theme update, plugin migration, hosting change, or domain change — run an immediate audit regardless of schedule.

### Do I need paid tools for an SEO audit?

No. Google Search Console, PageSpeed Insights, and Chrome DevTools cover the seven steps in this guide at no cost. Paid tools like Screaming Frog (limited free tier), Semrush, or Ahrefs add value for larger sites — bulk crawling, backlink analysis, and keyword tracking — but they're not required to complete a thorough free SEO audit on a WordPress site.

### What's the difference between a technical audit and a content audit?

A **technical audit** focuses on whether search engines can correctly crawl, render, and index your pages — covering things like site speed, robots.txt, HTTPS, structured data, and redirect health. A **content audit** evaluates whether your pages are relevant, comprehensive, and trustworthy enough to rank for their target queries — covering things like title tags, E-E-A-T signals, thin content, and freshness. Both are necessary. Technical issues prevent ranking regardless of content quality; content issues prevent ranking even if the technical foundation is perfect.

### Can I automate SEO audits?

Partially. Technical checks like Core Web Vitals monitoring, 404 detection, and indexing status can be automated with tools that poll your GSC data on a schedule. Content quality assessment still requires human judgment for nuanced issues like E-E-A-T signals and topical relevance. RankWiz automates the GSC data analysis layer — connecting directly to your Search Console data to surface coverage issues, traffic drops, and opportunity gaps — so your manual audit time focuses on decisions, not data gathering.

---

## What's Next?

Once you've worked through this audit, you have a clear picture of where your site stands. The next step is building ongoing SEO habits rather than relying on periodic catch-up audits.

Start with the **[WordPress SEO checklist for beginners](/blog/wordpress-seo-checklist-beginners)** — it covers the foundational on-page practices that prevent most audit findings from occurring in the first place. Then review **[how to understand your site health score](/blog/site-health-score-seo)** to understand how to track progress over time using a single composite metric.

If you're managing SEO across multiple WordPress sites or want the audit findings prioritized automatically, **RankWiz connects to your Google Search Console data and surfaces the issues that matter most** — ranked by estimated traffic impact so you always know where to spend your next hour. [Get early access to RankWiz](/).
