Skip to content

Add and edit structured data (JSON-LD) at the edge ​

Edge SEO adds, fixes and removes JSON-LD structured data on the pages search engines and AI bots receive, with no release and no CMS plugin.

The markup is built from what each page shows, such as the product name, price and availability. It matches the page and changes when the page does.

The Issues catalog of Evergreen Crawl for edgecometshop.com with All issues selected and the columns Sev, Issue, Change, Pages, GSC impr and AI fetches. Under the group Structured Data & Images, one P3 issue: "No JSON-LD BreadcrumbList on a deep indexable page", on 5.4K pages (57% of the crawl), with 95 Search Console impressions and 10 AI fetches

What Edge SEO adds ​

Edge SEO writes the markup each kind of page needs:

PageMarkup
Product pagesProduct, with the name, price and availability shown on the page
Articles and blog postsArticle, with the headline and dates
Pages deeper than the home pageBreadcrumbList
The home page, once for the siteOrganization and WebSite

Built-in guards keep the markup correct:

  • No duplicates. Markup a page already carries is never added again. Types are matched exactly.
  • Microdata respected. Pages that already carry the type as microdata are left alone.
  • Linked entities. brand comes from the page. seller and publisher point at your site's Organization.
  • Canonical duplicates get the same block as their canonical URL.
  • Only visible values. Every value comes from content visible on the page, and every bot and visitor gets the same markup.
  • No FAQPage or HowTo markup is written.

Find pages with missing or broken markup ​

Evergreen Crawl reads the JSON-LD of every page bots received and checks it against schema.org and Google's rich result requirements. The Structured Data report shows which rich results each type can earn and lists every finding. Missing and broken markup also appear as issues under Evergreen Crawl > Issues, in the Structured Data & Images group, such as "No JSON-LD BreadcrumbList on a deep indexable page".

Each issue shows the pages it covers, their Search Console impressions and AI bot fetches, which lets you fix the pages that matter first. Click an issue to list its pages with the Schema types each one carries.

The pages of the issue "No JSON-LD BreadcrumbList on a deep indexable page" on edgecometshop.com, sorted by GSC impressions. The table lists URLs with their Schema types and Breadcrumbs: collection pages such as Resoleable Boots and Fine-Gauge Cardigans carry only Organization, product pages such as Alpaca Fine-Gauge Cardigan carry Brand, Offer, Organization and 2 more, and every Breadcrumbs cell reads (empty)

Add markup ​

The Action Board turns structured data issues into findings with an Edge SEO fix:

  1. Open the finding on the Action Board and choose the Edge SEO fix. EdgeComet drafts the rules for the affected pages.
  2. Review the drafts on the task page or the Drafts tab of Edge SEO. Edit on the page in the rule editor shows a page with the block added. See Preview, test and publish Edge SEO rules.
  3. Deploy. The next Evergreen Crawl confirms the fix: the pages drop out of the issue once bots get the new markup.

How the values are filled in ​

The values come from the page when EdgeComet serves it, read through your custom extractions under Configuration > Custom extractions, such as the price and stock fields. When the price on the page changes, the next copy EdgeComet caches carries the new price in its markup.

Add a fixed block ​

You can add a fixed JSON-LD block yourself:

  1. Open a rule, click Edit on the page and click the element the block goes next to, such as the main heading.

  2. Click Add in its bar and choose Add below, or click the + between two blocks. Paste the block under HTML to add, and click Add this edit:

    html
    <script type="application/ld+json">
    {"@context": "https://schema.org", "@type": "Organization", "name": "Example", "url": "https://www.example.com/"}
    </script>
  3. Save and deploy.

EdgeComet keeps JSON-LD when it cleans inserted HTML, while it removes executable scripts. See Inserting HTML. The Edge SEO snippet carries the block to visitors too.

Fix or remove existing markup ​

Broken markup that Evergreen Crawl flags gets the same Action Board fix: a draft rule that replaces or removes the block on the affected pages, ready for you to review and deploy.

To target pages by the markup they carry, add the filter Structured data types. It reads the @type values of the page's JSON-LD blocks and matches them exactly: Product is not schema:Product. For example, URL path Starts with /products/ with Structured data types Does not contain BreadcrumbList finds product pages without breadcrumb markup.

A new rule on edgecometshop.com with two filters: URL path Starts with /products/, and Structured data types Does not contain BreadcrumbList. The count line reads "6,563 pages seen in the last 30 days, and any new page that matches later.", and the pages column lists product pages such as Alpaca Chunky Sweater and Alpaca Fine-Gauge Cardigan

Is adding structured data at the edge cloaking? ​

No, when the markup describes what the page shows. Edge SEO builds it only from content visible on the page, and every bot gets the same markup. With the snippet installed, visitors get it too.

See When prerendering becomes cloaking.

What you should see ​

  • The rule editor lists the added block as an Added content edit, and the engine check reports a page where its spot is missing.
  • After the deploy, Page Analysis > Cache shows the markup in the copy bots receive, and the next Evergreen Crawl clears the issue for those pages.

If it does not work ​

The page did not get markup ​

The page may already carry that type, in JSON-LD or microdata, and the guard skipped it. Or a value the markup needs, such as the price, is not on the page or not read by a custom extraction.