Post

Chirpy SEO and Webmaster Verifications: A Sign-Up Guide for Every Field

A field-by-field walkthrough of Chirpy's webmaster_verifications block — what each provider actually does, exactly how to sign up, and where to paste the verification string in your _config.yml.

Chirpy SEO and Webmaster Verifications: A Sign-Up Guide for Every Field

TL;DR — Chirpy ships with a webmaster_verifications block in _config.yml for six search/social services. You don’t need all six. For a typical English-language blog, sign up for Google Search Console, optionally Bing Webmaster Tools, and call it a day. This post walks you through creating an account at each service, finding the verification string, and dropping it into the right line of your config — plus the gotchas that aren’t obvious until you’ve hit them.

Where this fits

If you’ve been working through George Lunski’s field-by-field walkthrough of Chirpy’s _config.yml, you’ll have already met the webmaster_verifications block. The original post nails what the block is and what it isn’t — it’s a list of small token strings (not full HTML tags) that jekyll-seo-tag renders as meta tags in the <head> of every page. What that post doesn’t go into — because it’s a 22-minute reference, not a sign-up guide — is the actual on-ramp at each provider. That’s the gap this post is here to close.

The block looks like this:

1
2
3
4
5
6
7
webmaster_verifications:
  google:    # Google Search Console token
  bing:      # Bing Webmaster Tools token
  alexa:     # retired
  yandex:    # Yandex Webmaster token
  baidu:     # Baidu Ziyuan token
  facebook:  # Facebook domain verification token

A few rules of thumb before we start clicking through dashboards:

  • Each value is the content string only, not the full <meta> tag. If a service hands you <meta name="google-site-verification" content="abc123XYZ" />, you only paste abc123XYZ into the YAML.
  • Empty fields are fine. Chirpy/jekyll-seo-tag simply skips them.
  • Once a verification has succeeded, most providers don’t actually re-check the tag every day, but leaving the tag in place is the safe default — removing it can silently invalidate your verification weeks or months later.
  • Before you can verify anything, your site must be live at its real URL. Verifying a localhost build will not work.

Skip Alexa. Amazon retired the Alexa.com ranking service in May 2022, and the field is still in the YAML purely for backwards compatibility. Leave it blank forever.

Google Search Console

Google Search Console (GSC) is the one you actually want. It’s free, it tells you which queries surface your posts, which pages Google has indexed, what’s broken, and what your Core Web Vitals look like. If you only do one of these, do this one.

