Schema graph

Structured data audit

Read a site's
entity graph

Crawls a site, pulls every JSON-LD block out of the markup, and stitches the entities into one graph so you can see what search engines actually see: what is linked, what is duplicated, and what points at nothing.

A browser cannot read another site's HTML unless that site allows it, so the app needs something to fetch on its behalf. Run the relay that ships with this app and it is yours alone: no third-party service, nothing shared, nothing throttling you. It is one file and needs only Node.

  1. 1
    Save relay.js next to this HTML file.
  2. 2
    Run node relay.js and open http://localhost:8787. The app is served from there and uses the relay on its own, nothing to paste. A Dockerfile and hosting notes are in the comment at the top of relay.js.
  3. 3
    Hosted the relay somewhere else? Paste its URL here.

Or fetch some other way

The public relays are shared and throttle hard, so they suit a quick look at a handful of pages and little else. If you own the site you are auditing, the simplest route of all is to upload this file to it and open it from there, then pick "Direct request": same origin means no relay and no limits.

Crawl settings

Raise this if a relay starts refusing pages. 1000 is gentle enough for almost any relay to keep up with.

Leave it blank and the sitemaps named in robots.txt are used; if it names none, /sitemap.xml, /sitemap_index.xml (Yoast), /wp-sitemap.xml (WordPress core) and /sitemap-index.xml are tried. Or give a path relative to the start URL, or a full URL on any host, several separated by commas. Sitemap index files are followed all the way down, and every sitemap is read in full before the page limit applies.