Scrabble tiles spelling SEO Audit on a wooden surface, representing a Yoast SEO checker audit process

Yoast SEO Checker: 20-Minute WordPress Audit Guide

You installed Yoast because someone said it was the best SEO plugin for WordPress. You got green lights, a snippet preview, and a focus keyphrase field. But green lights on one post do not mean your site is actually configured correctly. The Yoast SEO checker built into the post editor only tells you about the content you are writing right now. It does not tell you whether your sitemap is discoverable, whether your canonical tags point the right way, or whether your schema markup is actually rendering in the HTML Google sees. This is the audit that does.

The 20-Minute Yoast SEO Checker Audit

A complete Yoast SEO audit takes about 20 minutes if you know what to check and where to look. The plugin handles most of the technical plumbing automatically, but “automatically” does not mean “verified.” Open a second browser tab, paste your homepage URL into it, and walk through the table below. Each item tells you exactly where to check it in Yoast or in the rendered page source, and what good looks like.

Audit StepWhere to CheckWhat Good Looks Like
Title tagView-source, Ctrl+F for <title>One tag, under 60 chars, contains keyphrase
Meta descriptionView-source, Ctrl+F for name=”description”One tag, 120 to 155 chars, custom-written
Focus keyphraseYoast sidebar, SEO analysisGreen bullets on a phrase with real search demand
XML sitemapOpen yoursite.com/sitemap_index.xmlValid XML, child sitemaps listed, submitted to GSC
robots.txtOpen yoursite.com/robots.txtSitemap directive present, no blocks on /wp-content/
CanonicalView-source, Ctrl+F for rel=”canonical”One per page, points to clean URL of current page
Schema markupPaste URL in Google Rich Results TestValid JSON-LD detected, no duplicate type blocks
Internal linksYoast, Tools, SEO Data OptimizationNo orphaned posts, cornerstone pages well-linked
Image alt textInspect images in WordPress editorDescriptive alt text, 30 to 70% contain keyphrase
ReadabilityYoast sidebar, Readability analysisGreen bullets, Flesch score fits your audience

Work through the table top to bottom. Each section below expands on the row with specific instructions, what to look for in the rendered HTML, and the curl or view-source commands that are more reliable than trusting the plugin UI.

Titles and Meta Descriptions: Check the Rendered HTML

Browser Inspector panel showing HTML source code with div tags and class attributes, used to verify title tags and meta descriptions

Yoast’s snippet preview shows you what your title and meta description will look like in search results. But the snippet preview is a WordPress admin tool. What Google actually sees is the HTML in your page source. The two can differ when a theme overrides Yoast, when a caching plugin strips tags, or when a page builder conflicts with the meta output. The only reliable check is view-source.

How to check your title tag

In the Yoast sidebar, look at the SEO title field. This is what Yoast will output as your title tag. But do not stop there.

Open the live page in your browser, right-click, and select View Page Source (or press Ctrl+U on Windows, Cmd+Option+U on Mac). Press Ctrl+F and search for <title>. You should see exactly one title tag, and it should contain your focus keyphrase and a compelling description of the page.

If you see two title tags, your theme is competing with Yoast. Check your theme’s header.php for a hardcoded title tag and remove it. Your theme should use add_theme_support(‘title-tag’) instead, which lets WordPress and Yoast handle the title dynamically.

For a faster check, open your browser’s DevTools (F12 or right-click, then Inspect), switch to the Console tab, and paste:

console.log('TITLE:', document.title.length, 'chars:', document.title);

This returns the live title with its character count. Google typically truncates titles around 60 characters, though the pixel width matters more than the character count.

How to check your meta description

In the Yoast sidebar, look at the Meta description field. If it is empty, Yoast generates one from your page content, which usually produces a generic first-sentence fallback that kills click-through rate. Write a custom 120 to 155 character description that includes your focus keyphrase.

Then verify it in the page source. Search for name=”description” in view-source. You should find exactly one meta description tag with your custom text. If it is missing, your theme may not call wp_head() in header.php, which is the function Yoast uses to output its meta tags.

Check with curl from the terminal:

curl -s https://yoursite.com/ | grep 'name="description"'

This returns the raw meta description tag as the server sends it, before any JavaScript runs. If curl finds it but view-source does not, you have a rendering issue. If neither finds it, Yoast is not outputting it. Yoast’s own documentation covers the most common causes.

