Publishing platform

Ghost, from zero to first newsletter

A short, plain-language guide to what Ghost is, how to spin up a real Ghost site with no credit card, and how to publish your first post and email it to subscribers. A live public demo is embedded below.

Your private Ghost(Pro) sandbox

Every visitor gets their own private Ghost site. The official Ghost(Pro) service gives 14 days free with no credit card — a real, admin-accessible Ghost instance at a yoursite.ghost.io URL. Paste your admin URL below and this page will reload it on your next visit.

Launch on Ghost(Pro)
Preparing your session...

If nothing loads here, the sandbox host does not allow being framed by other sites. That is a common, sensible security setting for live admin interfaces — use the "Open in new tab" button above.

Launch the sandbox

How to put it into the sandbox

A sandbox is a hosted Ghost site you get instantly at no cost. Ghost(Pro) is the official managed host and gives every visitor a full-feature site for 14 days without a credit card — long enough to publish, style and send your first newsletter.

  1. 1. Open the sandbox provider

    Click ghost.org/pricing. Pick the Starter plan and click Start 14-day free trial. No credit card is required for the trial.

  2. 2. Create your account

    Enter your name, email, and a temporary site name (this becomes yoursite.ghost.io). Ghost sends a confirmation email — click the link.

  3. 3. Wait for provisioning

    Ghost(Pro) provisions your site in about 20 seconds. When ready, you land on Ghost Admin as the site Owner. The public site is live at your ghost.io URL.

  4. 4. Copy your admin URL

    Your admin lives at https://yoursite.ghost.io/ghost/. Paste this URL below so this page reloads your sandbox next time. The public site (without /ghost/) is where readers land.

  5. 5. Set up your publication

    Go to Settings, General — set your publication title, description and timezone. Under Settings, Design pick an accent colour, header style and logo. Under Settings, Newsletter set the sender name.

  6. 6. Write your first post

    Click Posts, New post. Type a title, hit Enter and start writing. Type "/" for the block menu — try an image, a heading, a quote. Add a Feature image at the top and 1–2 Tags in the right sidebar. Click Publish, Continue, Publish post right now.

  7. 7. Turn on paid membership (optional)

    Go to Settings, Membership. Click Connect Stripe, paste your Stripe Secret Key, click Save. Add a Tier ("$5 / month, monthly newsletter"). Now every post has a Post Access setting for Free, Members, or a Tier.

  8. 8. Save what you want to keep

    The trial site keeps everything if you convert to paid. To move it off Ghost(Pro): request an export from Settings, Labs, Export. You get a JSON file that imports into any self-hosted Ghost. Images have to be downloaded separately.

Step-by-step guide

  1. 1. What Ghost is

    Ghost is a free, open-source publishing platform focused on newsletters, blogs and paid membership sites. It is not a general-purpose CMS like WordPress or Drupal — the product is deliberately narrow: writing, publishing, sending, and charging. It is written in Node.js and stores data in SQLite (default) or MySQL. Substack, Revue and Medium are the closest commercial equivalents.

    Was this useful?
  2. 2. Try Ghost without installing anything

    Ghost(Pro), the official hosted service, offers a 14-day free trial at ghost.org — you get a real, admin-accessible Ghost site at a yoursite.ghost.io URL, no credit card needed. For a fully disposable option, launch a one-click Ghost droplet on DigitalOcean's Marketplace (uses your $200 free credit).

    Was this useful?
  3. 3. What you need to run it yourself

    Node.js (a supported LTS version — currently 18 or 20), and MySQL 8 (SQLite works for development only). Recommended: nginx as a reverse proxy in front of Ghost, and a system running Ubuntu 22.04 LTS or newer. The official CLI, Ghost-CLI, installs and configures Ghost, nginx and systemd in one command.

    Was this useful?
  4. 4. Install Ghost locally in dev mode

    Create a folder for your site, then run npm install -g ghost-cli, ghost install local. Ghost-CLI downloads the latest Ghost, sets up SQLite, runs the migrations and starts the server. Visit http://localhost:2368 for the site and http://localhost:2368/ghost to create the owner account and enter Ghost Admin.

    Was this useful?
  5. 5. First run — Ghost Admin

    The admin UI, called Ghost Admin, is a modern single-page app. The sidebar has: Posts, Pages, Tags, Members, Newsletters, Site, Settings. Posts is the blog. Pages is static content. Members is your subscriber list. Newsletters is what goes out by email. Site is the public appearance. Settings covers design, membership tiers, integrations and staff.

    Was this useful?
  6. 6. Posts, pages and the editor — the core idea

    Ghost's editor is a clean, block-based writing surface. Type "/" on a new line to insert a block: heading, image, embed, quote, code, callout, bookmark, HTML. Every post has a feature image, a title, an excerpt, tags, and an access setting (Public, Members only, or a paid tier). Publishing sends the post to the site and, if you tick the Newsletter option, emails it to your list.

    Was this useful?
  7. 7. Members, tiers and newsletters

    The Members feature is the reason to pick Ghost over WordPress. Under Settings, Membership you can turn signup on, configure free and paid tiers, and connect Stripe for payments in three clicks (paste a Stripe secret key and it works). Under Newsletters you configure sender name, sender email and design, and every published post can go out as an email too.

    Was this useful?
  8. 8. Themes and design

    Ghost themes are Handlebars template packages. Ghost ships with Source (default), Casper, Alto, Bulletin and others out of the box — swap them under Settings, Design. Free and paid themes live at ghost.org/themes. To customise: download the theme, edit the .hbs and .css files, zip it, upload under Design, Change theme, Upload theme.

    Was this useful?
  9. 9. Integrations and the API

    Ghost has a first-class REST + Admin API and a Zapier-style Integrations page at Settings, Integrations. Popular built-in integrations: Slack, Mailgun (for large sends), Zapier, Unsplash, Firstpromoter. Custom integrations expose an Admin API key you use to script content, or a Content API key to power a headless front-end in Astro, Next.js or Gatsby.

    Was this useful?
  10. 10. Publishing your site

    Two paths. Managed: Ghost(Pro) at ghost.org — you write, they run it, upgrades and backups are automatic; from $9/month. Self-hosted: on a fresh Ubuntu VM run ghost install, follow the prompts, and Ghost-CLI installs Ghost + nginx + systemd + Let's Encrypt SSL for you. Back up with ghost backup, restore with ghost restore, upgrade with ghost update.

    Was this useful?

One-page cheat sheet

Local install with Ghost-CLI

npm install -g ghost-cli
mkdir my-ghost && cd my-ghost
ghost install local
# admin at http://localhost:2368/ghost

Production install (Ubuntu)

sudo apt update && sudo apt install nginx mysql-server
sudo mkdir /var/www/ghost && sudo chown $USER:$USER /var/www/ghost
cd /var/www/ghost
ghost install
# CLI prompts for URL, MySQL creds, ssl, systemd

Day-to-day CLI

ghost start
ghost stop
ghost restart
ghost log
ghost update            # upgrade Ghost
ghost backup            # download a full backup
ghost doctor            # diagnose common problems

Use the Content API from Astro

// npm i @tryghost/content-api
import GhostContentAPI from '@tryghost/content-api';
const api = new GhostContentAPI({
  url: 'https://yoursite.ghost.io',
  key: 'YOUR_CONTENT_API_KEY',
  version: 'v5.0'
});
const posts = await api.posts.browse({ limit: 5 });