FAQ schema is one of the easiest pieces of structured data to add to a WordPress page, and one of the most misunderstood. A lot of tutorials still promise that it will double the size of your search listing. That stopped being true for most sites in 2023. It is still worth doing, though, for reasons that have nothing to do with a bigger snippet.

This guide explains what FAQ schema is, what it does in 2026, the rules you must follow, and two ways to add it: a manual method using a Custom HTML block, and a no-code method using a free plugin.

What FAQ schema actually is

FAQ schema is structured data using the FAQPage type from schema.org. It is usually written as JSON-LD, a small block of JSON inside a <script type="application/ld+json"> tag. It tells machines, in a format they do not have to guess at, "this page contains these questions, and these are the answers".

A person reading your page sees a heading and a paragraph. A crawler sees the same text but has to infer that the heading is a question and the next paragraph answers it. The markup removes that guesswork.

The honest part: what changed in August 2023

For several years, a page with valid FAQ markup could show expandable questions directly under its listing in Google. That made the result taller and pushed competitors down, so everyone added FAQ schema to everything.

In August 2023 Google changed this. FAQ rich results are now shown only for well-known, authoritative government and health websites. For a typical business blog, shop or portfolio, adding FAQ schema will not produce the expandable result in Google Search.

So why bother? Three reasons:

  1. The visible FAQ is good content. A short FAQ at the end of a page answers the exact follow-up questions people type into search. That helps the reader regardless of any markup.
  2. Other systems still read it. Structured data is a public standard. Other search engines, answer engines and AI assistants can parse a clean FAQPage block far more reliably than they can parse loose headings.
  3. It costs almost nothing. If you are already writing the FAQ, marking it up takes a minute. There is no penalty for valid, honest FAQ markup on a normal site.

What it will not do is magically lift rankings. Treat it as tidy, machine-readable housekeeping, not a growth hack.

Google's rules for FAQ content

Whether or not you get a rich result, follow the guidelines. Misleading structured data can earn a manual action, and it is simply bad practice.

  • The FAQ must be visible on the page. Every question and answer in the markup should also appear in the page content a visitor can read.
  • One authoritative answer per question. FAQPage is for questions you, the site owner, have answered. There is no voting, no multiple user answers.
  • User-submitted Q&A is a different type. If visitors ask and other visitors answer, as on a forum or a product Q&A, that is QAPage, not FAQPage.
  • No advertising. Do not use FAQ markup to push promotional copy dressed up as questions.
  • Do not repeat the same FAQ across the whole site. Mark up the FAQ on the page where it belongs, not in a footer that appears everywhere.
  • No offensive, violent or explicit content, as with any structured data.

Keep answers short and complete. Two to four sentences is plenty. If an answer needs a full tutorial, it should probably be its own article, linked from the FAQ.

Method 1: Hand-written JSON-LD in a Custom HTML block

This works on any WordPress site, with or without an SEO plugin. It does involve pasting a small piece of code, so it is not strictly "no code", but you do not need to understand programming to do it.

Step 1: Write the visible FAQ

In the block editor, add a Heading block called "Frequently asked questions". Under it, add each question as a smaller heading (H3) and each answer as a Paragraph block. You can also use a Details block if you want the answers to expand and collapse.

Step 2: Add a Custom HTML block

At the end of the post, click the + inserter, search for Custom HTML, and add the block. Paste in JSON-LD like this, replacing the text with your own questions and answers:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "Do you deliver outside Rajkot?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. We deliver across Gujarat within three working days."
      }
    },
    {
      "@type": "Question",
      "name": "Can I pay by UPI?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes. We accept UPI, cards and net banking at checkout."
      }
    }
  ]
}
</script>

Step 3: Watch out for the common mistakes

  • Straight quotes only. If you copy from a word processor, curly quotes break the JSON. Paste into a plain text editor first.
  • Commas between items, not after the last one. A trailing comma makes the whole block invalid.
  • Keep the text identical to what is visible on the page.
  • Some security setups strip scripts. On multisite installs, or for users without the unfiltered_html capability, WordPress removes <script> tags from post content. If the block disappears after saving, that is why.

The downside of this method is maintenance. Every time you edit an answer, you have to edit it in two places, and one stray character silently breaks the markup.

Method 2: The no-code way with Impex Rank SEO

Impex Rank SEO is a free WordPress SEO plugin that includes an FAQ field in the post editor. You type the questions and answers in plain boxes, and the plugin writes the FAQPage JSON-LD for you as part of its schema graph.

