JSON-LD Validator
Pricing
Pay per event
JSON-LD Validator
This actor validates JSON-LD structured data on web pages. It extracts all `<script type="application/ld+json">` blocks, validates JSON syntax, checks for required properties (@context, @type), and verifies recommended fields for known Schema.org types like Product, Article, Organization,...
Pricing
Pay per event
Rating
0.0
(0)
Developer

Stas Persiianenko
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Validate JSON-LD structured data on web pages and check for common errors.
What does JSON-LD Validator do?
This actor validates JSON-LD structured data on web pages. It extracts all <script type="application/ld+json"> blocks, validates JSON syntax, checks for required properties (@context, @type), and verifies recommended fields for known Schema.org types like Product, Article, Organization, and more. Use it to catch structured data errors before they cost you rich snippets in search results.
Use cases
- SEO specialists -- validate structured data across hundreds of pages to ensure rich snippet eligibility in Google Search
- Web developers -- catch JSON-LD syntax errors and missing required fields before deploying to production
- Schema.org compliance auditors -- verify that all required and recommended properties are present for each Schema.org type
- Competitive analysts -- examine what structured data competitors implement and compare quality with your own pages
- QA teams -- include JSON-LD validation as part of your pre-release testing pipeline
Why use JSON-LD Validator?
- Syntax validation -- detects malformed JSON that would silently break rich snippets in search engines
- Required field checks -- verifies that @context, @type, and type-specific required properties are present
- Recommended field warnings -- flags missing recommended fields for known Schema.org types so you can maximize rich result coverage
- Batch processing -- validate hundreds of URLs in a single run instead of testing pages one at a time
- Detailed error reports -- each JSON-LD block gets individual errors and warnings with clear descriptions
- Pay-per-event pricing -- only pay for each URL validated, no monthly subscription required
Input parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
urls | string[] | Yes | -- | List of URLs to validate JSON-LD for |
Example input
{"urls": ["https://www.google.com","https://www.wikipedia.org","https://example.com"]}
Output example
{"url": "https://www.google.com","jsonLdCount": 1,"isValid": true,"errorCount": 0,"warningCount": 0,"types": ["WebSite"],"blocks": [{"index": 0,"isValidJson": true,"type": "WebSite","context": "https://schema.org","errors": [],"warnings": []}],"error": null,"checkedAt": "2026-03-01T12:00:00.000Z"}
Output fields
| Field | Type | Description |
|---|---|---|
url | string | The validated page URL |
jsonLdCount | number | Number of JSON-LD blocks found on the page |
isValid | boolean | Whether all JSON-LD blocks passed validation |
errorCount | number | Total number of errors across all blocks |
warningCount | number | Total number of warnings across all blocks |
types | string[] | List of Schema.org types found in JSON-LD blocks |
blocks | array | Per-block validation details with index, type, context, errors, and warnings |
error | string | Error message if the page could not be fetched, null otherwise |
checkedAt | string | ISO timestamp of the validation |
How much does it cost?
JSON-LD Validator uses Apify's pay-per-event pricing model. You only pay for what you use.
| Event | Price | Description |
|---|---|---|
| Start | $0.035 | One-time per run |
| URL validated | $0.001 | Per URL validated |
Example costs:
- 10 pages: $0.035 + 10 x $0.001 = $0.045
- 100 pages: $0.035 + 100 x $0.001 = $0.135
- 1,000 pages: $0.035 + 1,000 x $0.001 = $1.035
Using the Apify API
You can start JSON-LD Validator programmatically from your own applications using the Apify API. The following examples show how to run the actor and retrieve results in both Node.js and Python.
Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('automation-lab/jsonld-validator').call({urls: ['https://www.google.com'],});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')run = client.actor('automation-lab/jsonld-validator').call(run_input={'urls': ['https://www.google.com'],})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
Integrations
JSON-LD Validator works with all major automation platforms available on Apify. Export results to Google Sheets to build a validation dashboard that tracks errors across your site over time. Use Zapier or Make to trigger validation after every deployment. Send alerts to Slack when new JSON-LD errors are detected on critical pages. Pipe results into n8n workflows for custom processing, or set up webhooks to get notified as soon as a validation run finishes. Chain it with Structured Data Extractor to first extract all markup and then validate the JSON-LD blocks.
Tips and best practices
- Prioritize pages with rich snippet potential -- focus on product pages, articles, recipes, and FAQ pages where valid JSON-LD directly impacts search visibility
- Fix errors before warnings -- errors (like invalid JSON or missing @type) prevent rich snippets entirely, while warnings about missing recommended fields only reduce their quality
- Filter results by
isValid: falseto quickly find all pages that need attention - Run after every deployment -- add JSON-LD validation to your CI/CD pipeline to catch regressions before they reach production
- Combine with Structured Data Extractor -- use that actor to get a full picture of all markup formats (JSON-LD, Microdata, RDFa), then run this validator on the JSON-LD blocks specifically
FAQ
What Schema.org types does it validate? The actor checks required and recommended fields for common types including Product, Article, Organization, WebSite, BreadcrumbList, FAQPage, Recipe, Event, LocalBusiness, and more.
Does it validate Microdata or RDFa?
No. This actor focuses exclusively on JSON-LD blocks (<script type="application/ld+json">). For extracting all three structured data formats, use the Structured Data Extractor actor.
What counts as an error vs. a warning? Errors are issues that make the JSON-LD invalid or unusable, such as malformed JSON syntax or missing @context/@type. Warnings indicate missing recommended properties that could improve rich snippet eligibility but are not strictly required.
How is this different from Google's Rich Results Test? Google's Rich Results Test checks one URL at a time in a browser and focuses on Google-specific rich result eligibility. This actor validates JSON-LD syntax and Schema.org compliance in bulk across hundreds of URLs using HTTP requests, making it faster and more scalable for site-wide audits.