Newsletter Crew July 6, 2020

How to build your own Substack with Ghost

Dan Rowden @dr

As you probably know, Substack is an email newsletter platform which allows writers to really easily publish a newsletter to their subscribers and charge for optional "premium" access.

As a tool, it sits between a marketing-focussed email platform like Mailchimp and blogs, because the email and web versions of content are equal citizens on the platform. To make money, Substack charges 10% on all payments from paid subscriptions.

In v3, Ghost has many of the features of Substack, including email newsletters, accounts for members and the ability to charge for subscriptions/membership.

In this post, we will utilise Ghost's memberships and email features to emulate Substack but on your own server, on your own domain and with zero transaction fees.

TL;DR

Here's a quick overview of the steps I will cover in the post:

  • Set up a Ghost blog
  • Use a newsletter-first theme which supports memberships, like Substation
  • Enable members and email newsletters
  • Add paid plans
  • Add community features with a commenting tool like Cove

What is Substack?

The key features of Substack are:

  • send newsletters
  • host an archive of newsletters online
  • let readers subscribe to the emails
  • let readers pay for premium posts
  • let readers comment on posts once logged in
  • show a list of popular posts from the platform

Publications running on Substack each get a hosted version of the newsletter, an online archive and tools for readers to sign up to paid plans.

All of this apart from the platform-wide posts is available in Ghost.

Why build your own version of Substack?

Email newsletters are a great way of reaching people and creating a community around you and your ideas.

Like we've seen with other services like Medium (publishing) and Patreon (memberships), if you start on a platform you're tied to their product decisions, updates and company opinions.

If you create your own version, you can own everything. You change the design, the copy—everything—as you see fit. Importantly, you also have all of your content on your own domain, which Substack currently doesn't offer. (Why is this important?)

You will also avoid Substack's 10% fees for all premium payments. Ghost takes zero fees for premium payments. (You will see the same payment processor fees on both platforms as they are both powered by Stripe.) If you have 100 customers paying $5 a month on Substack, you will earn just $450 after fees; with Ghost you get the full $500. Remember, you will have hosting costs to self-host with Ghost.

Let's see how we can build a self-hosted Substack-like site using Ghost, a newsletter-focussed theme and commenting with (my product) Cove.

Start a Ghost blog

