Prostor
All articles
21 September 2026

Structured data and JSON-LD explained for marketers

What JSON-LD actually is, how it differs from page text, and which schema.org types matter for a business site: Organization, Product, FAQPage, LocalBusiness.

A page can look finished and still be unreadable to a machine. The text says "Prostor builds websites for real estate developers," but nothing on the page tells a crawler that Prostor is an organization, that "website" is the service, or that the sentence is a description rather than a customer quote. Structured data closes that gap. It is worth understanding on its own, past the general case for AI visibility we made in how we make websites visible to ChatGPT and AI search — this article is about the mechanism itself.

What JSON-LD actually is

JSON-LD stands for JSON for Linking Data. It is a block of JSON, ordinary key-value data, wrapped in a script tag with the type application/ld+json and placed inside the page's HTML. The browser does not render it, does not style it, does not show it to anyone scrolling the page. A crawler parses it separately from the visible content and reads it as a set of labeled facts.

A minimal example, in words rather than code: a business page might carry a JSON-LD block that states its type is Organization, its name is "Prostor," its website is prostor-agency.com, and its logo is at a given URL. None of that text appears anywhere on the rendered page. It is a parallel, machine-facing description of the same page a person is reading.

How it differs from the visible text

Visible text is written for people and read for tone, argument and persuasion. A search engine or an AI model can extract meaning from it too, but only by inference: guessing that a heading is a product name, that a number near a currency symbol is a price, that a question-shaped paragraph is an FAQ entry. Inference is unreliable and gets more unreliable as page design gets more creative.

JSON-LD removes the guessing. Instead of a heading that might be a product name, there is a field literally called name inside a block literally typed Product. Instead of hoping a crawler notices a phone number in the footer, there is a telephone field inside an Organization block. The visible page and the JSON-LD block usually describe the same facts, but the JSON-LD block states them in a vocabulary the machine already knows, rather than one it has to reconstruct from formatting and context.

The schema.org types that matter for a business site

Schema.org is the shared vocabulary behind JSON-LD: a maintained list of types (Organization, Product, Article, Event and hundreds more) and the fields each one is expected to carry. Google, Bing and most AI crawlers read it because it is the same vocabulary across the entire web, not something each site invents on its own. A handful of types cover most of what a B2B or e-commerce site needs.

Organization identifies who runs the site: legal name, logo, links to social profiles, contact details. It belongs on every page, usually injected once in a shared layout, and it is the anchor everything else attaches to.

Product describes something for sale: name, price, availability, reviews. On an e-commerce catalogue this is what lets a price or a star rating show up directly in search results, instead of a plain blue link.

FAQPage marks a genuine list of questions and answers as exactly that, question by question. Search engines can render these as expandable answers directly in results, and AI assistants can lift a single answer without reading the whole page.

BreadcrumbList describes where a page sits in the site's hierarchy: home, then category, then this page. It helps a crawler understand site structure faster than following links to work it out.

LocalBusiness extends Organization with a physical dimension: address, service area, opening hours. It matters for any business that serves a defined region or has a location people visit, and it is what location-aware search and map results key off.

How crawlers actually read it

A search engine or AI crawler fetches the page, parses the HTML, and pulls out any application/ld+json blocks alongside the visible content. It does not need to interpret layout or design to get the facts: type, name, price, question, answer are already labeled. That is why structured data pairs so directly with the case we made for AI search visibility — an AI assistant assembling an answer from several sites favors the ones where the facts are already extracted, over ones where it has to read paragraphs and guess.

This is also why structured data has to match the visible page. Search engines treat markup that contradicts what a visitor actually sees as a signal to distrust, sometimes to penalize. The JSON-LD block is a translation of the page, not a separate story.

Getting this right on a website

Structured data is not a plugin bolted on afterward, it is generated from the same data that renders the page, so the two can never drift apart. Every site we build carries Organization markup site-wide and the relevant Product, FAQPage, BreadcrumbList or LocalBusiness blocks per page type, as part of how we build websites, with no separate line item for it.

Questions

What is JSON-LD?

A block of structured data written in JSON and embedded in a page's HTML. It describes the page's content in a fixed vocabulary, schema.org, so a machine does not have to guess what a paragraph means. It sits inside a script tag and never appears in the rendered page.

Is structured data mandatory for a website?

No page fails to load without it. But search engines and AI crawlers use it as a shortcut to understand a page, and several visible features, star ratings, FAQ dropdowns, product prices in results, only appear when the matching schema is present. Skipping it means competing without those shortcuts.

Which schema.org types matter most for a business site?

Organization on every page for identity, Product on catalogue pages if you sell physical goods, FAQPage wherever there is a real FAQ, BreadcrumbList for navigation depth, and LocalBusiness if the business serves a physical area or has a storefront.

Does a visitor ever see the structured data?

No. It is invisible markup, read by crawlers and search engines, not rendered on the page. A visitor sees the normal text, images and layout; the JSON-LD block sits underneath, unstyled and inert, doing its job without asking for screen space.

First page of the Prostor project brief template
Resource

Project brief template

The same document we send clients before we start. Seven sections, about twenty minutes to fill in, and it removes half the questions from the first call.

What is inside
  • Company and project
  • The task and what success looks like
  • Who buys
  • What the site needs
  • Timeline, budget, constraints
  • Taste and examples
  • Materials and sign-off
PDF · 3 pages · fill it in by hand or in any editor

Tell us the task in four answers

Answer with the buttons or in your own words — that is enough for us to come to the call with thoughts instead of generic questions.

Ruslan Kochubarov
Ruslan Kochubarov
Founder, art director

Tell us about the task

Book a 30-minute call or leave a request — we reply within 30 minutes during working hours and send a brief and relevant examples.

Book a call

Projects from $2,500 · ongoing support from $1,500/mo

  1. Reply within 30 minutes
  2. A 30-minute call
  3. A scoped estimate