Ghost Mailchimp Integration: Four Ways That Work

Ghost has no built-in Mailchimp integration, but four routes work: an embedded signup form, Zapier sync, RSS-to-email, and a CSV import we tested ourselves.

Luxe Themes Updated 11 min read

Quick answer: Ghost has no built-in Mailchimp connection. Four things work. You can put a Mailchimp signup form on your Ghost site, keep the two lists in sync with Zapier, or let Mailchimp email your Ghost posts through its RSS feature. Or you can move your Mailchimp audience into Ghost from a CSV file. Most publishers who ask this question end up needing only the last one, because Ghost sends newsletters on its own.

You publish on Ghost, or you are about to, and your email list lives in Mailchimp. The two tools don’t know about each other. The question is how to make them cooperate, or whether to stop running both.

This guide explains what each option does, how to set it up, and what you give up with it. It ends with what we’d choose in the common situations. We checked the Mailchimp and Ghost documentation for each option in September 2026, and we ran the import on one of our own sites.

What a Mailchimp integration usually means

Nobody wants an integration for its own sake. People who ask about Ghost and Mailchimp usually want one of four things:

  1. A Mailchimp signup form on a Ghost site. Readers subscribe, and the address lands in Mailchimp. That is option 1.
  2. Ghost members and the Mailchimp audience kept in sync. Someone joins on one side and appears on the other. That is option 2.
  3. Mailchimp keeps sending, Ghost does the publishing. New posts go out as Mailchimp campaigns. That is option 3.
  4. Leaving Mailchimp. The list moves into Ghost and Mailchimp is switched off. That is option 4.

Ghost’s own integrations directory describes the same four routes. There is no hidden fifth one.

Decide first whether you need Mailchimp at all

Ghost is a publishing platform with email built in. When you publish a post, you choose whether it goes to the web, to subscribers’ inboxes, or both, in the same step. You can run several newsletters from one site, and send to a segment: free members, paid members, a tier, or a label. Paid memberships run through Stripe, and Ghost takes no cut of what your readers pay. On Ghost(Pro), email sending is included with no send limit. On a self-hosted site you connect a sending service first, which our guide to Ghost newsletters without Mailgun covers.

Mailchimp is priced by the size of your audience, and unsubscribed contacts count toward that size. We checked Mailchimp’s help pages on this in September 2026.

So if the reason you keep Mailchimp is “it sends my posts to my list”, Ghost already does that. Option 4 is the whole project, and one monthly bill goes away. The Ghost newsletter guide covers the setup.

Mailchimp still earns its place in some situations. Its automations can send a sequence of emails based on what someone clicked or bought, and Ghost has only welcome emails and simple sequences for new members. Its e-commerce features connect to a store. And if a team already lives in Mailchimp, moving them mid-campaign is a cost in itself. In those cases, run both, and pick from the options below.

Option 1: A Mailchimp signup form on your Ghost site

This is the least invasive connection. Mailchimp gives you a block of HTML. You place it on your Ghost site, and when a reader fills it in, the form sends their address straight to Mailchimp. Ghost never sees the signup.

In Mailchimp, the form builder lives under Forms, then Other forms. Create a new form, choose Create embedded form, name it, pick the audience, and continue to the builder. When you are happy with the fields, continue and copy the code.

In Ghost, there are two places to put it:

  • On one page or post. In the editor, type /html to add an HTML card, and paste the code into it.
  • On every page. Go to Settings → Code injection and paste the code into Site footer. Our code injection guide explains what else that box can do.

The trade-off is that these subscribers exist only in Mailchimp. They are not Ghost members, so they cannot read member-only posts or buy a paid tier until you import them later. And your site will still show Ghost’s own signup, because the theme and Portal, Ghost’s signup and account window, both point at Ghost’s member list. If Mailchimp is to be the only list, hide the floating Portal button and remove the theme’s signup forms.

This option is right when Mailchimp must remain the list of record and you are not selling memberships. It is wrong for anything that involves paying readers.

