· MarKripLabs
How to get an automatic social image for every Ghost post
When someone shares a Ghost post on X, LinkedIn, Facebook, Bluesky or Slack, the link preview shows the post's social image. Ghost picks it in this order:
- the image you uploaded in the post settings under X card or Facebook card,
- otherwise the post's feature image,
- otherwise your site's default image, or no image at all.
So if you write without feature images, every post either shares the same site image or shows a bare text link. Substack makes a share image for each post automatically. Ghost doesn't, and the forum thread asking for it has been active since 2023.
Here are three ways to fix it, from manual to fully automatic.
1. Make each image by hand
Design a 1200×630 image in Canva, Figma or similar, then upload it in the post settings under X card and Facebook card.
- Good: free, full control over every image.
- Not so good: 5–10 minutes per post, and it's easy to forget when you publish in a hurry.
2. A general image API with a webhook (Placid, Bannerbear)
Image services like Placid and Bannerbear can generate an image from a template whenever Ghost fires a webhook. Placid has an official Ghost integration page and only fills empty social image fields. Bannerbear's own guide for Ghost targets self-hosted sites, and its plans start at $49/month.
- Good: very flexible templates, and the same tool can make images for Instagram, ads and more.
- Not so good: you set up and maintain the template and webhook yourself, and pricing is usually per image or per credit.
3. A tool made only for Ghost (Sharecard)
Sharecard does one thing: when you publish, it renders a card with the post title, author and your site's colour and logo, and sets it as the post's X and Facebook image.
Setup takes about two minutes:
- In Ghost, go to Settings → Integrations → Add custom integration and copy the Admin API key and URL.
- Paste them into Sharecard. It checks the key, reads your logo and colour, and registers a webhook for new posts.
- Pick a template and publish as usual. Each new post gets its card within seconds, and you can fill older posts with one click.
A few details:
- It never overwrites a social image you set yourself. It only fills empty fields.
- Five templates (Classic, Bold, Minimal, Feature image, Author), with date, reading time, tag and author photo you can turn on or off.
- Per post, add the internal tag
#card-boldto use another template, or#card-skipto leave that post alone. - One flat price ($9/month after a 14-day trial), however often you publish.
You can try the card designer on the home page without signing up: type a title and the card renders live.
Which one should you pick?
- You publish rarely and like designing: make images by hand.
- You need images for many channels, not just link previews: a general image API.
- You just want every Ghost post to have a good preview, without thinking about it: Sharecard.
Questions
Does this work on every Ghost plan? It needs custom integrations, so Ghost(Pro) Publisher and above, or self-hosted Ghost. Ghost(Pro) Starter doesn't include custom integrations.
Will it replace images I've already set? No. If a post already has an X or Facebook image, Sharecard leaves it as it is.
What access does it need? A Ghost Admin API key from a custom integration. It's stored encrypted and used only to read post titles, upload the card and set the social image. You can revoke it in Ghost at any time.