Ghost · Publishing CMS

Ghost SEO audit: the issues built into Ghost — and how to fix them

A Ghost SEO audit checks your store across search, AI visibility, accessibility and security — with a fix for each issue we find.

A modern publishing and membership platform that's genuinely strong on technical SEO out of the box — so its issues are subtler: paywalled content, archive pages, and theme completeness.

How does Ghost's architecture shape your SEO?

Ghost is a Node-based publishing platform (hosted or self-hosted) built for blogs, newsletters, and paid memberships. It's one of the better platforms for technical SEO by default: clean semantic HTML, automatic Article/JSON-LD structured data, XML sitemaps, canonical tags, and fast delivery. Because the fundamentals are handled, the issues that remain are editorial and structural — how members-only content interacts with indexing, thin tag/author archive pages, and whether a custom theme preserves Ghost's built-in SEO output.

Reference: Ghost SEO documentation →

What issues show up most on Ghost sites?

Why these happen on Ghost

Specific to how Ghost is built — not generic checklist advice.

SEO

Members-only content and indexing

Paywalled or members-only posts can end up as teaser pages with little public content. Decide deliberately what should be indexed: keep public posts fully crawlable, and make sure gated posts aren't surfacing as thin, near-empty pages that disappoint searchers.

SEO

Thin tag and author archives

Ghost generates archive pages for every tag and author. Loosely-used tags create many thin, near-duplicate listings. Keep tags purposeful and consider how much archive surface you actually want indexed.

AEO

Custom themes can drop built-in SEO

Ghost's default output includes structured data and proper meta, but a custom theme can omit the helpers that generate them. Verify your live theme still emits Article JSON-LD, canonicals, and Open Graph tags — don't assume it inherited them.

Fixes written for Ghost

We catalog 19 Ghost fixes — exact steps for Ghost's admin and theme, each with a link to the official docs.

Images missing alt bulkSEO

Add descriptive alt text to every product and content image at the template level so search engines and screen readers can understand all images on the page.

On Ghost
  1. 1In the Ghost editor, click any image card → click the 'Alt text' option (below the image, shown as 'Add alt text') → type the description.
  2. 2For your theme's featured images, open your theme files: in `partials/` or the main `post.hbs` / `page.hbs`, find `<img>` tags using `{{feature_image}}` and add `alt="{{title}}"` as a fallback if a dedicated alt field is not set.
  3. 3Upload the modified theme under Settings → Design → Upload theme.
Code · Generic HTMLhtml
<!-- Informative product image — describe what the image shows -->
<img src="/images/red-running-shoes-side-view.jpg"
     alt="Red canvas running shoes, side view, white rubber sole"
     width="800" height="800">

<!-- Decorative image — empty alt tells screen readers to skip it -->
<img src="/images/divider-wave.svg"
     alt=""
     role="presentation"
     width="1200" height="40">

Correct alt text pattern for informative images vs. decorative images.

Ghost docs →
Meta description too longSEO

Shorten your meta description to 150–160 characters so Google displays it in full instead of cutting it off with "…" in search results.

On Ghost
  1. 1Open the post or page in the Ghost editor.
  2. 2Click the Settings panel (⚙) on the top-right → scroll to 'Meta' → expand 'Meta data'.
  3. 3Edit the 'Meta description' field, keeping it under 160 characters.
  4. 4Save / Publish.
Code · Generic HTMLhtml
<meta name="description" content="Award-winning Bang & Olufsen headphones, speakers and TVs. Visit our Malaysia showroom at The Gardens Mall, Level 2. Free shipping on orders over RM500.">

Place this inside the <head> element of every page. Replace the content value with your page-specific description (max 160 characters).

Ghost docs →
Meta description too shortSEO

Expand your meta description to 120–160 characters so Google displays a compelling, complete snippet in search results that drives more clicks to your store.

On Ghost
  1. 1Open the post or page editor → click the Settings gear icon (top right) → scroll to 'Meta data' → expand it → update the 'Meta description' field to 120–160 characters → Save or Publish.
Code · Generic HTMLhtml
<meta name="description" content="Shop the official Nike national team jerseys — advanced Dri-FIT heat tech meets bold heritage design. Free shipping on orders over $75. Explore the full collection now.">

Place this inside the <head> element of your HTML page. Replace the content value with your 120–160 character description.

Ghost docs →
Missing h1SEO

Add a single, descriptive H1 tag to every page that currently lacks one, clearly stating the page's main topic.