Option 2: Keep Ghost and Mailchimp in sync with Zapier

Zapier is a service that watches for an event in one app and performs an action in another. Ghost ships with a Zapier integration, under Settings → Integrations in Ghost admin.

Ghost admin Integrations settings on a Luxe Themes demo site, Built-in tab, listing Zapier with a Configure link above Slack, Unsplash and FirstPromoter

Zapier’s Ghost app can react when a member is created, updated or deleted, and it can create or update a member. Its Mailchimp app can react to a new subscriber or a new unsubscriber, and it can add, update or unsubscribe a contact. Three combinations cover most needs:

When this happensZapier does this
A member joins in GhostAdds them to your Mailchimp audience
Someone subscribes in MailchimpCreates a member in Ghost
Someone unsubscribes in MailchimpUpdates the member in Ghost so they stop receiving newsletters

To set it up, open the Zapier integration in Ghost admin and click Configure. Ghost shows an API key and a URL that Zapier’s Ghost app asks for when you connect it. Treat that key like a password. Then, in Zapier, choose the trigger app, connect the action app, map the email and name fields, and test with one contact before turning it on.

Three limits are worth knowing before you rely on it:

  • Each connection runs one way. Two-way sync means at least two connections, and unsubscribes need their own.
  • Ghost’s “member updated” event covers any change to a member, not only newsletter changes. If you use it to mirror unsubscribes, add a filter step in Zapier so only newsletter changes go through.
  • Zapier only sees new events. Contacts who existed before you connected it are not copied. Do a one-time import first, as in option 4, and let Zapier keep things current from then on.

Zapier’s free plan covers a small number of tasks a month. A site with steady signups will need a paid plan, so the sync has its own running cost.

This option is right while you genuinely run both tools, for example during a transition where Mailchimp’s automations are still doing work. Once the transition ends, switch it off.

Option 3: Let Mailchimp email your Ghost posts

Every Ghost site publishes an RSS feed, a machine-readable list of your latest posts, at your site address followed by /rss/. Mailchimp can watch that feed and send new posts to your audience on a schedule. Ghost does the publishing; Mailchimp does the sending.

In Mailchimp, the feature is an automation. Go to Automations, open the flow templates, and choose Share blog updates via RSS. Give it your feed address and pick a rhythm: daily, weekly on a chosen day, or monthly. Mailchimp only sends when there is something new in the feed, and it sends at most once a day. A post needs to be live for about three hours before the scheduled send to be included.

Ghost’s feed contains what a logged-out visitor could read, so member-only posts appear only up to the point where the paywall begins. Readers who want the rest come to the site, which is the point of a paywall.

The trade-off is design and data. The email uses Mailchimp’s template, not the look of your post, and your open and click numbers live in Mailchimp rather than in Ghost’s dashboard. Your readers also stay Mailchimp contacts, with everything option 1 said about that.

This option is right when Mailchimp stays your sender and you only moved the website to Ghost. It is a reasonable long-term setup for a free newsletter, and a poor one for a paid publication.

Option 4: Move your Mailchimp audience into Ghost

If you are consolidating on Ghost, move the list once and be done. The whole job is one export, a little tidying, and one import. We did it on one of our own sites while writing this.

Start with consent. Ghost expects a list of people who agreed to hear from you. Mailchimp separates contacts into subscribed, unsubscribed, non-subscribed and cleaned. Only the subscribed ones come across. Importing the others means emailing people who asked you not to, which harms your sending reputation and, in most countries, breaks the law.

Export from Mailchimp. Open Audience, choose the audience if you have more than one, and click Export audience, then Export CSV. Mailchimp emails you when the file is ready. The download is a ZIP with a separate CSV for each contact type, which makes the consent step easy: use the file of subscribed contacts and ignore the rest. The export includes names, tags and notes. It does not include opens or clicks, so that history stays behind.

Import into Ghost. In Ghost admin, open Members, click the settings icon at the top right, and choose Import members. If your member list is still empty, the same option appears as Import with CSV on the page itself. Select the file. Ghost reads the column names and asks what to do with each one.

