J
JSON-LD (JavaScript Object Notation for Linked Data) is a structured data format that declares a page’s meaning in a machine-readable form without changing the page’s appearance at all. Answer engines
What is JSON-LD?
JSON-LD is a structured data format that declares a page’s meaning in a machine-readable form without changing the page’s appearance at all.
It is embedded in the page as a separate block and is independent of the HTML structure. That independence is its greatest advantage over the other two structured data formats: even if the page’s visual layout changes completely, the block stays the same and does not break.
This is the format Google explicitly recommends. The other formats scatter the markup through HTML elements; they are hard to maintain and break easily when the layout changes.
A block opens with a field declaring the context and contains nodes. Every node has a type, and the fields defined for that type in schema.org are filled in. The real value lies in nodes being linked to one another by identity — unlinked nodes form a scattered heap, linked ones form a graph.
The most dangerous way to use it is to declare information that is not on screen. That is both a plain violation of search engine guidelines and something that puts the page at odds with itself. The correct pattern: schema adds no new information, it translates existing information into machine language.
It breaks silently: when a block is malformed the page goes on looking normal and no error message appears. That is why validation belongs to the deployment process.
Maintenance matters too: hand-written schema diverges from reality within months. The page changes, the schema stays. That is why the schema should be derived by the generator from the page’s own data — divergence then becomes structurally impossible.
And validation has two layers: syntax is checked by automated tools, meaning by human judgement. A graph that is free of errors but meaningless is technically valid and of no use at all.
- One block, many nodes — gather all the page’s nodes into a single graph.
- Stable identities — define the organisation, the person and the site once, and refer to them from everywhere.
- The page’s own node — every page should carry its own identity.
- Breadcrumb trail — the page’s place in the hierarchy.
- Content node — article, service or definition, depending on the page type.
This order can be skipped, but when it is the upper layers work in vain: an article node without an identity node cannot show its author, and a page without a site node cannot say which site it belongs to.
Example: two nodes linked by identity
The block below describes an organisation and a page it publishes; the page node links to the organisation by identity (@id), not by name. The organisation is defined once, and every page on the site refers to the same identity.
- <script type=
"application /ld+json"> - { "@context": "https://
schema.org", "@graph": [ - { "@type": "Organization", "@id": "https://
www.example.com / #org", "name": "Example Ltd." }, - { "@type": "WebPage", "@id": "https://
www.example.com /about / #webpage", - "publisher": { "@id": "https://
www.example.com / #org" } } ] } - </script>
How to test the block for validity and compliance with Google’s rules is covered under structured data.
If you want to know how your brand is cited in ChatGPT, Google AI Overviews and Perplexity, our GEO consulting records which questions and engines cite you and builds the prerequisites.
Answer engines
L
Language tag (BCP 47) A language tag is the standard coding form that tells machines which language a text is in. Multilingual
LCP (Largest Contentful Paint) is the paint time of the largest content element in a page’s visible area, and Google counts anything under 2.5 seconds as good. Performance
Live region A live region is an area of a page whose changes a screen reader has to announce to the user. Accessibility
llms.txt is an optional file placed in a website’s root directory that summarises, in Markdown, what the site is about and where its most important pages are for language models. Answer engines
Locale A locale is the setting that defines a user’s language and region together and determines the formatting rules. Multilingual
Localisation (Localization) is adapting content to the culture, habits and search language of a target market; it is a wider undertaking than translation. Multilingual
R
Reflow A reflow is the browser recomputing the positions and sizes of elements on a page after a change. Performance
Relative luminance is the value expressing a colour’s perceived lightness between 0 and 1, and it is the basis of the contrast ratio calculation. Accessibility
S
Screen reader A screen reader is assistive technology that turns on-screen content into speech or braille output and lets the user navigate by keyboard. Accessibility
Semantic HTML means choosing each element for its meaning rather than its appearance — a heading element for a heading, a button element for a button, a list element for a list. Accessibility
Structured data is an additional layer that labels a page’s content with a standard vocabulary machines can understand. Answer engines
T
Text expansion is the same content being of different lengths in different languages, and the layout having to flex accordingly. Multilingual
Translation memory A translation memory is a database that stores previously translated sentences and suggests them when the same or a similar sentence comes up again. Multilingual
TTFB (Time to First Byte) is the time between the browser sending a request and receiving the first byte from the server. Performance
W
WCAG (Web Content Accessibility Guidelines) is the international standard published by the W3C that defines the accessibility of web content through testable success criteria. Accessibility
X
x-default is a special hreflang value declaring the default page to show when no language version matches the user’s language. Multilingual