Structured Data Extractor - JSON-LD, Microdata, RDFa avatar

Structured Data Extractor - JSON-LD, Microdata, RDFa

Pricing

from $0.32 / 1,000 scanned pages

Go to Apify Store
Structured Data Extractor - JSON-LD, Microdata, RDFa

Structured Data Extractor - JSON-LD, Microdata, RDFa

Extract all structured data from any page - JSON-LD, Microdata, and RDFa - plus the schema.org types found. Single or bulk. $0.0004 per page, cheaper than every paid structured-data actor measured; failed fetches are free.

Pricing

from $0.32 / 1,000 scanned pages

Rating

0.0

(0)

Developer

Broke to Built

Broke to Built

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

a day ago

Last modified

Share

Structured Data Extractor - JSON-LD, Microdata & RDFa from any URL

Extract all structured data from a web page: JSON-LD (<script type="application/ld+json">), Microdata (itemscope/itemprop), and RDFa (typeof/property), plus the list of schema.org types found. Built for SEO audits, rich-result debugging, knowledge-graph building, and AI agents that need a page's semantic data. Single URL or bulk.

$0.0004 per page - cheaper than every paid structured-data actor measured on the Store. Failed fetches are recorded free.

What you get

  • JSON-LD objects, with @graph unwrapped into individual entities.
  • Microdata items with nested scopes resolved into properties.
  • RDFa typed resources and their properties.
  • allTypes - every schema.org type detected (Product, Organization, BreadcrumbList, ...).
  • entityCount across all three formats.
  • Fail-soft: an unreachable URL returns {ok:false, error} and is never charged.

Input

{ "url": "https://www.apify.com", "urls": ["https://example.com/product"], "maxUrls": 25 }

Output (real run, 2026-08-07)

{
"ok": true,
"url": "https://apify.com/",
"status": 200,
"jsonLd": [
{ "@context": "https://schema.org", "@type": "Organization", "name": "Apify",
"url": "https://apify.com/", "sameAs": ["https://github.com/apify", "https://x.com/apify"] }
],
"microdata": [],
"rdfa": [],
"allTypes": ["ContactPoint", "Organization"],
"entityCount": 1
}

Pricing - $0.0004 per page

Prices below checked via the Apify Store API on 2026-08-07:

ActorPricingOne page
This actor$0.0004 per page$0.0004
sync-network/schema-org-json-ld-extractor$0.00005 start + $0.0005 per item$0.00055
andok/jsonld-extractor$0.01 start + $0.001 per item$0.011
pink_comic/schema-markup-extractor$0.0001 start + $0.002 per item$0.0021

Limits (honest ones)

  • Parses the HTML the server returns; structured data injected later by JavaScript is not seen (no headless browser).
  • Reads the raw values as authored - it does not validate them against Google's rich-result requirements.
  • maxUrls capped at 50 per run.

FAQ

  • Which formats does it cover? All three: JSON-LD, Microdata, and RDFa, in one record per page.
  • How do I extract JSON-LD from a URL? Pass {"url": "https://example.com/product"}; every <script type="application/ld+json"> block comes back parsed in the jsonLd array, with @graph unwrapped into individual entities.
  • Does it run JavaScript? No - it reads the server HTML, which is where the vast majority of structured data lives.
  • What if a page has none? You get entityCount: 0 with empty arrays (a real answer), still one page scanned.
  • Can it do many pages? Yes - pass urls (up to 50).
  • What schema.org types will it tell me a page uses? allTypes lists every type found across all three formats, de-duplicated and sorted - Product, Organization, BreadcrumbList, FAQPage, Article, whatever the page declares.
  • Can an AI agent use this to read a page's semantic data? Yes - it is callable through the Apify MCP server and the record shape is fixed, so a model can rely on the field names.

When not to use this

  • You want to know if Google will show a rich result. This reports the markup as authored. It does not validate against Google's rich-result requirements or flag missing required properties - use the Rich Results Test for that verdict.
  • Your markup is injected by JavaScript. No headless browser here. A React app that adds JSON-LD on mount will read as empty; server-rendered markup is what this sees.
  • You want to crawl a site's structured data. It reads exactly the URLs you pass, up to 50 per run. Generate the URL list yourself (a sitemap extractor pairs well with this).
  • You want Open Graph / Twitter Card tags. Those are social meta tags, not structured data - see our Open Graph & Twitter Card Extractor.
  • You need the markup rewritten or generated. This is read-only: it extracts, it does not author or repair schema.

Use from code or AI agents

curl -X POST "https://api.apify.com/v2/acts/EliAI~webpage-structured-data-extractor/runs?token=YOUR_APIFY_TOKEN" \
-H 'content-type: application/json' \
-d '{"url":"https://www.apify.com"}'

Callable as an agent tool through the Apify MCP server (mcp.apify.com).