← Back to blog

Structured Data (JSON-LD) for SEO and AI: A Practical Guide

What JSON-LD and schema.org are, why they help Google and AI, and how to implement the four most impactful types — Organization, Article, FAQPage, BreadcrumbList.

Structured data is something everyone talks about in SEO, but few implement properly. Yet it takes minimal time and delivers concrete results: richer results in Google and better citability in AI.

In this article I focus on JSON-LD — what it is, why it matters, and how to implement the four types with the greatest practical impact.

What JSON-LD and schema.org are

Schema.org is a vocabulary that defines what things on the web mean. Organisation, article, question with answer, address, product — each of these has its own type and properties, agreed upon by Google, Bing, Yahoo, and Yandex.

JSON-LD (JSON for Linked Data) is a way to write that vocabulary. It goes into a <script type="application/ld+json"> in the head or body of the page and requires no changes to the visible HTML.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "Article title",
  "author": {
    "@type": "Person",
    "name": "Miroslav Lalík"
  },
  "datePublished": "2026-06-24"
}
</script>

That is it. Google reads this and knows what is on the page — without having to parse natural language.

Why it helps Google

Google uses JSON-LD to generate rich results — visually enhanced search results. Instead of a plain title and description, you see stars on a review, FAQ questions expanded directly in the results, a breadcrumb trail under the link, or a publication date for an article.

These elements increase CTR. A page in 4th place with expanded FAQ questions can easily outperform results ranked above it.

Important: Google validates the data. If you write FAQ questions in JSON-LD that are not on the page, or the author does not match the actual author, you will not get rich results — or you will lose them. Structured data is a machine-readable transcript of visible content, not a way to add hidden information.

Why it helps AI

ChatGPT, Gemini, Perplexity, Claude — all of them read the web. Some crawl directly, some learn from data that includes page structure.

When a page has JSON-LD with a clear @type, author, date, and headline, an AI model can cite the source unambiguously. Without it, the model has to guess: is this the company name or a section heading? Is this the author or just text on the page?

A well-structured page is like a well-described database record for an AI model. Easier to understand, easier to cite, easier to place in an answer.

GEO (Generative Engine Optimisation) as a field is still emerging, but the basic principle holds: citability starts with machine readability.

The four types to focus on

Organization

Tells Google that this page belongs to a specific organisation. Ideally placed on every page of the site, or at least on the homepage.

What belongs there: name, URL, logo, contact email, address, social media profiles. Set it once, forget about it.

Why it makes sense: Google connects your site to your entity in the Knowledge Graph. It helps especially with brand search — when someone searches for your name.

Article

Marks a blog post or article. Key properties: headline, author, datePublished, dateModified, image, publisher.

Without Article, Google does not know whether a page is an article or a product page. With Article, it can display the date, author, and image in results. For AI, Article is a signal that the content is authored, dated, and citable.

FAQPage

Marks a page or section that contains questions and answers. Google uses this to generate rich results directly in search — expanded questions beneath the result.

The requirement: every question and answer in the JSON-LD must be visible on the page. Google checks this. It also makes sense: FAQ rich results serve users, not as marketing space.

{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "What is JSON-LD?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "A format for writing structured data into an HTML page."
      }
    }
  ]
}

FAQPage is one of the most effective types in terms of search visibility. And for AI models it is an ideal format — explicit pairing of question with answer.

BreadcrumbList

Shows the navigation path beneath the link in search results. Instead of a bare URL, the user sees: solutionbox.cz › Blog › JSON-LD.

That alone increases CTR. The user immediately knows where the page sits in the site hierarchy.

Technically it is a list of ListItem elements with position and URL. Implemented on every page that has parent sections.

One rule almost everyone breaks

The data in JSON-LD must match what the user sees on the page.

This is not fiction. Google Search Console explicitly warns about mismatches between structured data and visible content, and can remove rich results or penalise sites as spam.

In practice that means: do not implement FAQ in JSON-LD if there is no FAQ section on the page. Do not list an author if the name is not on the page. Do not put a different text in headline than the article heading.

What we deploy on solutionbox.cz

This site has all four types deployed. Organization runs on every page. Article and FAQPage run on the blog — including this article. BreadcrumbList reflects the hierarchy of the section and the specific page.

When analysing competitors in the B2B .NET/ERP integration niche, we found no other site with both Article and FAQPage deployed on the blog simultaneously. Structured data is part of what we offer clients — we implement it as standard on SEO and web projects.

Rich results are not a guarantee — Google displays them or not, at its own discretion and based on content quality. But without JSON-LD the chance is zero. That is reason enough.

FAQ

What is JSON-LD and how does it differ from microdata and RDFa?

JSON-LD is a way to write structured data in a standalone <script type="application/ld+json"> block in HTML. It does not mix with the visible content of the page, which makes it easier to maintain than microdata or RDFa, where attributes are scattered directly in the HTML tags. Google recommends JSON-LD as the preferred format.

Must JSON-LD match the visible text on the page?

Yes. Google actively checks this and penalises sites that include information in JSON-LD that is not visible on the page, treating it as spam. Structured data is a machine-readable transcript of what the user reads — not a hidden advertising layer.

Do structured data help in AI responses too (ChatGPT, Gemini, Perplexity)?

None of these systems confirm it directly, but there is a logical reason why they do: AI models learn from (or crawl) the web, and JSON-LD gives them unambiguous machine context — who the author is, what the topic is, what the question and answer are. Sites with strong structured data are citable without ambiguity.

Facing a similar problem? Get in touch.

Book a consultation