Hyvor Blogs handles technical SEO for you.

SEO settings: Console → Settings → SEO.

Meta Tags

HB adds the following meta tags to <head> of all pages of the blog. They help with search engine and social media previews.

<!-- BASIC SEO -->
<meta name="description" content="" />
<link rel="canonical" href="" />

<link rel="alternate" href="" hreflang="" />
<link rel="alternate" href="" hreflang="" />

<!-- FACEBOOK (OG) -->
<meta property="og:site_name" />
<meta property="og:type" />
<meta property="og:title" />
<meta property="og:locale" />
<meta property="og:description" />
<meta property="og:url" />
<meta property="og:image" />
<!-- For Posts -->
<meta property="article:published_time" />
<meta property="article:modified_time" />
<meta property="article:author" />
<meta property="article:author" />
<meta property="article:section" />
<meta property="article:section" />

<!-- TWITTER -->
<meta name="twitter:card" />
<meta name="twitter:title" />
<meta name="twitter:description" />
<meta name="twitter:url" />
<meta name="twitter:image" />
<meta name="twitter:site" /> <!-- only if Twitter URL is set in blog settings -->
<meta name="twitter:creator" /> <!-- only if Twitter URL is set for the primary author -->

Rich Schema

Rich schema is coming soon.

Canonical URLs

Canonical URLs are essential to prevent duplicate pages. HB takes cares of correctly generating canonical URLs for all routes in your blog. However, you may want to publish a post that has already been published elsewhere. In this case, you can set a custom canonical URL for the post. HB will then use this URL to generate the canonical meta tag.

Console → Post → Settings → Advanced → Canonical URL

How to set canonical URLs in Hyvor Blogs


Robots.txt is a file that tells search engine crawlers what pages to access and not. Hyvor Blogs comes with a default robots.txt, which should be sufficient for most blogs.

User-agent: *
Sitemap: {{ _blog.base_url }}/sitemap.xml
Disallow: /p/

The default file prevents search engines from indexing /p/ routes, which are used for previewing posts (Those previews are private). You can update robots.txt at Console → Settings → SEO → Robots.txt. You have access to route variables in the code.


Hyvor Blogs auto-generates sitemaps. The sitemap index is at the /sitemap.xml path of your blog. You can submit this file to search engines.

Sitemap index format:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="">

The sitemap index links to other sitemaps of the blog.

  • sitemap-pages.xml - contains links to the pages and homepage.
  • sitemap-posts-x.xml - contains links to posts. Each file can have up to 2500 URLs. First page has the oldest URLs. Within the file, we also auto generate
    • <image:image> to link to images in the post (only directly uploaded images)
    • <xhtml:link> to link to language variants of the post

Here is an example sitemap-posts-x.xml.

<?xml version="1.0" encoding="UTF-8"?>

        <xhtml:link rel="alternate" hreflang="en" href="" />
        <xhtml:link rel="alternate" hreflang="fr" href="" />


Prevent Indexing

You can prevent search engines from indexing your blog or specific pages by adding the following code within <head>.

<meta name="robots" content="noindex">
Where How
Whole blog Turn off Console → Settings → SEO → Allow Indexing. HB will then add the above code to all pages. Or, add the above code to head custom code of the blog.
A post Add the above code to the head custom code of the post.
Posts of a tag Add the above code to the head custom code of the tag.