Skip to content

Developers · Pages and Layouts

Metadata

Last updated 2 November 2026

Metadata gives search engines, social platforms, and other services the context they need to display your pages correctly. On Insites, you define metadata in the YAML front matter of a page and access it via Liquid in your layouts and partials.

Defining Metadata

Add a object to your page's YAML front matter with key-value pairs:

---
slug: about-us
metadata:
  title: About Our Company
  description: Learn about our mission and team
  tags:
    - about
    - company
---

You can also add and edit metadata in the Instance Admin. Go to CMS > Pages, open a page, and select the Metadata tab. Open Graph tags have their own tab.

Accessing Metadata in Templates

Metadata is available in Liquid as . Use this in your layout to set HTML meta tags dynamically:

<title>{{ context.page.metadata.title }}</title>
<meta name='description' content='{{ context.page.metadata.description }}'>

Open Graph and Social Tags

Open Graph metadata controls how your pages appear when shared on social platforms like Facebook and LinkedIn. Twitter Cards serve the same purpose for Twitter.

Define these in your page metadata and render them in your layout's section:

<meta property='og:title' content='{{ context.page.metadata.title }}'>
<meta property='og:description' content='{{ context.page.metadata.description }}'>
<meta property='og:image' content='{{ context.page.metadata.image }}'>
<meta property='og:type' content='website'>

Structured Metadata

Metadata values are not limited to strings. You can use arrays, nested objects, and any YAML-supported data type. This makes metadata flexible enough to store structured information like tags, breadcrumbs, or feature flags that your templates can use for conditional rendering.