Expand my Community achievements bar.

Get ready! An upgraded Experience League Community experience is coming in January.

How to add json-ld property to page metadata for pages in EDS with Universal Editor

Avatar

Level 1

Hello,

we are trying to add seo schema to our page, Adobe's documentation suggests to use json-ld to author seo schema, but I am clueless on how to add it as a property to page.json. Whenever I tried to add it as a property to page.json, the content which I author in that page is being rendered as a meta tag with name property which I have defined in page.json. It is not rendering as script tag as it was mentioned in documention.

 

seshasai_0-1755868670506.png

Could anyone help me with this.

 

 

Thank You.

6 Replies

Avatar

Level 1

It sounds like you’re running into the common confusion between how AEM (Adobe Experience Manager) handles metadata via page.json and how JSON-LD needs to be rendered for SEO.

When you define a property in page.json, AEM by default maps that into

<meta name="..." content="...">

. That’s why you’re seeing your schema data show up as a meta tag instead of a 

<script type="application/ld+json">

block.

To get JSON-LD working correctly for SEO, you don’t want to store the raw schema directly as a page property. Instead, you should:

  1. Store the schema content (as text or JSON) in a property of the page/component.

  2. Create a component (or use a custom HTL script) that outputs this property wrapped in:

     
     
<script type="application/ld+json"> { ... your schema json ... } </script>

This way, AEM renders it exactly as required by search engines.

If you’re using AEM’s Core Components, you could extend the Page component to include a JSON-LD rendering hook. Otherwise, add a simple custom component to your page template that reads the schema property and outputs it with the correct 

<script>

wrapper.

So in short:

  • Adding schema to page.json directly will always render as

<meta>

 → not suitable.

  • Instead, store schema as a property and output it with a dedicated 

<script type="application/ld+json">

block in your page.

That should align with Adobe’s documentation and ensure the schema is picked up properly by crawlers.

Strony internetowe Nowy Tomyśl

Avatar

Level 1

Hello,

Thanks for the reply. I guess I am not specific with my question. We are trying this in AEM with Edge Delivery Services. Here we do not have HTL scripts.

 

 

Thank You.

Avatar

Community Advisor

@seshasai are you using Document based authoring or AEM EDS Sites?

If you are using document based authoring, you can use metadata section to author JSON-LD schema as below screenshot..

Screenshot 2025-08-25 at 1.20.31 PM.png

Avatar

Level 1

No, we are using Universal Editor.

Avatar

Level 2

You can add a column named "json-ld" to the metadata spreadsheet at the root of your author sites and map that to the page you want to have the json-ld or you can insert a metadata spreadsheet inside the page you want and add the data there. 

See bulk metadata for an example. We also use the Universal Editor and are running into this same problem. 


Avatar

Level 2

The steps are go to the root of your sites or in the same sites folder as your home page and add the metadata spreadsheet to it. 

SethHe_0-1765378520796.png


Then click edit and properties, add the URL and json-ld properties, save & close.

SethHe_1-1765378588635.png

Add the URL see bulk metadata for more information on what you can target with that URL column. Add the json-ld data to the column and close the metadata spreadsheet. Click publish and it should show up on the page you targeted.