When comparing Ghost vs Gatsby JS, the Slant community recommends Gatsby JS for most people. In the question“What are the best static site generators?” Gatsby JS is ranked 9th while Ghost is ranked 19th.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Open source
Anyone can view code of Ghost since it's under a libre/open source license.
Pro Extremely simple
It only does a few things and it does them well. Unlike WordPress, with which you can build a universe, a blog or anything in between, Ghost is simple.
Pro Markdown support
Markdown is a plain text formatting syntax designed so that it can be human-readable and easily converted to HTML. Markdown allows HTML code for complete flexibility.
Pro Custom domain support
Setting up a custom domain is effortless - fill the in the form and change DNS entries. Done.
Pro Self-host & paid Ghost(Pro)-host options
You can download the source code and set it up yourself (just make sure your hosting provider supports node.js). Alternatively, you can use their Ghost(Pro) service to let them host it for you. Paid plans start at $10/mo.
Pro Official Docker image
Very easy setup with an official image from Docker. Just needs a custom config.json and you are pretty much good to go.
Pro Theme marketplace
A built-in way to get and set up themes.
Pro Real-time preview
You can see markdown on one side of the pane and the result on the other, while writing.
Pro Customizable
Themes may be uploaded, as can logos and covers.
Pro Free hosting on Github Pages via Buster
You can host your Ghost blog for free on Github Pages if you are OK with it being turned into a static site. You can use Buster to generate a static site from Ghost that can then be hosted on Github Pages.
Pro Affordable hosting available
There are lots of affordable hosting plans available for Ghost blogs.
Pro No page reload when navigating
Pro Based on React.js
Editing markup is phenomenally easy when you have components.
Pro Live reload
Every change you make can be almost immediately seen in a browser.
Pro A lot of plugins
Gatsby offers a lot of plugins to integrate tools like SASS, typescript, styled components, etc.
Pro Very active development
Gatsby is very actively developed and the maintainers are very helpful.
Pro Built-in code and data splitting
Pro Open Source
Pro Take content from any source
Gatsby can generate the pages with content from any sources like Drupal, Wordpress, Contentful, etc. If the source plugin is not coded for your solution, you can create it.
Pro A static site and a React app in one
The static pages are generated by Server Site Rendering of the React app. So you have all benefits of a static site, and all benefits of a React app, which is very powerful.
Pro GraphQL Data Layer
Pro A lot of examples
Gatsby have a lot of examples sites in his github repository.
Pro Beautiful out-of-the-box blog starters
Cons
Con Commenting must be added
One needs to edit their post.hbs file and add some code from Disqus in order for commenting to be available.
Con Expensive
Too expensive for what you actually get. There are other solutions that have more or less the same features at a lower cost.
Con Poor multilingual support
Its editor does not properly support Asian characters such as Chinese, Japanese and Korean due to a bug in IME. It is difficult to write properly in Asian letters.
Con Finding Ghost host sites can be difficult
If wanting to host elsewhere, some of the other ghost hosting sites are hard to find, and once found they vary in features and functions. There isn't a single standard of service across the board.
Con Self-hosted might be hard to setup
Requires NodeJS and NPM which both come with a lot of dependencies. Also requires editting configuration files manually.
Con Inappropriate terminology in the UI
Despite some community support of having it removed, Ghost still prominently uses the following phrase in the UI: "Display a sexy logo for your publication." This terminology can be considered exclusionary and even inappropriate in a professional environment.
Con A bit raw
You'll maybe have to tweak some JSX if you want something that's not covered by available themes.