How to Set Up Redirects in Ghost (Without Touching a YAML File)

June 4, 2026 - Michal Wlosik
How to Set Up Redirects in Ghost (Without Touching a YAML File)

 

You changed a post's slug, deleted an old article, or moved off another platform — and now there's a URL out there that leads nowhere. Visitors hit a 404 and leave. The fix is a redirect, and in Ghost that's more annoying than it should be. Here's the format if you want to do it by hand, and the one-click way if you don't.

First, use a 301 (not a 302)

A 301 says "this moved permanently." A 302 says "this is temporary." For a slug change or a deleted post, you almost always want a 301 — Google uses a permanent redirect to show the new URL in search results, while a temporary one keeps the old URL there. And no, you won't lose ranking: permanent redirects don't cost you PageRank. Use a 302 only when you'll actually put the old page back.

The native Ghost way (and why it's a pain)

Ghost has no button for "redirect this URL." Instead, per the official docs, you:

  1. Go to Settings → Advanced → Labs.
  2. Download your redirects.yaml file.
  3. Open it in a code editor and add rules by hand.
  4. Re-upload the whole file.

The file looks like this:

301:
  /old-post-slug/: /new-post-slug/
  /2021/old-category/: /blog/
302:
  /summer-sale/: /shop/

You can even use regex for a bulk migration — handy if you're moving from /blog/post-name to /post-name:

301:
  ^/blog/(.*)$: /$1

It works, but watch two gotchas that trip everyone up: Ghost often downloads the file as redirects.json even though it needs a .yaml extension to upload, and YAML demands spaces, not tabs. Get either wrong and you get a vague "cannot fetch redirects" error. Worse, every single change means downloading, editing, and re-uploading the entire file — there's no way to add just one redirect.

The easy way: do it inside Ghost Admin

Postmancer's Redirect Manager skips all of that. You create, view, and delete redirects straight from Ghost Admin — no file, no code editor, no SSH, no .yaml vs .json headaches.

Type the old path, type where it should go, pick 301 or 302, save. Done. The redirect is live and you never left your browser.

When you'll actually need this

  • You renamed a slug. Ghost doesn't auto-redirect the old one. Point it at the new slug or readers (and Google) hit a dead end.
  • You deleted or merged posts. Send the old URL to the closest surviving post, not just the homepage — a relevant page is better for readers and keeps the link equity useful.
  • AI is sending people to pages you never wrote. ChatGPT and Perplexity confidently link to URLs they assume exist. Postmancer's AI Traffic Insights shows you exactly which made-up URLs are getting hits, so you can redirect them to a real page and catch traffic you'd otherwise lose.

The Postmancer AI traffic dashboard listing URL paths, the AI source such as ChatGPT or Perplexity, hit counts, and when each was last seen

  • You migrated to Ghost. Old platform, different URL structure? A few regex 301s map the old paths to the new ones in one go.

Three rules to not mess it up

  • Redirect to the most relevant page, not the homepage. A homepage redirect reads like a dead end to both readers and search engines.
  • Avoid chains. Don't send A → B → C. Point A straight at C.
  • Leave 301s in place. Google needs to see a redirect a few times to record it — the recommendation is to keep it for at least a year, and longer if other sites still link to the old URL.

That's the whole thing. Use a 301 for permanent moves, send the old URL somewhere genuinely useful, and skip the YAML wrestling.

Install Postmancer free and add your next redirect in about ten seconds.


Sources

Cookie Settings
This website uses cookies

Cookie Settings

We use cookies to improve user experience. Choose what cookie categories you allow us to use. You can read more about our Cookie Policy by clicking on Cookie Policy below.

These cookies enable strictly necessary cookies for security, language support and verification of identity. These cookies can’t be disabled.

These cookies collect data to remember choices users make to improve and give a better user experience. Disabling can cause some parts of the site to not work properly.

These cookies help us to understand how visitors interact with our website, help us measure and analyze traffic to improve our service.

These cookies help us to better deliver marketing content and customized ads.