What good looks like

One title tag per page, under 60 characters, containing your focus keyphrase near the start. One meta description, 120 to 155 characters, written to earn clicks rather than describe the page mechanically. No duplicate title tags across pages. No template fallbacks like “Home” or “Blog” on key pages.

Focus Keyphrase: What Yoast Gets Wrong

Yoast’s focus keyphrase field is the core of its on-page analysis. You type a keyword, and Yoast checks whether it appears in your title, heading, content, URL slug, and meta description. The green light feels like confirmation that your page is optimized. It is not, and understanding why is the difference between an audit that finds real problems and one that just collects green bullets.

What Yoast actually checks

Yoast checks keyword presence, not keyword strategy. It verifies that your focus keyphrase appears in the right places on the page. It does not check whether anyone searches for that phrase, how competitive it is, or whether your site has the authority to rank for it. A green light on a phrase with zero search volume looks identical to a green light on a phrase with 10,000 monthly searches.

Yoast also counts keyphrase density, checking that your phrase appears in 0.5% to 3% of your content, according to Yoast’s keyphrase density documentation. But density is a crude proxy for topical relevance. A page that uses the exact phrase three times and covers the topic thoroughly will outperform a page that stuffs the phrase fifteen times to hit a percentage target.

How to check it properly

In the Yoast sidebar, enter your focus keyphrase in the Focus keyphrase field. Scroll through the SEO analysis bullets below it. Green bullets mean Yoast found the keyphrase where it expected. Red bullets mean it did not.

But after the green lights, do three things Yoast does not:

  • Search for your keyphrase in Google. Are the ranking pages similar to yours in depth and scope? If the top results are 2,000-word guides and yours is 400 words, the green light is misleading.
  • Check search volume with a keyword research tool. Yoast does not report whether your phrase has actual search demand.
  • Read your content as a human. Does the keyphrase appear naturally, or did you force it to satisfy the density check?

For a complete breakdown of where Yoast’s content analysis helps and where it creates false confidence, our Yoast SEO plugin review covers the gap in detail.

Sitemap, robots.txt and Canonicals

Laptop displaying Google search results page, representing how search engines crawl sitemaps and index website pages

Three technical SEO elements that Yoast handles automatically but that you should verify manually: your XML sitemap, your robots.txt file, and your canonical tags. Each one is a single line in your page source or a single URL you can open in your browser. The check takes two minutes per item.

XML sitemap

Yoast generates your sitemap at yoursite.com/sitemap_index.xml. Open that URL in your browser. You should see an XML file listing child sitemaps for posts, pages, categories, and other content types. Each child sitemap contains the URLs Google should crawl.

If the page returns a 404, go to Yoast, then Settings, then Site features in your WordPress dashboard and confirm XML sitemaps is toggled on. If it is on but the sitemap still 404s, resave your permalinks under Settings, then Permalinks. WordPress rewrite rules occasionally need refreshing after a plugin update.

Verify the sitemap is listed in your robots.txt file and submit it to Google Search Console. In Search Console, go to Sitemaps under the Index section, enter sitemap_index.xml, and click Submit. Check back in a few days under the Sitemaps report to confirm Google processed it and see how many URLs were indexed.

Check the sitemap with curl:

curl -s https://yoursite.com/sitemap_index.xml | head -20

You should see valid XML with sitemapindex and sitemap entries. If you see HTML or a 404 page, the sitemap is not generating. This usually means another plugin is conflicting with Yoast’s sitemap output.

robots.txt

Yoast generates a virtual robots.txt file at yoursite.com/robots.txt. Open that URL in your browser. You should see something close to:

User-agent: *
Disallow:

Sitemap: https://yoursite.com/sitemap_index.xml

The Disallow with no path after it means “allow everything.” The Sitemap directive tells crawlers where to find your XML sitemap. If the Sitemap line is missing, Yoast is not generating the robots.txt file or another plugin is overriding it.

To edit robots.txt through Yoast, go to Yoast SEO, then Tools, then File Editor. If that menu is missing, your WordPress installation has disabled file editing. You can create a physical robots.txt file via FTP and upload it to your site root, which overrides the virtual file. Yoast’s robots.txt guide covers the details.

