Senior specialists Diagnosis-first No junior account handling
GEO 19 May 2026

How to Fix AI Readability on WordPress (2026)

19 May 2026

Quick summary

WordPress runs 43% of the web. Two sites on the same theme and hosting can score 30 points apart on AI Readability — entirely from settings WordPress doesn't surface in the admin.

The ten fixes below are ranked by what moves the score most. Shipping the top three usually lifts a site 15-30 points in an afternoon.

Run the free AI Readability Checker on your homepage first to see which apply to you.

Why this matters for WordPress sites

WordPress's flexibility is also its weakness here. The admin doesn't tell you whether your robots.txt allows ClaudeBot, whether your Organization schema has a logo, or whether your homepage has two H1 tags. AI engines read all three signals. Owners rarely check any of them.

The fixes are ordered by how much each moves the audit score, not by where each setting lives in the admin.

What Google said in May 2026

Google published an updated AI Search guide on May 7, 2026. The headline: optimising for generative AI search is optimising for the search experience, and thus still SEO.

Three claims worth knowing:

  • No special files needed. llms.txt and agents.md give no benefit for Google's AI surfaces. They may still help niche LLM tools that read them, but the broad-adoption case is dead.
  • No content chunking needed. Markdown mirrors, sitemap.md, and similar parallel formats are unnecessary. Google's systems handle multi-topic pages natively.
  • No special schema needed for AI. Schema still helps traditional rich results and is still consumed by ChatGPT, Claude, and Perplexity. But adding schema because of AI search is no longer the angle.

Google also stopped rendering FAQ rich results the same day. The markup still parses; the SERP feature is gone.

What this means for our audit weights

We dropped llms.txt from the top of the scoring (it used to be the heaviest check) and reduced weight on agents.md, Markdown mirrors, and sitemap.md. Crawler access and citation quality moved up — that's where Google says the leverage actually is.

1. Allow AI crawlers in robots.txt

The single highest-impact fix. AI engines can't read what they can't fetch.

WordPress serves a virtual robots.txt by default — there's no file on disk. Override it with a plugin, or upload a physical robots.txt to your site root.

The block to add

Paste this above any existing rules:

User-agent: GPTBot
Allow: /

User-agent: ClaudeBot
Allow: /

User-agent: anthropic-ai
Allow: /

User-agent: CCBot
Allow: /

User-agent: Google-Extended
Allow: /

User-agent: PerplexityBot
Allow: /

User-agent: Applebot-Extended
Allow: /

User-agent: cohere-ai
Allow: /

User-agent: Bytespider
Allow: /

Sitemap: https://yourdomain.com/sitemap.xml

To allow search indexing but block AI training: set Disallow: / on Google-Extended and Applebot-Extended only. Those control training data without affecting search crawlers.

In Yoast SEO: Yoast → Tools → File Editor → robots.txt → paste the block → Save changes to robots.txt.

In Rank Math: Rank Math → General Settings → Edit robots.txt → paste the block → Save Changes.

In All In One SEO (AIOSEO): AIOSEO → Tools → Robots.txt Editor → toggle "Enable Custom Robots.txt" → add rules.

No plugin: Upload a robots.txt file to your site's root via FTP/SSH. WordPress will serve the static file in preference to the virtual one. Test by visiting https://yourdomain.com/robots.txt in incognito.

2. Fix heading hierarchy

AI engines use headings to map the page. The audit flags pages with more than one H1, skipped levels (H1 jumping to H3), or fewer than five H2/H3 headings on a substantive page.

The most common WordPress bug: the theme renders the post title as H1 automatically, then someone adds a Heading 1 block inside the content. Now there are two H1s.

The fix

Body content starts at H2. H3 for subsections. H4 only when needed. Don't skip levels.

In Gutenberg, press W to open the Outline view — it shows your actual heading structure. Two H1s or skipped levels jump out.

In Elementor, every Heading widget has a Tag dropdown — set body headings to H2. In Divi, heading tags are in the Text module's Design tab.

Quick check: Open any of your top pages and run document.querySelectorAll('h1').length in the browser console. It should return 1. Anything else is a fix.

3. Write meta descriptions that say something

AI engines read meta descriptions to decide whether to surface a page in an answer summary. Two patterns fail: descriptions under 100 characters, and brand-speak that doesn't say what the page is actually about.

A description that passes names at least one of: a specific category, a named differentiator, or a location. "Award-winning aesthetic treatments in Singapore" passes (category + geography). "A leading clinic dedicated to your beauty journey" fails — nothing concrete to extract.

