YAML Frontmatter: The Complete Reference for GitHub CMS

All Frontmatter Fields

Field Required Type Impact
title Yes String Page title, H1 heading, JSON-LD headline, og:title
description Yes String Meta description, JSON-LD abstract, og:description
slug Yes String URL path segment, canonical URL
date Yes YYYY-MM-DD datePublished in Article schema
author No String Person schema with E-E-A-T signals
category No String Breadcrumb item, category page generation
tags No Array Keywords in JSON-LD, tag page generation
schema_type No String @type override (Article, HowTo, FAQPage)
layout No String Template selection: article or page
updated No YYYY-MM-DD dateModified in Article schema
cover_image No URL og:image, JSON-LD image
raw_html No Boolean Skip markdown processing, use raw HTML

How Frontmatter Drives JSON-LD

Every frontmatter field maps directly to Schema.org properties:

YAML Field JSON-LD Property
title headline
description description, abstract
date datePublished
updated dateModified
author author → Person
tags keywords
slug mainEntityOfPage URL
schema_type @type

Best Practices

  • Titles: 50-70 characters, include primary keyword near the front
  • Descriptions: 120-155 characters, unique per page
  • Slugs: use hyphens, keep short (3-5 words), English-only
  • Tags: 3-8 relevant keywords, no duplicates
  • Dates: always use YYYY-MM-DD ISO format

Summary

YAML Frontmatter is the single source of truth for all SEO metadata in GitHub CMS. Fill it correctly and the entire structured data pipeline works automatically — no plugins, no manual JSON-LD editing.

YAML Frontmatter is the metadata layer that drives all SEO, JSON-LD, and content organization in GitHub CMS. Each Markdown file starts with a YAML block containing title, description, slug, date, author, and other fields that automatically generate structured data, meta tags, and breadcrumb navigation.