EmailOctopus + Ghost

How to use Ghost and EmailOctopus together

Integrate Ghost with EmailOctopus to send campaigns to your members, and keep your email subscribers in sync

Whether you’re using EmailOctopus to send one-off email campaigns to your readers, or running fully automated email marketing funnels - ensure your Ghost publication is fully integrated and your subscribers are in sync.

Here are some of the most popular ways to use Ghost and EmailOctopus together.

Import a CSV

When using the members feature in Ghost, you might want to import an existing list of subscribers from EmailOctopus to kick off your membership website with an existing audience. This is entirely possible using CSV exports and imports.

In your EmailOctopus account, navigate to the list of emails you’d like to import to Ghost members. Once you’re done, click Export.

In Ghost, you can import a CSV file from the member dashboard. The only required field is email. However, if you have additional information it’s recommended to add it now using the optional headings available. Read more about formatting your CSV file here.

Once your CSV adheres to Ghost’s import format, login to your site’s admin and click the settings icon in the members dashboard to import your file:

That’s it. All of your email subscribers have been imported as members of your Ghost site. You can now let your EmailOctopus subscribers know that they can head to your website and enter their email address to access members-only content, or upgrade to a paid plan.

Sync Ghost members to EmailOctopus

If you’re running a membership publication with Ghost, it’s possible to link this with your EmailOctopus account using Zapier to ensure everything stays in sync.

Here’s some of the most common automations:

  • Automatically import new members in Ghost in EmailOctopus
  • Unsubscribe deleted Ghost members from an EmailOctopus list
  • Send your Ghost members automated campaigns from such as a welcome or onboarding series

This saves tons of time manually updating lists or sending individual campaigns!

Once your integration has been setup it’ll run in the background so you don’t have to worry about it again!


Embed custom subscription forms

If you prefer to use EmailOctopus subscriber forms directly - you can do that too. It’s as easy as creating a form in EmailOctopus, and pasting the code provided on your site.

First you’ll need to navigate to the correct list in your EmailOctopus account and create a new form, using the Embedded option:

Use the EmailOctopus settings to build your form to suit your needs:

Then grab the embed code:


Add the form to a single post

If you just want to add the signup form to one particular post or page on your site - you can add a new HTML block within the Ghost editor and paste the HTML embed code there. Hit publish. And you’re all set.


Add the form to multiple pages of your site

If you’d like to add a newsletter signup form to multiple pages of your site, then you’ll need to add the embed code to your Ghost theme.

Locate the template file where you want to insert the signup form; usually post.hbs - right after the content. In Casper, Ghost’s default theme, you’ll see a line of code specifically reserved for inserting comments. This also makes a great place for dropping in a newsletter signup form, so you can paste the code here, too.

Make sure you remove the comments on line 65 and 69

Make sure you remove the comments on line 65 and 69

After editing you’ll need to save the file, upload a fresh copy of your theme, and (if you’re self-hosting) restart Ghost. The form should then be visible on every post!


Next steps

That’s it! You’ve discovered all of the most popular ways to connect your Ghost publication with EmailOctopus. These powerful integrations will help you to keep everything in sync across tools, as well as provide a better experience for your readers and members!

It’s possible to connect EmailOctopus to many more of your favourite tools and align all of your processes using Zapier. There’s lots of popular templates ready to use, or you can create your own: