What the JSON-LD Extractor returns
The tool scans pasted HTML, uploaded .html or .htm files, or public HTTPS HTML for <script type="application/ld+json"> elements. It keeps the blocks in source order and assigns zero-based script indexes, starting with 0.
For each parsed block, the results show its byte size, @context, @type, any entities in @graph, and formatted JSON. A top-level JSON array is identified as such, and its items are included in the analysis. The tool parses and reports the data; it does not validate Schema.org or Google rich-result eligibility.
Choose an input and run the scan
Use the visible tabs Paste / Upload HTML and Fetch Public URL.
- For pasted markup, place the HTML in the input area; usable input is scanned automatically as you type.
- For a file, drop it into the file area or choose browse files. Files with
.htmland.htmextensions are accepted, and the results appear after the file is read. - For a URL, open Fetch Public URL and enter a public
https://address; a completed URL is fetched and processed automatically. - Click Clear to remove the current HTML input and results.
Read and export the results
Each valid block appears in source order as Script #0, Script #1, and so on. Check the displayed byte size, @context, @type, graph-entity list, and formatted JSON.
Blocks with invalid JSON show a parse error and expandable Raw block content, with a Download raw JSON action. Other blocks are still parsed normally.
Successful blocks include per-block Copy and Download controls. When blocks are found, Copy combined JSON and Download combined JSON export a wrapper with source, block_count, and blocks. Valid entries contain script_index, metadata, and parsed data; invalid entries contain only script_index and error.
If no matches are found, the tool displays No <script type="application/ld+json"> blocks were found in this HTML
and hides the combined export bar.
URL mode limits and rendered HTML
Fetch Public URL retrieves raw server-rendered HTML on the server. It sends no cookies or credentials, does not execute JavaScript, does not use browser automation, and does not crawl links. The server can follow up to five HTTPS redirects, accepts responses up to 5 MB, and uses a 10-second connect and total timeout.
- Private hosts, failed requests, HTTP errors, non-HTML responses, and login-protected pages can fail or return content that does not contain the expected JSON-LD.
- JSON-LD added by JavaScript after page load is not present in the fetched source.
- Redirects that leave HTTPS are not followed.
For rendered or authenticated content, open the page in your browser, wait for it to load, then copy the post-load document HTML from DevTools Elements. Paste that HTML into Paste / Upload HTML. Pasted and uploaded HTML is parsed in the browser; the local implementation does not establish server logging, retention, deletion, or forwarding policies for URL requests.
What the extractor does not inspect
- It reads JSON-LD script blocks only. It does not scan microdata such as
itemscope/itempropor RDFa attributes. - It does not mutate or rewrite the source markup.
- It does not judge Schema.org validity or Google rich-result eligibility.
Frequently Asked Questions
What counts as a JSON-LD block?
Any <script type="application/ld+json"> element in the HTML, found in source order. Each one is parsed independently, and each result is tagged with its script index - its position among all ld+json script elements on the page, counting from 0.
What happens if one block has invalid JSON?
That block is flagged with its parse error and its raw text is still shown, but every other block on the page is parsed and displayed normally. One malformed block never discards the rest of the page's JSON-LD.
Does this tool validate JSON-LD against Schema.org or Google's rich results requirements?
No. It parses each block and reports what's actually published - its @context, @type, and any @graph entities - without checking it against Schema.org's vocabulary or Google's rich-result eligibility rules. Use a dedicated schema validator for that.
Does this tool also read microdata or RDFa markup?
No. It only reads JSON-LD published inside <script type="application/ld+json"> blocks. It does not scan for microdata (itemscope/itemprop attributes) or RDFa attributes elsewhere in the page.
Can this tool fetch JSON-LD from a URL I give it?
Yes, for public pages over HTTPS. The server fetches raw server-rendered HTML without cookies, login credentials, browser automation, or JavaScript execution. It can follow up to five HTTPS redirects, with a 5 MB response cap and a 10-second connect and total timeout. If a page injects JSON-LD after load, copy the post-load document HTML from DevTools Elements and paste it into Paste / Upload HTML.