On this page:
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.

isPartOf

isPartOf · No Google docs page

Appears in

AboutPage

What is it?

isPartOf connects a page to its parent entity, typically a WebSite. On an AboutPage or any WebPage subtype, this property declares that the page belongs to a specific website. The most common pattern uses an @id reference to a WebSite node defined elsewhere in the @graph array, creating a linked knowledge graph rather than duplicating the WebSite data on every page.

Why this matters for AEO

AI answer engines build entity graphs by connecting nodes across pages. When every page on a site includes isPartOf pointing to the same WebSite @id, the engine can associate all pages with a single site entity, including its name, publisher, and search action. Without this link, each page appears as an isolated node. For a query like "What services does Karpi Studio offer?", the engine can traverse from the AboutPage through isPartOf to the WebSite, then to the Organization, pulling together a complete picture.

What the specs say

Schema.org: Indicates an item or CreativeWork that this item, or CreativeWork (in some sense), is part of. schema.org/isPartOf

Expected type: CreativeWork or URL. On WebPage, this is almost always a WebSite.

Google: Not mentioned in dedicated documentation. Google does not have a standalone page for isPartOf, but the property appears in Google's own search results markup and is widely used by plugins like Yoast SEO.

How to find your value

  • Your site — The root domain URL with a #website fragment identifier
  • Yoast/RankMath output — Look for {"@type": "WebSite", "@id": "https://yoursite.com/#website"} in existing markup
  • Schema HQ — Automatically generated from your site's domain
  • Manual setup — Create a WebSite node with @id like https://yoursite.com/#website and reference it

Format and code

Type: CreativeWork (object or @id reference)

@id reference (preferred):

{
  "@context": "https://schema.org",
  "@type": "AboutPage",
  "name": "About Yoast",
  "url": "https://yoast.com/about/",
  "isPartOf": {
    "@id": "https://yoast.com/#website"
  }
}

This pattern assumes a WebSite entity exists in the same @graph:

{
  "@type": "WebSite",
  "@id": "https://yoast.com/#website",
  "name": "Yoast",
  "url": "https://yoast.com/",
  "publisher": { "@id": "https://yoast.com/#organization" }
}

Inline WebSite (when no @graph is used):

{
  "@type": "AboutPage",
  "name": "About Our Company",
  "isPartOf": {
    "@type": "WebSite",
    "name": "Karpi Studio",
    "url": "https://karpi.studio/"
  }
}

Inline embedding works but creates duplicate WebSite data across pages. The @id reference pattern is standard practice.

Webflow implementation

Static pages

Add to Page Settings > Custom Code > Before </head>:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "WebSite",
      "@id": "https://karpi.studio/#website",
      "name": "Karpi Studio",
      "url": "https://karpi.studio/"
    },
    {
      "@type": "AboutPage",
      "name": "About Karpi Studio",
      "url": "https://karpi.studio/about",
      "isPartOf": { "@id": "https://karpi.studio/#website" }
    }
  ]
}
</script>

CMS template pages

For CMS collection pages, the WebSite @id stays constant across all pages:

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "WebSite",
      "@id": "https://karpi.studio/#website",
      "name": "Karpi Studio",
      "url": "https://karpi.studio/"
    },
    {
      "@type": "WebPage",
      "name": "{{wf {&quot;path&quot;:&quot;name&quot;,&quot;type&quot;:&quot;PlainText&quot;} }}",
      "isPartOf": { "@id": "https://karpi.studio/#website" }
    }
  ]
}
</script>

In Schema HQ

The isPartOf field is set on every page entity to reference the site's WebSite node. The WebSite entity is defined once in the Organization schema and referenced across all pages.

Real examples

University of Illinois (ahs.illinois.edu):

{
  "@type": "AboutPage",
  "@id": "https://ahs.illinois.edu/about/#about",
  "url": "https://ahs.illinois.edu/about/",
  "name": "About | College of Applied Health Sciences",
  "isPartOf": { "@id": "https://ahs.illinois.edu/#website" }
}

Yoast (jsonld.com):

{
  "@type": "WebPage",
  "@id": "https://jsonld.com/web-page/",
  "url": "https://jsonld.com/web-page/",
  "name": "JSON-LD Web Page Example Code",
  "isPartOf": { "@id": "https://jsonld.com/#website" }
}

Both examples use the @id reference pattern, pointing to a WebSite node defined elsewhere in the same JSON-LD block. This is the de facto standard established by Yoast SEO and adopted across the structured data ecosystem.

Related fields

  • breadcrumb -- Navigational hierarchy (complements the structural relationship)
  • url -- Page URL identifying this specific page
  • mainEntity -- Primary entity the page describes
  • about -- Subject matter of the page

FAQ

What is the difference between isPartOf and breadcrumb?

isPartOf is a structural relationship: "this page belongs to this website." breadcrumb is a navigational relationship: "this is the path a user follows to reach this page." A page always has one isPartOf target (the WebSite), but its breadcrumb trail can vary depending on how the user navigated to it.

Should every page have isPartOf?

For a connected knowledge graph, yes. Setting isPartOf on every WebPage entity links all pages to the same WebSite node, which itself links to the Organization via publisher. This chain gives AI engines a complete picture of your site's entity relationships.

What goes in the @id for the WebSite?

Convention is https://yoursite.com/#website. The #website fragment identifier creates a unique identifier that does not resolve to a separate URL. This pattern was established by Yoast SEO and is now the industry standard.

On this page:
This is some text inside of a div block.
This is some text inside of a div block.
This is some text inside of a div block.

Need help with schema on your site?

We implement structured data for Webflow sites — from audit to deployment.

Work with us

Work with us