JSON-LD is a W3C-standard JSON syntax for Linked Data. Web pages commonly embed it in script elements to describe entities such as products, articles, organizations, and breadcrumbs with explicit types and properties that machines can parse without reconstructing the page's visual layout.
A JSON-LD document is valid JSON plus keywords such as @context, @type, and @id. The context maps compact keys to globally identifiable terms; @type identifies the kind of entity; and @id can give that entity a stable IRI. The underlying model is a labeled directed graph, so one document can describe connected entities rather than only a nested object tree.
Many websites use schema.org as the context and place the document in a script with type application/ld+json. Search engines recommend JSON-LD for structured-data markup, but JSON-LD is a general linked-data format rather than a Google-only SEO feature.
JSON-LD often exposes stable names, identifiers, prices, availability, authors, dates, and relationships in one machine-readable block. Parsing it can be simpler and less brittle than tying extraction to CSS classes that change with a redesign. A page can contain an object, an array, or an @graph, so extraction code must handle more than one top-level shape.
Treat the markup as a source, not proof. It can be stale, incomplete, duplicated across scripts, or describe a different entity than the page section you are collecting. Compare critical fields with visible content or a source-specific API, retain the page URL, and record which JSON-LD node produced each value.
Select application/ld+json scripts, decode each body with a real JSON parser, then traverse arrays and graphs while matching the entity type you need. Do not assume the first block is the primary object: headers, breadcrumbs, products, reviews, and organization metadata can be split across several blocks.
Malformed markup is common enough to isolate per-script failures. Rejecting one invalid block should not hide valid siblings, while silently repairing arbitrary JavaScript as JSON can create values the publisher never supplied. Keep validation rules explicit and schema-specific.
How Crawlora handles this
For supported sources, Crawlora's platform endpoints return documented structured JSON, so consumers do not have to infer a record solely from page markup. When collecting arbitrary pages directly, JSON-LD remains a useful extraction source that should be validated against the page.
Related reading
Glossary
FAQ
No. JSON-LD is JSON with a linked-data vocabulary and processing model, usually signaled by @context. An API can return ordinary JSON without any linked-data semantics.
Not necessarily. Markup can be stale or describe supporting entities, and publishers can make mistakes. Validate important values against visible content or another authoritative source.
Yes. Pages commonly split breadcrumbs, organization data, articles, products, and reviews across multiple scripts or combine them in an @graph. Parse and inspect every relevant node.
Beyond JSON-LD, Crawlora's own docs cover the rest of the stack — browse the APIs, test a request in Playground, and move from scraping infrastructure work to production data workflows.