On Ghost
  1. 1Ghost automatically renders the post/page Title as the H1. Open the Ghost Admin, go to Posts or Pages, open the entry, and ensure the Title field at the top is filled in.
  2. 2If your theme wraps the title in a non-H1 tag, edit the relevant theme template (e.g. post.hbs) and change the title wrapper to <h1 class="post-title">{{title}}</h1>.
  3. 3Upload the modified theme under Settings → Theme and verify.
Code · Generic HTMLhtml
<h1>Women's Running Shoes</h1>

Place exactly one of these per page, as the first heading in the main content area.

Ghost docs →

Browse all 19 Ghost fixes →

Software currency · OWASP A06

83% of Ghost sites run an outdated version

Across the open web, only 17% of Ghost sites are on 6.64, the current release — out of 10,626 versioned Ghost sites. Outdated software is the single most common source of exploitable vulnerabilities (OWASP A06). SEOLZ flags exactly which of your components are behind — and the version to update to.

83%
run an outdated version
6.64
current release
10,626
versioned sites tracked

Source: HTTP Archive — version strings from a real-Chrome crawl of the open web. A major.minor behind the current line counts as outdated.

Every scan checks all six pillars

You can't rank what AI can't read. SEO, AEO, and GEO tell you where you rank; WCAG, OWASP, and Lifecycle determine whether search and AI can read and trust you at all. SEOLZ scores all six as one system.

🔍
SEO

Your catalog pages may be invisible to Google right now and you'd have no way to know. Indexability gaps, canonical conflicts, and faceted navigation issues silently kill organic traffic — we surface every one and tell you which to fix first.

Learn how to fix SEO issues →
✨
Answer Engine (AEO)

When someone asks ChatGPT to recommend a product in your category, is your store in the answer? Often it isn't. We check the structured data, page structure, and brand signals that help search and AI understand your products and describe them accurately — and we measure whether they actually cite you, or a competitor.

Learn how to fix Answer Engine (AEO) issues →
🌐
AI Visibility (GEO)

AI search is eating traditional organic traffic. We track your actual brand mentions across ChatGPT, Perplexity, and other AI engines — and tell you what's pushing you down in the results.

Learn how to fix AI Visibility (GEO) issues →
♿
Accessibility (WCAG)

Ecommerce stores are among the most frequent recipients of ADA accessibility demand letters. We run WCAG 2.1 AA checks across your catalog, surface the barriers that most often appear in demand letters, and track each one through to a verified fix.

Learn how to fix Accessibility (WCAG) issues →
🛡️
Security (OWASP)

A missing security header exposes your customers, and a compromised or flagged site loses search visibility fast. We check the server configuration, HTTPS setup, and email authentication issues that erode trust — before they become an incident.

Learn how to fix Security (OWASP) issues →
⏳
Site Lifecycle

SSL expires. Plugin versions fall behind. GTM containers go unverified. These aren't hypothetical risks — they're the operational failures that cause outages, ranking drops, and security incidents. We catch them before they happen.

Learn how to fix Site Lifecycle issues →

Start free. Upgrade when ready.

Scout
Free
1 site · 50 pages/audit · monthly audits
6-pillar welcome scan
  • ✓Composite + pillar scores
  • ✓Issue counts
  • ✓Recurring five-pillar re-scan
  • ✓Free forever
Start free
Starter
$49/mo
1 site · 500 pages/audit · weekly audits
All 6 pillars
  • ✓Every finding across all 6 pillars, with step-by-step fixes for your platform
  • ✓Template fixes: fix it once, clear it on every page built from that template
  • ✓Fix tracking: mark it fixed and the next audit confirms it
  • ✓Email alerts for score drops, new security issues, and SSL / domain expiry
  • ✓Report builder with PDF, HTML and Markdown export
  • ✓GTM & tracking audit, plus Search Console topic gaps
Choose Starter

Questions about Ghost audits

Is Ghost good for SEO?+

Yes — it's one of the stronger platforms out of the box: clean HTML, automatic structured data, sitemaps, and canonicals. We focus on the subtler issues: membership/indexing, archive thinness, and whether your theme preserves the built-in SEO.

Does SEOLZ work with Ghost?+

Yes — we crawl your live Ghost site and flag anything your theme or membership settings have changed about indexability, structured data, or meta.

Should members-only Ghost posts be indexed?+

Usually you want public posts indexed and gated posts handled deliberately so they don't appear as thin teaser pages. We show which of your posts render as near-empty to crawlers.

See what's holding back your Ghost site

Free scan, no credit card, results in minutes. We've got you.

Scan My Ghost Site Free