Guide
By Axel Antas-Bergkvist Published May 23, 2026

Write meta descriptions for your whole blog at once

If you have more than a handful of posts, some of them are missing a good meta description — almost everyone’s archive is. They are tedious to write, easy to skip when you are publishing, and impossible to fix in bulk from the Ghost editor, which makes you open each post one at a time. So they sit empty, and search engines fall back to whatever scrap of your intro they can find. This is a textbook job for working on your posts as files.

How Ghost handles excerpts and meta descriptions

A quick clarification, because the fields overlap. In Ghost, each post has a custom excerpt, and it has a separate meta description field in the post’s SEO settings. When you have not set a dedicated meta description, Ghost generally uses the excerpt as the meta description for search and social. Specter syncs the excerpt field — it round-trips as part of each post’s frontmatter — so the practical, high-leverage move is to make sure every post has a strong, deliberate excerpt rather than an empty one or an auto-clipped sentence.

The bulk pass

Specter syncs your blog down to local markdown, so every post is a file with its frontmatter — including that excerpt field — right there to edit. Connect it via the first-sync guide if you have not, then point the AI you already use at the folder. Specter has no built-in model; you bring Claude, ChatGPT, Gemini, or another assistant. A scoped instruction does the work:

For every .md file in this folder, look at the frontmatter "excerpt"
field. Where it is missing or empty, write a meta description of
about 150 characters that summarizes what the post actually delivers
and includes its main topic. Do not change posts that already have a
deliberate excerpt, and do not touch the post body.

Telling it to leave existing excerpts alone matters — you are filling gaps, not overwriting the ones you wrote by hand. You can run a tighter version that also rewrites weak, generic excerpts, but do that as a separate, clearly-scoped pass so you can review it on its own.

Review, preview, sync

Because meta descriptions are small and numerous, skimming the diff is quick and worth doing — an AI will occasionally write something bland or slightly off, and these are the lines that show up in search results, so they earn a glance. Read the changes in your editor, fix any duds, then run Specter’s dry-run preview to see exactly which posts would update on Ghost before anything goes live. Committing the folder to git first gives you a clean snapshot to compare against.

This pairs naturally with the broader bulk SEO edit workflow — titles and metadata across the archive — and with refreshing old posts at scale, where updated content deserves an updated description anyway. One pass, the whole blog, descriptions that you actually chose.

Buy Specter — $49 Browse all guides