Guide
By Axel Antas-Bergkvist Published May 23, 2026

How to bulk edit Ghost posts for SEO (at scale)

If you have a few dozen Ghost posts, editing them by hand is tedious but doable. If you have hundreds, it’s a wall. You can’t refresh a meta description on every post, standardize tags across the archive, or fix a heading pattern site-wide without opening each post one at a time. That’s the gap this guide closes.

The problem: Ghost has no real bulk content editor

Ghost did add bulk actions to the admin panel a while back. Select multiple posts in the post list, right-click, and you can add or remove tags, change post access, toggle featured status, or unpublish in one go. That’s genuinely useful for housekeeping.

But it stops at metadata and status. There is no native way to bulk-edit the things that actually move SEO: post bodies, titles, meta descriptions (custom excerpts), internal links, or heading structure. For content work, the Ghost editor is still strictly one post at a time. At scale, that workflow is hopeless — a 300-post archive turns a “quick” meta-description sweep into a week of clicking.

The approach: sync down, edit the folder, sync back

The fix is to stop editing inside Ghost’s web admin and bring the whole blog to where bulk edits are easy: a folder of plain markdown files on your Mac.

That round trip is what Specter does. It’s a native macOS menu-bar app that does two-way sync between Ghost and a local folder. Point it at your site (you’ll need a Ghost Admin API key), pick a folder, and it pulls every post down as a .md file. Crucially, it’s a two-way Ghost-to-markdown sync — it can edit posts you’ve already published, not just create new drafts. That’s the whole point for SEO, where the posts that matter are the ones already ranking.

The workflow looks like this:

  1. Sync your entire blog down to a folder. Every post becomes a markdown file with its frontmatter preserved — title, tags, status, feature image URL, and custom excerpt all live at the top of the file.
  2. Run one pass across the whole folder. Use an AI tool (Claude, ChatGPT, Gemini, Copilot — Specter has no built-in AI, you bring your own) or a plain script. Either operates on the folder like any other set of text files.
  3. Run a dry-run preview in Specter. Before anything touches Ghost, you see exactly which posts will be created, updated, or flagged as a conflict.
  4. Sync back. Push the edits to Ghost once the preview looks right.

Because the metadata lives in the frontmatter, this isn’t limited to body copy. You can bulk-edit titles, meta descriptions, tags, and feature images the same way you edit prose — they’re just lines in the file.

Concrete bulk SEO jobs worth running

These are the kinds of tasks that are miserable one-by-one and trivial across a folder:

This is also the territory people mean by “programmatic SEO” on Ghost — generating or updating metadata and content at scale with a repeatable process rather than hand-editing each page. A folder of markdown is exactly the input a script wants.

Safety: preview the diff before it touches Ghost

Bulk automation is powerful precisely because it’s indiscriminate, which is also the risk. The dry-run preview is the safety net. It’s not a vague “this will sync N posts” — it shows the actual creates, updates, and conflicts so you can read the blast radius of an edit before a single byte reaches your live site.

Conflict prompts are the second layer. If you changed a post in the Ghost editor and changed it locally, Specter asks you which version wins instead of silently clobbering one. After a 300-file edit, that’s the difference between a clean update and a quiet disaster.

A fair warning, though: review the diff. The fact that you can rewrite every post in one pass doesn’t mean you should mass-publish whatever an AI produces. Spot-check the output, especially on posts that already get traffic, and don’t push slop to readers just because the tooling made it easy.

How this actually gets used

This isn’t a hypothetical workflow. It’s how the maker of Specter, Axel — who’s run SEO sites for two decades — maintains his own revenue-generating Ghost blogs: sync the archive down, run a pass, preview, sync back. The tool exists because that loop needed to be safe enough to trust on live posts.

The mental model to hold onto is simple. Ghost stays your publishing home. Your Mac holds the source of truth as markdown. The bulk work — whether it’s an AI rewrite or a five-line script — happens in the folder, where doing something to every post at once is the natural case rather than the impossible one. Specter just keeps the two ends honest so a sweeping SEO edit lands exactly the way the preview said it would.

Buy Specter — $49 Browse all guides