Step 1: Install the plugin

In your WordPress admin, go to Plugins → Add New, search for "Impex Rank SEO", install and activate it. The Setup Wizard opens automatically and takes a couple of minutes.

Step 2: Open the Advanced tab in the SEO box

Edit the post or page. Below the content you will find the Impex Rank SEO meta box with the tabs General, Analysis, Social and Advanced. Open Advanced.

Step 3: Add your questions

Click + Add FAQ. Type the question in the first box and the answer in the second. Add as many pairs as you need, and use Remove to delete one. Save or update the post.

Step 4: Show the same FAQ on the page

The FAQ field creates the markup only. Google requires the questions to be visible too, so add the same questions and answers to your content as headings and paragraphs, as in Method 1, Step 1. Copy them across exactly.

What the plugin outputs

The FAQ is not a separate, stand-alone script. It is added as an FAQPage node inside the plugin's single connected JSON-LD @graph, alongside your Organization or Person, WebSite, WebPage, BreadcrumbList and Article nodes. Answers are output as plain text, with HTML stripped, which keeps the markup clean. You can read more about how the graph fits together on our schema markup for WordPress page and in the structured data docs.

Let the AI Writer do it

If you use the plugin's built-in AI Writer, the generated article can include an FAQ section (the Add an FAQ option under Content & Defaults). The same question and answer pairs are written into the FAQ field automatically, so the visible FAQ and the markup match from the start. The AI Writer uses your own provider key, and the free plugin generates three articles per calendar month.

Testing your FAQ schema

Once the page is published, check it with two free tools:

  • Google Rich Results Test shows whether Google can read the markup. Because of the 2023 change, it may detect valid FAQ markup without promising a rich result. That is normal.
  • Schema Markup Validator (validator.schema.org) checks the markup against the schema.org vocabulary, independent of Google's features.

Tips that save a lot of confusion:

  1. Test the live URL, not a draft preview. Drafts and previews are not publicly reachable, so testing tools cannot fetch them.
  2. Check both question and answer are filled in. A pair with an empty question or answer is left out of the markup.
  3. Purge your cache. A caching plugin or CDN may be serving a copy from before you added the FAQ.

Avoid duplicate FAQ markup

Duplicate markup is the most common FAQ schema problem on WordPress sites. It happens when two things generate FAQ JSON-LD for the same page:

  • Another SEO plugin is still active alongside the new one. Run only one SEO plugin at a time.
  • An FAQ block from a theme or page builder adds its own schema. Many "FAQ" or "accordion" blocks output markup automatically. If you use one, either switch its schema option off or leave the Impex Rank SEO FAQ field empty for that page. Pick one source.
  • A leftover Custom HTML block from Method 1 that you forgot to delete after switching to the plugin.

Run the Rich Results Test. If it shows two FAQ items for one page, find the second source and remove it.

Frequently asked questions

Will FAQ schema still give me the expandable FAQ result in Google?

Probably not. Since August 2023 Google shows FAQ rich results only for well-known, authoritative government and health websites. The markup is still valid, still read by other search engines and AI systems, and the visible FAQ still helps your readers.

Do the questions have to be visible on the page?

Yes. Google's guidelines say the FAQ content in the markup must also be visible to users on the page. Marking up questions that readers cannot see is treated as misleading structured data.

Can I use FAQ schema for a page where visitors post their own questions?

No. FAQPage is for questions and answers written by the site owner, one answer per question. Pages where users ask and other users answer, like a forum thread, should use QAPage markup instead.

How do I add FAQ schema in WordPress without a plugin or code?

Without any plugin you have to paste a JSON-LD script into a Custom HTML block, which is code. The no-code route is an SEO plugin with an FAQ field, such as the free Impex Rank SEO, where you type questions and answers into the post editor and the JSON-LD is generated for you.

Why does the Rich Results Test not find my FAQ schema?

Test the published URL, not a draft preview, because testing tools cannot fetch drafts or previews. Make sure you saved the FAQ pairs on that post, and purge any page or CDN cache so the test sees the latest version.

Add FAQ schema the easy way

Install Impex Rank SEO free from WordPress.org, or in your admin go to Plugins → Add New and search for "Impex Rank SEO". FAQ schema, LocalBusiness, Product and Article markup, sitemaps and redirects are all included free. See every module on the features page.