> ## Content Index
> Fetch the complete content index at: https://www.magicpages.co/llms.txt
> Use this file to discover other available public pages before exploring further.

# How to publish SocialSpec files for your Ghost site
- URL: https://www.magicpages.co/help/features/how-to-publish-socialspec-files-for-your-ghost-site/
- Published: 2026-11-09T15:18:36.000Z
- Updated: 2026-11-09T15:18:36.000Z
- Description: Publish about.md, contact.vcf and following.opml on your own domain, so SocialSpec apps can show who runs your site and what you follow.
- Author: Jannis Fedoruk-Betschki
- Tags: Help Center & Guides, Features and Benefits

SocialSpec lets apps like Social Browser and FollowDraw show who runs your site, how to reach you and which sites you follow. It works from three small files at fixed addresses on your own domain: `about.md`, `contact.vcf` and `following.opml`. We write them from your site and serve them from your domain. You turn them on with one switch in the customer portal.

## What's in each file

### about.md

A short profile in Markdown. Unless you pick a page, we write it from your site title and description in Ghost, followed by your site's address. If you pick one of your pages, `about.md` becomes that page's title and its text. Images and links come with it. Embeds, buttons and forms don't.

### contact.vcf

A contact card, the kind phones and address books open. It has your site title, your site's address, your publication icon (or your logo, if you haven't set an icon), your site description and a link to each account under Social accounts in Ghost. It only has an email address if you type one into the portal. We never take one from Ghost.

### following.opml

The sites you follow, as feeds someone can subscribe to in a reader. Your recommendations in Ghost come first, then the accounts you follow on the social web. A site only makes the list if we can find a feed for it.

## Turn it on

1. Log in to Ghost Admin and click **Customer Portal** in the left sidebar. If you can't find it, here's where it lives:

[Where can I find the Magic Pages Customer Portal?Your Magic Pages Customer Portal is built right into your Ghost admin.![](https://www.magicpages.co/content/images/icon/magic-pages_full-logo_dark-plum-icon-94bf7076-6eac-496a-acdf-f98e8f31085a.png)Magic PagesJannis Fedoruk-Betschki![](https://www.magicpages.co/content/images/thumbnail/og-where-can-i-find-the-magic-pages-customer-portal-b34bfc96-e079-4c62-b1d5-22267ede53e2.png)](https://www.magicpages.co/help/trial/where-can-i-find-the-magic-pages-customer-portal/)

1. Open **Configuration** and scroll to **SocialSpec**.
2. Switch on **On your site**.
3. Under **about.md**, keep **Generate from site title and description**, or pick one of your pages. Only pages that are published and public are in the list.

![The about.md menu in the SocialSpec section, open: Generate from site title and description, then the site's published pages About Seaside Notes (selected), Contact and Our tide tables.](https://www.magicpages.co/content/images/2026/11/socialspec-about-page-picker.png)

1. Under **Public email address**, enter the address you want in `contact.vcf`. It's readable by anyone, so use one you don't mind sharing. Leave it blank and the card has no address.
2. Switch on **Include sites I follow on the social web** if you want `following.opml`. While it's off, that address isn't published.
3. Click **Save changes**.

![The SocialSpec section after saving, marked New and Live. On your site is switched on, about.md uses the page About Seaside Notes, the public email address is hello@seasidenotes.com, and Include sites I follow on the social web is switched on.](https://www.magicpages.co/content/images/2026/11/socialspec-settings-live.png)

The section now shows **Live**. Under **Your files**, each file name links to the file on your site, so you can open it and check.

![The Your files card for www.seasidenotes.com, linking to about.md, contact.vcf and following.opml, each with a line on what it holds, and a link to the SocialSpec specification.](https://www.magicpages.co/content/images/2026/11/socialspec-your-files.png)

## Where the files are

The files are on every address your site uses: your `mymagic.page` address, and your custom domain with and without `www`. For a site at `example.com`, that's:

- `https://example.com/.well-known/about.md`
- `https://example.com/.well-known/contact.vcf`
- `https://example.com/.well-known/following.opml`

Ours are on `www.magicpages.co`, if you'd like to see what the three look like for a real site: [about.md](https://www.magicpages.co/.well-known/about.md), [contact.vcf](https://www.magicpages.co/.well-known/contact.vcf) and [following.opml](https://www.magicpages.co/.well-known/following.opml). Our `about.md` comes from our About page, so it's the long version.

## See your profile the way apps show it

Once your files are live, open your site in an app that reads them. Here's [ours in Social Browser](https://sodir.org/profile.html?d=magicpages.co&ref=magicpages.co), with our latest posts, the sites we follow, our about page and our contact card.

[Social Browser](https://sodir.org/?ref=magicpages.co) turns any site into a profile. Type a domain, and it shows the site's latest posts, who it follows, its `about.md` and its contact card.

[FollowDraw](https://followdraw.com/?ref=magicpages.co) draws three random sites from a profile's `following.opml`. It's a quick way to find something new to read through the sites you already like.

[HyperTexting](https://hypertexting.com/?ref=magicpages.co) is a feed reader app with a timeline, where every site you follow gets a profile page.

To check a file, the [SocialSpec validator](https://brianschrader.com/other-projects/social-spec-validator/?ref=magicpages.co) reads all three the way a browser app does and lists what each one has and lacks. The specification behind it all is on [socialspec.org](https://socialspec.org/?ref=magicpages.co).

## When they change

When you click **Save changes** in the portal, the files change straight away. When you change something in Ghost, like the page you picked, your site title or your social accounts, they change a few seconds later.

New recommendations and follows reach `following.opml` at our nightly rebuild, 04:45 UTC, because Ghost doesn't tell us when those change.

Apps can keep a copy for up to five minutes, so a change can take that long to show up in one.

## When nothing is published

While only people with an access code can see your site (**Settings → Access** in Ghost Admin, **Who should be able to browse your site?** set to **Private**), we don't publish any of the three files. That includes sites on a free trial, which are private until you pick a plan.

The same goes for a paused or cancelled site, and for any site with **On your site** switched off. The addresses then answer the way they did before SocialSpec existed, with your site's "page not found".

The usual reasons a file looks empty or out of date are in [Why is my SocialSpec profile empty or out of date?](https://www.magicpages.co/help/features/why-is-my-socialspec-profile-empty-or-out-of-date/)