A common mistake: blocking /wp-content/ in robots.txt. This directory contains your theme’s CSS, JavaScript, and images. Blocking it prevents Google from rendering your pages correctly. If you see Disallow: /wp-content/ in your robots.txt, remove it.

Canonical tags

Yoast outputs a canonical tag on every indexable page by default, according to Yoast’s canonical tag specification. In view-source, search for rel=”canonical”. You should find one link tag pointing to the clean version of the current page URL:

<link rel="canonical" href="https://yoursite.com/your-page/" />

What to check: the href should point to the page you are viewing, not to your homepage or a different URL. If the canonical points to the wrong page, check the Canonical URL field in Yoast’s Advanced tab for that post or page.

Yoast does not output a canonical tag on pages marked as noindex. If you see no canonical tag and the page should be indexed, check the search appearance settings for that post type under Yoast, then Settings, then Content types.

To verify Google sees the same canonical you declared, use the URL Inspection tool in Google Search Console. Enter your URL, scroll to Page indexing, then Google-selected canonical. If Google selected a different URL than the one in your canonical tag, you have a duplicate content signal Google is resolving without your input.

Schema Output: How to Verify It

HTML source code on a dark monitor screen showing structured markup, representing JSON-LD schema validation in view-source

Yoast outputs JSON-LD structured data on every page, describing your site as an Organization, your pages as WebPage or Article, and your breadcrumbs as BreadcrumbList. The schema is generated server-side, which means it appears in the raw HTML Google crawls. But “generated” does not mean “valid” or “correct.” You need to verify it with Google’s own tools.

How to check schema in view-source

Open view-source (Ctrl+U) and search for application/ld+json. You should find one or more script blocks with type=”application/ld+json”. Yoast uses a @graph structure that bundles multiple entities (WebPage, WebSite, Organization, BreadcrumbList) into a single JSON-LD block.

Count the blocks. If you see multiple JSON-LD blocks from different plugins or your theme all declaring the same @type (two Organization blocks, for example), you have a schema conflict. Search engines see competing claims about the same entity. Remove the duplicates and let Yoast handle the output.

Check with curl:

curl -s https://yoursite.com/ | grep 'application/ld+json'

This confirms the JSON-LD is in the server-rendered HTML, not injected by JavaScript. If curl finds it but view-source does not, or vice versa, you may have a caching layer serving different HTML to different user agents.

How to validate with Google’s tools

Paste your URL into Google’s Rich Results Test. The tool renders the page as Googlebot does and reports which structured data types it detected, whether each is valid, and which rich result types your page is eligible for.

For broader validation, use the Schema Markup Validator at validator.schema.org. It checks all schema.org markup against the vocabulary’s own rules, not just the types Google uses for rich results. This catches properties that are valid schema.org but not used by Google for rich results.

In Google Search Console, check the Enhancements reports (Breadcrumbs, Article, FAQ, Product) for error counts. These reports show issues across your entire site, not just one page. A spike in errors after a theme update or plugin change means something broke your schema output sitewide.

Internal Links and Alt Text

Yoast checks internal linking and image alt text at the individual post level. The SEO analysis flags whether your focus keyphrase appears in an image alt attribute and whether you have outgoing internal links. But sitewide internal linking health and image alt coverage require manual checks the plugin does not perform.

Internal links

In the Yoast sidebar, the SEO analysis includes a check for internal links on the current post. A green bullet means at least one internal link is present. But one link is the floor, not the goal.

To check sitewide internal linking, go to Yoast SEO, then Tools, then SEO Data Optimization (Premium only). This scans your content library and generates a linking analysis showing which posts have incoming links and which are orphaned, meaning zero internal links point to them.

If you do not have Premium, search for your target post’s slug in the WordPress admin search box. Open each post that mentions the topic and check whether it links to the target post. At 30 or more posts, this manual approach is unsustainable. The internal linking suggestions in Yoast Premium, which we cover in our Yoast SEO Premium pricing analysis, are the feature that justifies the upgrade for large content libraries.

What good looks like: every post has at least one internal link pointing to it from another relevant post. Your most important pages, your cornerstone content, have the most internal links. Orphaned posts are linked from relevant existing content.

Image alt text

Yoast’s image alt attributes assessment checks whether your images have alt text and whether it contains your focus keyphrase. But the check runs only on the post you are editing. It does not scan your entire media library for missing alt text.