The first step is to create a Ghost blog. There are many ways to do this: Ghost(Pro) (Ghost's own hosting solution), using another managed host provider like Midnight, using an install service like Gloat, or simply downloading and self-hosting yourself (installing the code yourself on a server you own).

Enable Members

Once Ghost is set up, you need to go into Labs in the admin and toggle the Members feature on.

With one click, you have now enabled a way for readers to subscribe to your content and log in to your site (the front-facing site, not the Ghost admin).

Set up email newsletters

In order to send out newsletters, you need to connect your Ghost site to an email sending service. Ghost supports only one at the moment: Mailgun.

If you run your site on Ghost(Pro), this integration happens automatically behind the scenes, so you don't have to do anything. If you self-host or have your site set up for you, you will need to sign up to Mailgun, do some configuration with your domain so you can send emails from it, and paste your API credentials into the Members settings in your Ghost admin (pictured above).

Use a newsletter-friendly theme

A crucial part of emulating a newsletter service like Substack is how your site works and looks.

Most Ghost themes look like blogs and are focussed on showing posts and the web experience. Substack pushes the newsletter to the fore, with web content slightly hidden.

I created a theme called Substation, which prompts subscriptions to your email version of your content. Posts are all available online but at an /archive/ URL.

The theme also supports member-only and paid-only content, just like Substack. And users can easily sign up to your paid plans once they log in (using Ghost's in-built magic link auth system).

Add some paid plans (optional)

You may want to offer premium content to paying members. This is very easy to do in Ghost. You first need a Stripe account (like you do on Substack). You can then simply paste your API credentials into the Members section of the Ghost admin (similarly to the Mailgun integration mentioned above).

You can set a monthly and yearly fee in six different currencies. Currently, different tiers are not available; this is similar to Substack.

Since the launch of Ghost v3, most Ghost themes support showing paid plans and allow members to start paying for content. Substation also does this out of the box.

Add comments/community

Substack has comments for each post. These can be for all members or limited to paying members. You can even create discussion threads, which are posts specifically for discussion in the comments (to mimic this in Ghost, you can just use a normal post).

Using Cove (a product I launched in April), you can create the same commenting features, including the different access levels.

Cove runs on top of Ghost's member features, so you can limit commenting only to members/subscribers. Plus, any logged in subscriber (i.e.: anyone who has clicked on their subscription confirmation link) can leave comments immediately.

Installing Cove involves copying some code into your theme, or simply pasting your account ID if you use a supported theme.

During set up, there are some different ways to show and hide comments based on your user's access level. Ghost has some very useful template tags that make this very easy.

Substation comes with three different comment configurations, which are really easy to switch between.

Done!

And you're finished.

You now have a Substack-like site on your own domain, in a totally customisable site, and with no added fees.

Use this set-up to write independently, own your content, make money from your writing, and be free to change things up whenever you like.

(If you need help installing a site like this, I offer one-off, concierge installs for just $89 through my service Gloat, with everything listed above included: Ghost installation and server setup, memberships, payments and comments.)

This post was originally posted on the Cove blog.

  1. 4

    Great write-up, Dan, and glad to see you're sharing this here on IndieHackers.

    btw, to those reading... I first came across Dan on the Ghost forum a couple of weeks back, before realising he was on IH, too (small world). I immediately got a good vibe from his website - as a fellow indie maker and someone clearly passionate about helping other indies/creatives make money from their work/art.

    After a short video call to ask a couple of questions, I decided to use @dr/his Gloat service to move from Substack -> Ghost. I liked Substack's simplicity + its landing page in particular, which seemed to be serving me well. Looking at Ghost's themes, I was concerned that I'd lose traction w/ getting new subscribers... well, enter Substation - here's what my new Ghost site looks like -> INF club. And here's the Substack version.

    Just what I needed, I'm very happy. Fortunate to have come across Dan, Gloat + Substation at just the right time 😊

    1. 2

      Thanks a lot for the kind write-up @jasraj!

      I'm really glad to have helped you migrate from Substack to Ghost with Gloat

      1. 1

        np! :)

  2. 3

    Nice write up Dan! It's cool to see all these companies and services growing around the Ghost project (I've been a supporter since the Kickstarter).

    Random question (sorry for the tangent) - do you take any SEO hit for cross-posting from the Cove blog?

    1. 3

      Honestly, I have no idea about the SEO hit 😄

      Just trying to help people see the value that Ghost has and help show off different alternatives to the major hosted players in the space.

      1. 1

        funnily enough, I came across this recently, too - someone told me they don't take replica/re-purposed guests posts as it affects SEO. @andreboso / @harrydry might know more about this...

        (my instinct tells me any possible 'hit' has to be weighed against the upside of re-sharing your content somewhere where it'll be helpful + relevant + your core audience hangs out)

        1. 3

          If you can’t use canonical, just link back to the original article and you’ll be fine.

  3. 3

    This is a game-changer. Thanks Dan.

    Writers will have permissionless, custom domain names. And more features without platform risk.

    1. 1

      Thanks @dru_riley!

      Totally agree. I'm banking on Ghost being a major player in this publishing space.

      1. 2

        I have a feeling they will be, Dan. My instinct based on what I've seen/experienced from them & their team so far.

  4. 2

    I have to compliment @dr for this theme. I've enjoyed the beautiful simplicity it's created for https://dailytrainingsession.com and it was crafted in a way to make minor tweaks pretty easy for anyone. Substack is fine but the ghost members feature offers a little more control and far better writing experience.

  5. 2

    Hi Dan! We'd love to get a demo of your features for Gloat and Cove, can we schedule one through DM's here?

    1. 1

      Hi @ki!

      DM me on Twitter and we can sort something out. https://twitter.com/dr

  6. 2

    This is super awesome! Any chance to copy over the points or threads features from Substack?

    1. 1

      Great question!

      Ghost doesn't have points or comments, unfortunately.

      You can however use my tool Cove for comments on Ghost, and I'd be happy to create an import option for Substack threads.

  7. 2

    Hey Dan, thank you for your article!
    Just to be clear, despite not charging any fees for a membership plan, you do not get around the 29€ / month for Ghost Pro, right?

    1. 2

      You can easily get around that Ghost(Pro) fee.

      1. You can use another managed host like Midnight ($15/month for a very similar offering).

      2. Or you can set up a self-hosted Ghost site, which can cost as low as a few dollars.

      I offer a service for setting up self-hosted Ghost sites, so non-developers can take advantage of lower hosting costs. Check out gloat.dev if you're interested to find out more. I'd be happy to help if you head down that route.

      1. 1

        Oh okay now I see. First, I thought that membership and newsletter functionality would only be offered to Ghost Pro users but now I've found the documentation to just implement it in self-hosted themes. Thanks for pointing out! Also, I will definitely check out your services!

  8. 2

    Definitely going to keep this handy as I keep growing on Substack.It's just so simple to start building an audience even if it is limited but I've long been fascinated by Ghost and their mission.

    1. 1

      There's definitely plenty of room in the market for both Substack and Ghost to exist alongside eachother. I've been seeing a trend of Substack being used to get started easily (as you mention) and then migrating off to platforms like Ghost when things start growing and more flexibility is required.

  9. 1

    Hi there. Is there a way for newsletters subscribers to reply to the email?

    1. 1

      You can set a "From address" in Ghost's settings. If you put your own email there, subscribers can easily reply to the newsletters.

      1. 1

        Ah now I feel dumb haha, thanks for pointing out! This is in the theme right? I cannot really change the one on the site.

        1. 1

          There's a setting in your Ghost admin, in the Members part.

          Where's your site hosted?

          1. 1

            Ah then sounds like it's one more Ghost Pro limitations. I don't even know what I was thinking going that route... but well I made contribution to the Ghost project :P

            1. 1

              hey @witsuma - in Ghost Admin, go to Settings, then Labs, and look for the 'From address' field.

  10. 1

    I've seen Cove posted on Reddit in r/ghost and I'm a huge fan of Ghost. I currently have it set up for my ltd company https://blog.michaelbrooks.dev, and for my personal website, I've currently decided to go the Substack route until I gain enough subscribers.

    My reason for this is due to costs and knowing how much work it will take to convert and transfer all of my blog posts from one platform to another (my blog is running on Gridsome with Netlify and Forestry as the backend). However, if I can gain enough of a following to a point where I can monetise then I will probably make the move to Ghost and use your theme and commenting system since it absolutely seems like the best way to go.

    Congrats on creating an awesome theme and commenting system, and I look forward to watching you and seeing what happens in the future with this new generation of blogging.

    1. 3

      chipping in here... FWIW, I'd recommend starting out with Substack before switching to Ghost once you have traction/at least a few paid subscribers. I used Substack for 9 months (Proseful before that), and was running INF club for a year before switching over. I'd still recommend folks start with Substack, and I'd do the same if I was starting a new project (in fact, just this week I registered jasraj.substack.com).

    2. 2

      Thanks for your comments @MichaelBrooks! And for using Cove ❤️

      The thing with all the publishing options we have nowadays is that people have varying needs; Substack works amazingly for one person but lacks features someone else wants. Same with Ghost, Wordpress, etc.

      I'm happy to be able to show an alternative to Substack, but it's definitely not going to be everyone's perfect setup.