Skip to content
Searchpedia SEO field notes Callum Bennett Callum

Tool lab

Jekyll SEO

Jekyll SEO is the practice of configuring a Jekyll site with clean metadata, crawlable structure, and performance-friendly defaults so search engines can understand and rank it better.

Beginner3 min readUpdated 2026-07-27Notes by Callum Bennett

Start here

  • Install jekyll-seo-tag and jekyll-sitemap — they handle 80% of the work.
  • Always include {% seo %} in your layout's <head>.
  • Set unique titles and descriptions in each page's front matter.
  • Create a robots.txt that points to your sitemap and doesn't block important resources.
  • Test with Google Search Console to confirm your pages are indexed correctly.

I've made most of the mistakes below myself, so I'll save you the headache.

What I'd do first

  • Add jekyll-seo-tag to your Gemfile and run bundle install.
  • Place {% seo %} in your layout's <head> — this outputs title, description, canonical, and Open Graph tags automatically.
  • Add jekyll-sitemap and let it generate a sitemap.xml.
  • Create a robots.txt that points to your sitemap and doesn't block anything important.
  • Check every page has a unique title and meta description in its front matter.

Plain-English take

Think of Jekyll SEO as giving each page a name tag and a map. The name tag is the title and description in the search results. The map is the sitemap that tells Google where everything lives. Jekyll makes this easy because you set it once in a template, and every page inherits it. No database, no server-side rendering — just flat files that load instantly.

When it actually matters

  • You're launching a new Jekyll site and want it indexed quickly.
  • You notice pages missing from search results or showing wrong titles.
  • You're migrating from a CMS and want to keep your rankings.
  • You're building a blog or documentation site where content discovery is key.
  • You care about Core Web Vitals — Jekyll's static output already helps, but you still need to optimize images and mobile layout.

What I got wrong

  • I installed jekyll-seo-tag but forgot to put {% seo %} in the layout. Nothing broke visibly, but no metadata was emitted.
  • I blocked /assets/ in robots.txt thinking it was safe, but that blocked some CSS and images from being crawled.
  • I assumed all pages would get unique titles from the plugin — nope, you still need to set them in front matter.
  • I skipped canonical URLs and later found duplicate content issues from paginated pages.

Next step

Quick answers

Do I need a plugin for Jekyll SEO?

Not strictly, but jekyll-seo-tag and jekyll-sitemap make it much easier. Without them, you'd have to manually write metadata and sitemaps.

Is Jekyll SEO different from regular SEO?

The principles are the same — titles, descriptions, canonical URLs, performance — but Jekyll's static nature means you handle them in front matter and plugins rather than a CMS.

Sources

Primary documentation is linked directly. Anything commercial is marked nofollow.

  • Jekyll SEO Tag — Official plugin documentation for the standard Jekyll SEO metadata implementation.
  • Jekyll Sitemap — Official plugin source for generating sitemap.xml in Jekyll.
  • Google Search Central — Authoritative guidance on titles, metadata, crawling, indexing, structured data, and technical SEO.
  • Google Search Essentials — Baseline SEO best practices that apply directly to Jekyll sites.
  • PageSpeed Insights — Useful for speed and mobile-performance checks mentioned in Jekyll SEO guidance.

Notes from Callum Bennett.