To check a specific post, open it in the WordPress editor. For each image block, check the Alt Text field in the sidebar. Yoast will flag images missing alt text in the SEO analysis.

For a sitewide check, open a post in your browser, right-click an image, and select Inspect. The img tag should have an alt attribute with descriptive text. If alt=”” (empty), that is correct for decorative images only. If the alt attribute is missing entirely, add one in the WordPress media library.

Yoast also checks keyphrase density in alt text. If more than 70% of your images contain the focus keyphrase in their alt text, you get an orange bullet for keyword stuffing. Keep the ratio between 30% and 70%.

Readability

Yoast’s readability analysis scores Flesch Reading Ease, sentence length, passive voice, and transition word density. The analysis runs automatically in the sidebar alongside the SEO analysis. Green bullets mean your content passes the readability checks.

What Yoast does not tell you: readability scores measure sentence-level mechanics, not content quality. A post can score green on readability and still be useless if it lacks depth, originality, or expertise. Use the readability check to catch unintentionally complex sentences, not as a proxy for whether your content is worth reading.

What good looks like: green or acceptable bullets on readability, with a Flesch score appropriate for your audience. A legal or technical audience tolerates lower readability scores than a consumer audience. Do not sacrifice precision to hit a number.

What Yoast Cannot Check for You

Website analytics dashboard showing traffic growth chart and visitor data, representing Google Search Console performance reporting

Yoast is an on-page optimization checker. It verifies that the content you have written follows SEO best practices. It does not verify whether your site is actually ranking, whether Google is crawling it, or whether your content strategy is targeting the right keywords. Here is what Yoast cannot check and where to look instead.

Indexing status

Yoast does not know whether Google has indexed your pages. A green light in the editor means your content is optimized. It does not mean Google has crawled it. Check indexing status in Google Search Console under the Pages report. The report shows how many pages are indexed, how many are excluded, and why.

Search performance

Yoast does not track rankings or impressions. It cannot tell you which queries your pages appear for or what position they hold. That data lives in Google Search Console’s Performance report, which shows impressions, clicks, average position, and CTR by query, page, and country. For a deeper look at how to use Search Console alongside your SEO plugin, our guide on automatic SEO on WordPress covers which tasks plugins handle and which require GSC.

Content production

Yoast optimizes content that already exists. It does not research keywords, draft posts, or maintain a publishing schedule. If your blog has five posts and you have not published in three months, the green lights on those five posts are not moving your traffic. The bottleneck is content production, not optimization. For a complete breakdown of what SEO plugins can and cannot automate, our comparison of the best SEO plugins for WordPress covers the full landscape.

ClearPost pairs with your existing Yoast installation to handle the layer Yoast cannot: keyword research from live SERP data, full-article drafting, on-page SEO structuring, and scheduled publishing to an approval queue. You review every post before it goes live. No auto-publishing, no unreviewed drafts on your live site. Try ClearPost free for 7 days and see what 30 SEO-optimized posts a month looks like compared to the four you are getting now.

Frequently Asked Questions

How do I check if Yoast SEO is working correctly?

Open your page in view-source (Ctrl+U) and search for your title tag, meta description, canonical link, and JSON-LD schema. If all four are present and correct in the raw HTML, Yoast is outputting properly. Then verify in Google Search Console that your sitemap is submitted and your pages are indexed.

Where is the Yoast SEO sitemap located?

Yoast generates your sitemap at yoursite.com/sitemap_index.xml. You can also find it in WordPress under Yoast SEO, then Settings, then Site features, then XML Sitemaps, where a link opens the live sitemap in a new tab.

Why is my Yoast meta description not showing in Google?

Google frequently generates its own description from page content rather than using the meta description you provide. Check view-source to confirm the meta description tag is in your HTML. If it is present, the issue is Google overriding it, not Yoast failing to output it.

Does Yoast SEO check for schema markup?

Yoast generates JSON-LD schema automatically, but it does not validate it. Paste your URL into Google’s Rich Results Test at search.google.com/test/rich-results to verify your structured data is detected and valid.

Can Yoast SEO tell me if my page is indexed by Google?

No. Yoast only checks on-page optimization. To verify indexing, use Google Search Console’s URL Inspection tool or the Pages report, which shows indexed, not indexed, and excluded URLs with reasons.