Ghost is the best publishing platform available if writing is the point. This guide takes you from nothing to a live blog, and is honest about where each route costs you time.
Before anything: three decisions
Make these first. Changing your mind later is possible but annoying.
- Your domain. Buy it before you build.
yourname.comis worth the ~$12/year over any free subdomain, because it is the one asset you keep when you change host, theme or platform. - Managed or self-hosted. This decides how your next two hours go. See below.
- Newsletter or not. If you plan to email readers, you need a transactional email provider, and that requirement rules some hosts out entirely — including us. Decide now, not after you have migrated.
Step 1 — Choose how you will host it
Managed hosting. You pay a monthly fee; the provider installs Ghost, issues your certificate, runs upgrades and keeps backups. Setup is minutes. Expect $5–15/month.
Self-hosting on a VPS. You rent a server and install Ghost yourself. Cheaper in cash, and you own the maintenance forever. Expect $6–12/month plus your time, and read the requirements checklist first — the Node-version rule catches almost everyone.
Our cost breakdown compares both with real numbers.
Step 2 — Point your domain
Whichever route you take, your domain needs an A record pointing at your server's IP address.
In your registrar's DNS panel:
| Type | Name | Value |
|---|---|---|
| A | @ |
your server's IPv4 |
| CNAME | www |
yourdomain.com |
Set the TTL to 300 seconds while you are setting up. It makes any mistake five minutes to correct instead of a day.
If your DNS is on Cloudflare, leave the record DNS-only (grey cloud) until your certificate has been issued. Proxying before that can prevent the certificate validating at all.
Step 3 — Get Ghost running
Managed: enter your domain in the panel. With us, the container launches, Ghost and MySQL are installed, the web server is configured and a Let's Encrypt certificate is issued — about a minute end to end, and you watch each step. The full sequence is on how it works.
Self-hosted: on a fresh Ubuntu server with Node and MySQL 8 installed:
sudo npm install ghost-cli@latest -g
sudo mkdir -p /var/www/ghost && sudo chown $USER:$USER /var/www/ghost
cd /var/www/ghost && ghost install
ghost install asks for your domain and database credentials, and can configure nginx and SSL for
you. If it fails part way through, check your Node version against npm view ghost engines.node
before anything else — that is the usual cause.
Step 4 — Set up your site
Sign in at yourdomain.com/ghost/ and create your owner account. Then, in order of impact:
- Settings → General. Title, description, timezone, and your site icon. The description is what search engines show, so write it for a human.
- Settings → Design. Ghost ships with Source, which is genuinely good. Change the accent colour and move on — do not spend your first day theme shopping.
- Settings → Meta. Check the search and social previews. Ghost generates sensible defaults.
Step 5 — Publish your first post
Write it in the editor, add a feature image, and set a post URL you are happy with — the slug is hard to change later without breaking links.
Publish. Then check the post on your phone, because roughly half your readers will be on one.
Step 6 — The things people forget
- Test a backup restore. An untested backup is a hypothesis. Managed hosts should let you download a full archive; if yours does not, that is a red flag.
- Add your site to Google Search Console. It is free and it is how you find out you have been indexed.
- Decide about email now. Newsletters need a mail provider configured. Without one, member sign-in links do not arrive and people cannot subscribe.
FAQ
Is Ghost hard to set up?
Not on managed hosting — you enter a domain and the site is live in about a minute. Self-hosting takes one to three hours the first time, and the common failures are a Node version Ghost does not support and giving the server too little memory during install.
Can I start a Ghost blog for free?
You can run Ghost locally for free, but a public blog needs hosting and a domain, which is $5–15 per month plus about $12 a year. Ghost's software licence itself is free. There is no free tier on our platform.
Do I need to know how to code to use Ghost?
No. Writing, publishing and changing themes are all done through the admin interface. You only need technical knowledge if you self-host the server or build a custom theme.
How long does it take to get a Ghost blog online?
On managed hosting, about a minute once your domain resolves to the host. Self-hosting takes one to three hours the first time, most of which is server preparation rather than Ghost itself.
Can I move my Ghost blog to another host later?
Yes, and you should check that before you buy. A Ghost site is a MySQL database plus a content folder, and any host that lets you download both can be left. We do — see our migration guide for the zero-downtime method.
Want to skip straight to step 4? Create your blog — bring your domain and we handle the container, the database and the certificate. Plans start at $5/month.