In Yoast SEO: Below the editor, find the Yoast snippet preview → click the Meta Description field → write 120-160 characters that name the category, location, or differentiator. The traffic-light indicator nudges you toward length but doesn't enforce concreteness — that part is on you.

In Rank Math: Same surface — the snippet preview below the editor. Rank Math's "Focus Keyword" feature additionally flags missing keyword inclusion.

In AIOSEO: AIOSEO Settings panel below the editor → Snippet → Meta Description.

No plugin: Add a Custom Field named _yoast_wpseo_metadesc on a per-post basis, or hook into wp_head in your theme's functions.php to output a <meta name="description"> tag from a post meta field of your choosing.

4. Add Organization schema

Organization schema is how AI engines link your domain to your brand. Without it, they often cite a competitor instead of you when answering questions in your category.

Yoast and Rank Math generate Organization schema automatically — but only if you filled in the setup wizard. Most sites skip it.

In Yoast SEO: Yoast → Settings → Site representation → choose Organization (not Person) → fill in the Organization name, logo (square recommended), and a default OG image. Yoast injects the schema automatically.

In Rank Math: Rank Math → Titles & Meta → Local SEO → Person/Organization → Organization → fill in all fields including phone, address, and social profile URLs. Rank Math's Local SEO module also adds LocalBusiness schema if your business has a physical location.

In AIOSEO: AIOSEO → Search Appearance → Knowledge Graph → set Person or Organization, name, logo, and social profiles.

No plugin: Add a JSON-LD block directly to your theme's header.php or via a wp_head hook. Example:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Your Business Name",
  "url": "https://yourdomain.com",
  "logo": "https://yourdomain.com/wp-content/uploads/logo.png",
  "sameAs": [
    "https://linkedin.com/company/your-business",
    "https://twitter.com/your-business"
  ],
  "contactPoint": {
    "@type": "ContactPoint",
    "telephone": "+65-6000-0000",
    "contactType": "Customer Service"
  }
}
</script>

5. Add Service or Product schema

Organization schema says you exist. Service or Product schema says what you do. Every major service page should have its own Service block. Every product page should have Product with at minimum name, description, image — better with offers, brand, and reviews.

WooCommerce handles Product schema automatically. Service schema almost always needs adding by hand.

In Yoast SEO Premium: Yoast Premium includes a Schema editor inside each page where you can change the page's @type to Service or Product and edit fields.

In Rank Math: Rank Math (free tier) has the most comprehensive schema editor of the three. In any page or post, the Rank Math panel → Schema → Schema Generator → pick "Service" (or other type) → fill in the fields. Rank Math also auto-renders the JSON-LD on the page.

In AIOSEO Pro: AIOSEO Pro adds a Schema tab to the editor with templates for Service, Product, Event, etc.

No plugin: Drop a JSON-LD block in the page template. For a service:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Service",
  "name": "Performance Marketing",
  "provider": {
    "@type": "Organization",
    "name": "Your Business Name"
  },
  "areaServed": "Singapore",
  "description": "Senior-led performance marketing for B2B and consumer brands.",
  "serviceType": "Marketing Services"
}
</script>

6. FAQ schema after Google's May 2026 change

Short answer: keep using it on pages that are genuinely Q&A. Stop using it as a SERP-snippet hack on pages that aren't.

The SERP rich result is gone. The markup still parses cleanly and won't hurt your indexing. Non-Google LLMs (ChatGPT, Claude, Perplexity) appear to still consume FAQ schema when summarising — Google hasn't confirmed whether their own AI surfaces use it.

In Rank Math: The free Schema Generator includes FAQ. Add at least three Q&A pairs for the schema to be useful.

In Yoast SEO: Yoast's FAQ block (Gutenberg) automatically generates FAQPage schema when used. Add an FAQ block, fill in 3+ questions, publish.

In AIOSEO Pro: AIOSEO Schema tab → FAQPage.

No plugin: Inline JSON-LD on the page (see FAQPage example at schema.org/FAQPage).

7. Canonical edge cases

WordPress sets canonicals automatically — fine for most pages. Two cases need a manual override: paginated archive pages (WordPress canonicalises each one to itself, which is rarely what you want) and content syndicated from elsewhere (canonical should point to the original).

All three major SEO plugins let you set the canonical per post.

In Yoast SEO: Below the editor → Advanced → Canonical URL → enter the URL the page should canonicalise to.

In Rank Math: Below the editor → Advanced → Canonical URL.

In AIOSEO: AIOSEO settings panel → Advanced → Canonical URL.

