All How-To Guides
Ghost5 min·6 steps

How to Set Up Google Search Console on Ghost (2026 Step-by-Step Guide)

Ghost has Code Injection on every site, which makes Search Console verification a 5-minute job: paste a meta tag into the Site Header injection field, click Verify in GSC, submit Ghost's auto-generated sitemap. Ghost is unusually friendly for SEO - it serves clean HTML, has no JavaScript framework overhead, and emits proper meta tags out of the box.

What you'll need before you start

  • A Ghost site (Ghost(Pro) any plan, or self-hosted Ghost)
  • Owner or Administrator account
  • A Google account

How to set up Google Search Console on Ghost: Step-by-step

  1. 1

    Add your Ghost site to Search Console

    Go to search.google.com/search-console, click Add property, choose URL prefix, and paste your full Ghost URL (custom domain or .ghost.io for trial sites). Click Continue.

  2. 2

    Copy the HTML meta-tag verification code

    On the GSC verification screen, expand HTML tag and copy the entire tag - it looks like <meta name="google-site-verification" content="...">. Don't close the tab.

  3. 3

    Open Ghost's Code Injection settings

    Sign in to Ghost Admin (e.g., yourdomain.com/ghost). Click SettingsAdvancedCode injection. (On older Ghost versions: SettingsCode injection.)

  4. 4

    Paste the meta tag into Site Header and save

    In the Site Header field, paste the entire <meta> tag. Click Save. The tag injects into the <head> of every page Ghost publishes - including the homepage, posts, tag archives, and member-only pages.

  5. 5

    Click Verify in Search Console

    Return to GSC and click Verify. Verification is usually instant. If it fails, check that the meta tag is actually rendering - view your homepage source (Ctrl+U / Cmd+U) and search for google-site-verification.

  6. 6

    Submit Ghost's sitemap

    Ghost auto-generates a sitemap at /sitemap.xml with child sitemaps at /sitemap-posts.xml, /sitemap-pages.xml, /sitemap-tags.xml, and /sitemap-authors.xml. In GSC click Sitemaps in the sidebar, paste sitemap.xml, and click Submit. Ghost regenerates the sitemap as content changes.

How to verify your setup is working

Verification status shows in GSC SettingsOwnership verification. Sitemap status shows in GSC Sitemaps. To confirm the meta tag is on every page (not just the homepage), use URL Inspection on a recent post URL - the inspection result will show whether Google can crawl and read the page.

Common issues and fixes

Verification fails despite the meta tag being in Code Injection

Most often this is a CDN/cache layer in front of Ghost. If you're using Cloudflare with strict HTML rewriting, the meta tag could be stripped. View your live site source - if the tag isn't there, the issue is upstream of Ghost. Check your CDN's HTML rewriting rules and any minifier middleware.

Many posts are showing as "Discovered - currently not indexed"

This is common for new Ghost blogs without backlink authority. Three things help: (1) make sure each post has internal links pointing to it from your homepage or hub posts; (2) submit critical posts manually via URL InspectionRequest indexing; (3) build a few real backlinks. Ghost's clean structure and fast page speed help, but indexing depth ultimately depends on authority.

Member-only / paywalled posts are appearing in search

By default Ghost serves a public preview of paywalled posts (the first portion of the body) so Google can index that part. The full content is gated. If you don't want any version of a paywalled post indexed, edit the post and set Visibility to Members only with no public preview - or use Code Injection at the post level to add <meta name="robots" content="noindex">.

Frequently asked questions

Does Ghost have built-in SEO?

Ghost handles the technical SEO basics correctly out of the box: clean URLs, fast page loads, proper meta tags, OpenGraph tags, JSON-LD structured data, automatic sitemap, and a default robots.txt. You don't need any plugins. The advanced SEO work (keyword research, content optimization, link-building) is up to you, like on any platform.

Where is the Ghost sitemap?

Every Ghost site exposes a sitemap index at your-domain.com/sitemap.xml with child sitemaps for posts (/sitemap-posts.xml), pages (/sitemap-pages.xml), tags (/sitemap-tags.xml), and authors (/sitemap-authors.xml). Ghost regenerates them automatically as you publish.

Can I exclude pages from Ghost's sitemap?

Posts set to draft or scheduled don't appear in the sitemap. Posts marked as Members only still appear (but search engines see only the public preview). To exclude a published post entirely, you can add <meta name="robots" content="noindex"> via Code Injection on that specific post.

Do I need to verify my .ghost.io trial URL?

You can, but the trial URL has limited indexing benefits anyway. As soon as you connect a custom domain, Ghost issues 301 redirects from the .ghost.io URL to the custom domain - which means any GSC property pointing at the .ghost.io URL will stop receiving data. Better to wait until you've connected your final domain before verifying.

How do I track newsletter subscribers in Search Console?

You can't directly - Search Console only reports on search traffic, not newsletter sign-ups. Ghost's built-in dashboard tracks newsletter conversions on a per-post basis. For attribution from search traffic to newsletter sign-ups, use Google Analytics 4 alongside GSC; GA4 will show you which queries drove visitors who eventually subscribed.

Why are some Ghost posts not appearing in Google search?

If a post isn't indexed after 2-3 weeks: (1) check it's set to Public visibility, (2) submit the URL manually via URL Inspection, (3) make sure your homepage has a link to it (recently-published posts are highest-priority for crawl), (4) confirm your site has at least a few inbound backlinks - Google won't crawl deeply into low-authority sites.

Once you're set up, MeasureBoard turns the data into action

MeasureBoard connects to your analytics, search, and SEO tooling and generates AI-powered weekly reports, GEO readiness scores, and a dedicated AI analyst that answers questions in plain English. Free to start, connects in 30 seconds.

Get Started Free