Sign up

  1. Go to search.google.com/search-console and sign in with your Google account. Use the same Google account you’re going to use for Google Analytics if you plan to set that up too — it makes life easier.
  2. Click Add property. You’ll see two property types:
    • Domain property — covers all subdomains and both http/https under one roof. Requires a DNS TXT record to verify, which means you need access to your registrar (or Cloudflare, if you’re following George’s Cloudflare DNS setup).
    • URL prefix property — only covers one specific URL pattern (e.g. https://yourblog.com/), but offers the HTML meta tag verification method that pairs naturally with webmaster_verifications.
  3. For Chirpy, pick URL prefix unless you already know you want DNS verification. Enter your full site URL (with https:// and trailing slash) and click Continue.
  4. On the verification page, expand HTML tag. Google shows a snippet like <meta name="google-site-verification" content="aBcD1234..." />. Copy only the value inside content="...".

Drop it in _config.yml

1
2
webmaster_verifications:
  google: aBcD1234efGh5678ijKlMnOpQrStUvWxYz0123456

Commit, push, wait for GitHub Actions to finish deploying, hard-refresh the live site, then go back to the GSC verification page and click Verify. If it fails, view-source on your homepage and confirm the meta tag is actually in the <head> — caching layers (Cloudflare, the Chirpy PWA service worker) can serve a stale copy. A hard reload (Cmd-Shift-R / Ctrl-F5) usually does the trick.

Once verified, submit your sitemap at https://yourblog.com/sitemap.xml under Sitemaps in the GSC sidebar. Chirpy generates this automatically via the jekyll-sitemap plugin.

Bing Webmaster Tools

Bing’s market share is small compared to Google’s, but Bing also feeds DuckDuckGo, Yahoo, Ecosia, and several other engines, so verifying here is genuinely worth the ten minutes. The interface is also surprisingly nice in 2026.

Sign up

  1. Visit bing.com/webmasters. You can sign in with a Microsoft, Google, or Facebook account — no separate registration needed.
  2. On the dashboard, look for the Add a Site box (top-left) or the much faster Import from Google Search Console option. If you’ve already verified with Google, importing skips the verification step entirely.
  3. If you’re adding manually, paste your full site URL and click Add. Bing will then offer four verification methods: XML file, meta tag, CNAME, or DNS auto-verification.
  4. Pick HTML Meta Tag and copy the value from the content="..." attribute.

Drop it in _config.yml

1
2
3
webmaster_verifications:
  google: aBcD1234efGh5678ijKlMnOpQrStUvWxYz0123456
  bing: ABCDEF0123456789ABCDEF0123456789

Push, wait for the deploy, then click Verify in Bing’s dashboard. Same caching caveat as Google.

Yandex Webmaster

Yandex serves Russian-speaking audiences primarily. If your blog has nothing to do with that market, you can safely skip this — it’s not going to move the needle. But the dashboard is in English, sign-up is straightforward, and crawl-error visibility is genuinely useful, so it’s a reasonable “why not” if you’re a completionist.

Sign up

  1. Go to webmaster.yandex.com.
  2. You’ll need a Yandex ID. You can register a fresh one (Yandex usually asks for a phone number to confirm you’re a human) or log in via Google, Facebook, or X/Twitter — Yandex supports all three as identity providers.
  3. Once logged in, click the + icon (top-left) or Add site, paste your URL, and submit.
  4. Yandex will offer four verification methods: Meta tag, HTML file, DNS TXT record, or WHOIS email. Pick Meta tag.
  5. Copy the value from the content="..." attribute of the snippet they display.

Drop it in _config.yml

1
2
3
4
webmaster_verifications:
  google: aBcD1234efGh5678ijKlMnOpQrStUvWxYz0123456
  bing: ABCDEF0123456789ABCDEF0123456789
  yandex: 1234567890abcdef

Push, deploy, then click Check in the Yandex Webmaster verification panel.

Yandex is known for being a bit slower to verify than Google or Bing — sometimes several minutes after the deploy. Make a coffee. Don’t keep mashing the button.

Baidu Ziyuan (百度搜索资源平台)

Baidu Ziyuan is China’s equivalent of Google Search Console, and it’s the gateway for showing up in Baidu search. Unless your blog targets a Chinese audience, this one is genuinely a hassle and probably not worth it.

The big caveats

  • A Chinese mobile phone number is effectively required to register a Baidu account. Baidu sends an SMS verification code, and they reject most non-Chinese carriers. If you’re outside China, this is the single biggest blocker.
  • The dashboard is only in Simplified Chinese. A browser auto-translate or the “English Baidu Search Console” Chrome extension makes it usable, but nothing official is in English.
  • For sites hosted in mainland China, you’ll also need an ICP license before Baidu will fully accept the site. Sites hosted outside China don’t need ICP, but they crawl slower and may be flagged for latency issues.

Sign up

  1. Go to ziyuan.baidu.com and click the login button (the blue button, top-right).
  2. Register a Baidu account using a Chinese mobile number for the SMS verification step. You can also sign in with an existing Baidu account if you have one.
  3. Once logged in, navigate to 用户中心 (User Center)站点管理 (Site Management)添加网站 (Add Website).
  4. Enter your domain (with the correct http:// or https:// prefix), select an industry category, and click through.
  5. Choose HTML标签验证 (HTML Tag Verification). Copy the value from the content="..." attribute of the meta tag they display — it’ll be in the form meta name="baidu-site-verification" content="abc123".

Drop it in _config.yml

1
2
webmaster_verifications:
  baidu: codeva-abc123XYZ

Push, deploy, then click 完成验证 (Complete Verification) in Baidu’s dashboard.

If you don’t have a Chinese phone number and your audience isn’t Chinese-speaking, leave this field blank. Don’t fight the system for a verification you’ll never get any value from.

Facebook domain verification

The facebook field maps to Meta’s domain verification in Meta Business Manager — not to a search engine. It exists to let Meta know that link previews coming from your domain are owned and controlled by you, which prevents anyone else from editing your link metadata in their ads, and is a prerequisite if you ever want to run Meta ads or set up Instant Articles, Instagram Shops, or the Conversions API.

For a personal blog with no plans to ever advertise on Facebook or Instagram, this is almost certainly skippable. But if you do want it, here’s the path.

Sign up

  1. Go to business.facebook.com. If you don’t have a Meta Business Manager account, click Create account (top-right) and follow the prompts. You’ll need an existing personal Facebook account to attach it to.
  2. Once inside the Business Manager, go to Business settings (gear icon) → Brand Safety and SuitabilityDomains.
  3. Click AddCreate a new domain. Enter your root domain (e.g. yourblog.com — no https://, no www.).
  4. After the domain appears in the list, click into it and switch to the Meta-tag Verification tab.
  5. Copy the value from the content="..." attribute of the snippet (it’ll start with something like facebook-domain-verification=...).

Drop it in _config.yml

1
2
webmaster_verifications:
  facebook: 1a2b3c4d5e6f7g8h9i0jklmnopqrst

Push, wait for deploy, then click Verify in the Meta-tag Verification panel.

Meta also offers a DNS TXT record method and an HTML file upload method for the same verification. The meta tag is the easiest path when you’re already managing your config in Chirpy, but if you’re more comfortable in your DNS provider’s panel (Cloudflare, etc.), the TXT record method works equally well and bypasses the YAML field entirely.

What it looks like all together

Here’s a fully-populated webmaster_verifications block (with junk tokens — paste your real ones in):

1
2
3
4
5
6
7
webmaster_verifications:
  google: aBcD1234efGh5678ijKlMnOpQrStUvWxYz0123456
  bing: ABCDEF0123456789ABCDEF0123456789
  alexa:                                # leave blank — service is dead
  yandex: 1234567890abcdef
  baidu: codeva-abc123XYZ
  facebook: 1a2b3c4d5e6f7g8h9i0jklmnopqrst

After pushing the change, view-source on your live homepage and search for verification — you should see a stack of <meta name="...-site-verification" content="..."> (or name="facebook-domain-verification") tags inside the <head>. If they’re there, you’re good.

What I’d actually do

For a hobby/personal blog in English, my honest recommendation is the same one in the source post: Google plus maybe Bing is enough. Yandex is a “why not” if you’re already in the dashboards. Baidu is genuinely not worth fighting through unless you have Chinese readers. Facebook domain verification only matters if you’ll ever run Meta ads. Alexa — again — is dead.

The whole webmaster_verifications block is a classic example of Chirpy giving you the option to do The Big Thing while making it perfectly fine to do The Small Thing. Sign up at Google, paste one token, ship it, and move on.

In a future post I’ll cover the rest of Chirpy’s SEO-adjacent fields — social_preview_image, the OpenGraph default, the per-post image front matter — that turn your shared links into proper preview cards instead of sad text-only blobs. Until then, happy verifying.

References

Notes

A quick note

This blog is a hobby project, and I’m not an expert on the topics I write about — just someone who enjoys learning in public and sharing what I find along the way. That means I’ll sometimes get things wrong, oversimplify, or miss nuance, and I’d genuinely love to hear about it.

If you have thoughts, corrections, questions, or just want to chat about this post, please join the conversation over on GitHub Discussions.

All friendly perspectives are welcome — I’m here to learn.

🤖 AI Generated Content

Last updated: [Saturday, 25th April 2026].

This post is licensed under CC BY 4.0 by the author.