No plugin: Hook wp_head in your theme to output a <link rel="canonical"> tag using a post meta value you control.

8. Make your content concrete enough to be cited

This is the check Google would say matters most. The audit scores three things on the actual content: specificity (does the page name real products, services, or methods?), differentiation (does it distinguish you from alternatives?), and credibility (does it name real clients, results, proof?).

Two WordPress-specific patterns to fix:

Generic homepage hero copy. Most theme defaults ship with a vague tagline like "Your trusted partner in growth." AI engines reading that page have nothing to extract. Replace with a specific claim: what you do, for whom, with what outcome. "Senior-led performance marketing for SEA consumer brands. Most engagements move CAC down 30%+ in 12 weeks" gives an AI engine four citation hooks. The vague version gave zero.

Service pages that describe the service but not the engagement. "We do SEO" is a category statement. "We work with five clients at a time, all senior-led, monthly reporting against one agreed KPI" is a method. Methods get cited; categories don't.

Yoast's "Cornerstone content" flag (Rank Math has the same) marks your most important pages. Concentrate the rewrite there first.

9. Verify everything is actually working

Three free tools. Take five minutes per page.

Schema: paste your page URL into Google's Rich Results Test. It fetches the page and reports which schema types it detected. validator.schema.org is stricter — use it when the Google tool says everything's fine but something still looks off.

Robots.txt: visit yourdomain.com/robots.txt in incognito. You should see your block. If you only see User-agent: * and Disallow: /wp-admin/, the override didn't save or the static file isn't being served.

End-to-end: re-run the AI Readability Checker. Each fix should move the score visibly. Top three fixes usually move it 15-30 points.

See where your WordPress site stands

The free AI Readability Checker scores your homepage in under 60 seconds. No signup required for the first audit.

Run the audit →

What to fix first — a half-day order of operations

First (10 minutes). Update robots.txt to explicitly allow AI crawlers. Biggest score lift per minute spent.

Second (30 minutes). Check Organization schema is present and properly populated. Walk through your SEO plugin's setup wizard if you skipped it the first time. Add a logo, social profiles, contact info.

Third (an hour). Rewrite homepage hero and top three service or product pages for concrete claims. Vague taglines out. Specific category, audience, outcome in.

Fourth (an hour). Fix heading hierarchy on top pages. One H1, no skipped levels.

Fifth (an hour). Rewrite meta descriptions on top pages — 120-160 characters, one concrete claim each.

The other fixes (Service/Product schema, FAQPage, canonical tweaks) are useful but smaller. Tackle them across the next few sprints. The first five account for most of the score lift.

One pass, lasting effect

None of these fixes need ongoing maintenance once set up. The robots.txt block sits there forever. Schema renders on every page via the plugin. Headings stay fixed unless someone explicitly changes them. Meta descriptions, once written well, persist.

That's why it's worth getting right on the first pass. Sites that scored poorly in March usually still score poorly in October — nothing changed.

If your audit surfaces fixes that need more than a plugin can give you — a custom theme that resists schema, a page builder that won't let you control headings, content that needs proper rewriting rather than tweaking — that's the work we take on. Get in touch, or read about the GEO & AI Search service.

Frequently asked questions

Does WordPress need a special plugin for AI Search?

No. Google says no special markup or plugin is needed for AI search — the same SEO fundamentals work. Yoast, Rank Math, or AIOSEO covers most of what's needed. If you can write schema and meta tags directly in your theme, you don't even need a plugin.

Should I still use FAQ schema after Google dropped FAQ rich results?

Yes, but only on pages that actually answer questions. The Google SERP feature is gone — no rich result, no extra real estate. The markup still parses cleanly, and non-Google LLMs (ChatGPT, Claude, Perplexity) appear to still consume it. Don't add FAQ schema to pages that aren't really Q&A.

How do I allow AI crawlers like GPTBot and ClaudeBot in robots.txt?

Add explicit User-agent lines for each crawler. WordPress's default virtual robots.txt is too minimal to cover them. All three major SEO plugins include a robots.txt editor. The block to paste is in the section above.

Which WordPress SEO plugin is best for AI Search?

All three (Yoast, Rank Math, AIOSEO) cover the fundamentals. Rank Math has the deepest free-tier schema support. Yoast has the most mature WooCommerce integration. AIOSEO is the most opinionated UX. Pick by which UI you prefer — they're broadly equivalent on what they output.

How do I verify my schema is working?

Three tools, in order: Google's Rich Results Test (which schema types are detected), validator.schema.org (stricter parse), then the AI Readability Checker (what's missing in plain language).

Chat on WhatsApp