No JSON-LD structured data on the page
What it is
The page’s HTML contains no JSON-LD block, the <script type="application/ld+json"> element that describes a page with the schema.org vocabulary: an article with its author and date, a product with its price, an organization with its logo. JSON-LD is the structured data format Google recommends.
Why it matters
Google uses structured data to understand a page, and needs it before showing rich results such as prices, ratings or breadcrumbs, so without it the page competes as a plain result. Google also says no special markup is needed to appear in its AI features. How other AI assistants use structured data is not documented, so treat any effect there as unproven.
How Asky checks it
Asky reads the page’s raw HTML and looks for at least one <script type="application/ld+json"> element; a page with none is reported. The type is matched in any letter case. Microdata and RDFa are not read, so a page marked up only in those formats is reported too, and so is a page whose JSON-LD is added by JavaScript or a tag manager, which Google can read after rendering. The check runs on every page that answers without a 4xx or 5xx error, whatever kind of page it is. When JSON-LD is present, its blocks are checked by the invalid JSON, missing @type and missing @context issues instead.
Reported as an error with high severity.
How to fix it
- Pick the schema.org type that matches the page:
Organizationon the homepage,ArticleorBlogPostingfor posts,Productfor product pages,BreadcrumbListfor pages deeper in the site. - Mark up only what visitors can see on the page, as Google’s structured data guidelines require.
- Write it as valid JSON with
@contextand@typeat the top level, as in the block below, so it does not raise the other structured data issues. - Add it where your platform allows: in WordPress, an SEO plugin adds JSON-LD across the site; in Webflow, the page’s custom code settings, filled from CMS fields on collection pages; with Sanity, the front end renders it from document fields.
- Test the page with Google’s Rich Results Test.
- To leave it as it is: if the page uses microdata or RDFa, carries tested JSON-LD from a tag manager, or is a page where markup adds nothing, such as a login page, mark the issue resolved.
A minimal block for a blog post, placed in the <head>:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "BlogPosting",
"headline": "SaaS Pricing Guide: Models and Examples",
"datePublished": "2026-03-02",
"author": { "@type": "Person", "name": "Maria Jansen" }
}
</script>Example
https://example.com/blog/pricing-guide is a blog post with a visible author and publication date but no JSON-LD. Adding the BlogPosting block above, with the same headline, date and author the page shows, clears the finding.