Ghost admin Import members dialog on a Luxe Themes demo site, mapping a Mailchimp export: Email Address to Email, First Name to Name, Last Name not imported, a note that matching email addresses update existing members, a mailchimp-import label, and an Import 2 members button

Mailchimp’s Email Address column maps to Email and First Name to Name. Ghost has a single name field, so if you want full names, combine the two Mailchimp columns in a spreadsheet before importing. Mailchimp’s tags column can be mapped to Labels; check a few members afterwards to confirm they came through as you expect. Under Label these members, type a name such as mailchimp-import to mark the whole batch. Ghost also attaches its own dated label to every import, so you can find the batch later even if you skip this step.

Then import. In our test, two contacts appeared in the member list within a few seconds, with the label attached. If an address already exists as a member, Ghost updates that member rather than creating a duplicate. The import dialog says so itself, and it means you can safely run the import twice.

One setting matters for what happens next. Ghost’s import documentation explains that imported members are subscribed to any newsletter that has “subscribe new members on signup” turned on, unless your file says otherwise. If you would rather import quietly and invite people later, either turn that setting off first or add a column to the file:

email,name,subscribed_to_emails
reader@example.com,Ada,false

Paid subscriptions do not travel, because Mailchimp does not run them. If you charged readers elsewhere, set up your tiers in Ghost with the Stripe connection and invite people to upgrade from their new account.

This option is wrong if you plan to keep both tools running for a long time. Two lists that were equal on import day drift apart from the next signup on. Do the import once you have decided to leave Mailchimp, and use option 2 in the meantime.

After the import, send a first post from Ghost that says what changed and why. A few people will unsubscribe, as they do after any move. The rest are now on a list you fully own. For the broader decision of whether to leave Mailchimp, the Mailchimp alternative guide weighs the trade-offs.

Which option we’d choose

Your situationWhat we’d do
You want your posts emailed to readersGhost’s own newsletters, and no Mailchimp at all
Mailchimp must stay the list of record, no paid tiersOption 1, the embedded form, or option 3 if Mailchimp should also send
You run both tools for nowOption 4 once, then option 2 to keep them level
You are leaving MailchimpOption 4

The pattern we see is that publishers start by wiring the two together, then notice that Ghost’s newsletters already cover what they needed. They end up with one list, in Ghost, and switch the sync off. If you can skip the wiring stage, do.

Where this leaves you

You now know which of the four routes fits, and what each one costs you in control or data. If you chose to consolidate, the Ghost newsletter guide walks through the sending setup, and the Portal guide covers the signup window your new members will use. If you are weighing the two tools more broadly, the Ghost vs Mailchimp comparison goes feature by feature.

Frequently Asked Questions

Does Ghost integrate with Mailchimp?
Not directly. Ghost has no built-in Mailchimp connection because it sends newsletters itself. Four routes work: embed a Mailchimp signup form in a post or in code injection, keep the two lists in sync with Zapier, let Mailchimp email your posts from Ghost's RSS feed, or import your Mailchimp audience into Ghost from a CSV file.
How do I add a Mailchimp signup form to Ghost?
In Mailchimp, go to Forms, then Other forms, create an embedded form and copy its code. In Ghost, paste the code into an HTML card on a page, or into Settings, Code injection, Site footer to show it everywhere. Signups go to Mailchimp only; they do not become Ghost members.
Can I import my Mailchimp subscribers into Ghost?
Yes. Export your audience from Mailchimp as a CSV, keep only the subscribed contacts, then open Members in Ghost admin and choose Import members. Ghost reads the columns, lets you map email and name, and can label the batch. We tested this on one of our own sites and two contacts imported in a few seconds.
Do I still need Mailchimp if I use Ghost?
Usually not for newsletters. Ghost sends a post to subscribers as part of publishing, supports several newsletters and audience segments, and runs paid memberships through Stripe. Mailchimp still earns its place if you rely on its behaviour-based automations or its e-commerce features.

Keep reading