Ghost CMS SEO Tips: What Actually Works (From a Real Affiliate Site Builder)

Share

I started this site on Ghost because I needed something lean—no bloat, no subscription fatigue, just a place to write about making money online without spending all my money online. Six months in, I've learned that Ghost doesn't hand you SEO on a silver platter, but it doesn't fight you either. Here's what I've figured out actually moves the needle.

Ghost's Built-in SEO Isn't Enough

When you first set up Ghost, you get the basics: meta descriptions, open graph tags, XML sitemaps. That's the floor, not the ceiling. The interface is clean—you can edit your post slug, add a meta description, choose a feature image—but Ghost won't tell you if your keyword density is off or if you're missing schema markup. That's on you.

What I've learned: Ghost gives you the tools to do SEO right, but you have to know what "right" looks like. If you're new to this, don't expect Ghost to do the thinking for you. Get familiar with the SEO checklist yourself first, then use Ghost's editor to execute it.

Focus on Your Post Slug and Meta Description

This is where I see people waste time. They'll write a 1,500-word post about affiliate marketing for beginners, then slug it as "post-42" or "new-article." Ghost doesn't auto-generate slugs based on your title—you have to type it. Do that work.

My approach: Keep slugs short, descriptive, and keyword-rich. If I'm writing about building affiliate sites on a budget, my slug is /affiliate-sites-on-budget, not /how-to-build-affiliate-sites-cheaply-in-2024. Too long is clunky for both users and Google.

The meta description gets about 155 characters. I use them to answer the question the keyword suggests. Someone searching "how to make passive income" wants to know if your post actually explains passive income—not just mentions it. Your meta description should promise what's in the post.

Ghost's Structured Data and Schema Markup

Ghost includes JSON-LD schema markup for articles out of the box, which is good news. Your published date, author, and headline are already structured. But if you want richer markup—like FAQ schema, product schema, or breadcrumb navigation—you'll need to add custom code in Ghost's header injection or footer injection settings.

I added FAQ schema to my [INTERNAL LINK: passive income posts] because Google loves FAQ snippets. It's a few minutes of copy-paste, and it's already paid dividends in click-through rates. Don't sleep on this.

Image Optimization Matters (And Ghost Makes It Easy)

Ghost lets you upload images directly, but you control the alt text. This is crucial. I see too many affiliate sites using feature images with zero alt text. Google can't "see" your image—it reads the alt attribute. Write something descriptive that includes your keyword naturally if it fits.

File size also matters. I compress images to about 100–150 KB before uploading so pages load fast. Google's Page Experience signals include Core Web Vitals, and large images tank your scores. Use an online compressor (I use TinyPNG) before you upload.

Internal Linking Is Manual—Embrace It

Ghost doesn't have automatic internal linking suggestions. You have to link manually using the editor's link tool. This sounds like a chore, but it's actually an advantage: you're forced to think about how your content connects. That discipline creates better site architecture.

My rule: Every post links to at least two older posts that support the argument or offer related value. This keeps readers on the site longer and tells Google your content is interconnected—not just random posts.

Sitemap and Indexing Setup

Ghost auto-generates a sitemap at /sitemap.xml. Make sure you submit it to Google Search Console. Also, configure Ghost to prevent indexing on draft and scheduled posts (it's a default setting, but double-check). You don't want Google crawling unfinished work.

One small annoyance: Ghost's sitemap doesn't let you manually adjust priority or change frequency, but honestly, Google ignores those hints anyway. The sitemap just needs to exist and be valid.

The Real Talk

Ghost won't rank your posts for you. It's a platform that gets out of the way and lets you focus on writing and structure. That's actually the point. If you know SEO fundamentals—keyword research, content quality, site speed, backlinks—Ghost is a clean canvas. If you're still learning SEO, Ghost might feel limited because there's no plugin ecosystem holding your hand.

I use Ghost because it's simple, fast, and I can focus on what matters: writing content that actually answers people's questions. The SEO follows from that.

the experiment is live
Watch the real numbers at jims.one
One dashboard. One dream. Many miles behind the wheel.
SEE THE NUMBERS →

Watch the real numbers at jims.one — I'm not pretending this is easy.