Skip to main content
Every site comes with sitemaps, RSS feeds, canonical URLs, Open Graph tags and schema.org data, and the settings on this page fine-tune them. See AI agents and search for everything that’s automatic.

SEO

blog.json

Share images

Posts and entries without an image get a generated 1200×630 share image with your site name, the section, the title and your brand color.
blog.json
  • appearance is light (default) or dark.
  • background is a PNG, JPEG or SVG in public/ behind the text.
  • "enabled": false turns them off, and pages without an image then use your logo.

404 page

blog.json
With "redirect": true, an unknown page sends readers to the blog or changelog home instead of showing the 404 page, while search engines still get a 404 status.

Redirects

Redirects let you move or rename a post without breaking links.
blog.json
  • source is a full path on your domain, including the section path, like /blog/old-post.
  • A source ending in /* matches every path below it, and when destination also ends in /*, Notra carries the rest of the path over.
  • destination is a path or an https:// URL.
  • permanent is true by default (308), so set it to false for a temporary redirect (307).
  • The first matching rule wins and redirects win over existing pages. Notra doesn’t carry query strings over, and a site can have up to 500 rules.

Dates

"metadata": { "timestamp": false } hides the “Updated” date on posts, while the sitemap still tells search engines when a post changed.
Last modified on October 8, 2026