Importing Members Into Ghost: Verify the List Before Your First Newsletter
To import members into Ghost cleanly, export the list from wherever it lives, remove unsubscribes, bounces and anyone without consent, verify the addresses, and import only the valid rows through Members, then Import members. Invalid addresses can go in with subscribed_to_emails set to false if you want them on record. Ghost disables email for members whose newsletters keep failing, but each failure is a bounce on your sending reputation first.
Facts below are from Ghost's help pages and spam policy, read on 2 November 2026. For Ghost(Pro) pricing by member count and a cost calculator, see the Ghost newsletter page.
What Ghost says about lists and failures
| Topic | What Ghost says | Source |
|---|---|---|
| Purchased lists | "Purchased lists may not be used with the Services"; harvested or scraped addresses also banned | Ghost spam policy |
| Enforcement | "Your account will be immediately terminated if we determine in our sole discretion that you send spam." | Same page |
| Monitoring | Ghost watches "any large increases in sending emails" | Same page |
| Failing members | "If newsletters sent to a member consistently fail, or are marked as spam, then emails for that account will be disabled." | Disabled emails |
| Bounce threshold | Not published | — |
"Large increases in sending" describes almost every first newsletter after an import: a site that sent to 300 members last week sends to 8,000 this week. That send is when a clean list matters most.
Ghost(Pro) and most self-hosted Ghost sites send bulk email through Mailgun, which keeps its own bounce list and says it has thresholds without publishing them. The Ghost newsletter page has the details.
Step 1: Export your members
Filtered export. In Members, apply a filter (for example Subscribed, or a label), then open the … menu at the top right and choose export (member management). The same menu can apply or remove labels and unsubscribe the selected members.
Full export. Go to Settings, then Advanced, then Import/Export, open the Export tab and choose All data. The Members CSV inside the zip has "all members with their labels and subscription status". On Ghost(Pro) the link is emailed and "valid for 7 days"; self-hosted sites download in the browser (exports).
Moving from another platform. Export there, as subscribed, unsubscribed and bounced files separately. See our guides for Substack, Mailchimp and beehiiv. If you are moving from Substack, clean your Substack list covers that export.
Step 2: Find members Ghost has already switched off
Use the Email disabled filter in Members. It covers addresses "disabled by Ghost because they are unreachable" or marked as spam. Leave them out of the check and the import. A member who looks active on the site may be silently excluded from sends, so this filter often explains a newsletter count that seems low.
Step 3: Clean the file
- Unsubscribed members stay out of the subscribed import.
- Anyone without consent: a customer list from your shop, contacts from a conference, a list a partner shared.
- Duplicates, with remove duplicate emails.
- Signup spam. Free newsletters attract bot signups with random Gmail addresses. Clean a list after spam signups shows what to look for.
Step 4: Verify
Upload the file on the verify page. Each address gets a live mailbox check, and your columns (name, labels, created_at) stay attached. Try a sample with the CSV email verifier first if you like.
| Result | How to import into Ghost |
|---|---|
| Valid | subscribed_to_emails = true, label verified |
| Catch-all | subscribed_to_emails = true, label catch-all |
| Unknown | Hold; re-check before import |
| Invalid | Leave out, or subscribed_to_emails = false to keep the record |
| Disposable | Leave out |
Newsletter lists are mostly personal addresses at Gmail, Outlook, Yahoo and iCloud, which give clear yes or no answers, so the catch-all group is usually small. Best email verifier for newsletter creators goes into newsletter-specific choices.
Step 5: Build the import file
From Ghost's import members guide:
email,name,subscribed_to_emails,labels,created_at
jane@example.com,Jane Doe,true,"verified, imported-2026-11",2025-03-14T10:00:00Z
emailis required; everything else is optional.labelsholds several labels in one quoted cell:"label 1, label 2".subscribed_to_emailsset tofalseunsubscribes the member from all newsletters, whether the member is new or existing.created_atin ISO 8601 keeps the original signup date.stripe_customer_idlinks paid members; leave it out for free lists.
The CSV import formatter renames columns from another platform's export to these names.
Step 6: Import
- Go to Members and click the Settings icon at the top right.
- Choose Import members and upload the file.
- Match your CSV columns to Ghost's fields and review the import before running it (new member importer).
- Click Import members.
Import valid and catch-all rows as separate files so each carries its own label.
Ghost's help pages do not give a file size or row limit for member imports. For a very large list, import in a few batches.
Step 7: Send in stages
- Send the first newsletter to members labelled
verifiedwho signed up most recently, using a filtered segment or a dedicated newsletter. - Check the email analytics for bounces and the Email disabled filter for new entries.
- Then send to all verified members, and to
catch-allonce the first sends look normal.
If imported members have not heard from you in months, send a short "you signed up for this" email first. It cuts complaints, and complaints are what Ghost's spam policy is written against.
Checklist
- Email disabled members left out
- Unsubscribed and non-consented contacts removed
- Duplicates and bot signups removed
- Every address verified
- Valid and catch-all imported with separate labels
- First newsletter to a small, recent, verified segment
Verify before you import
Upload your member export on the verify page. You get 100 free email checks when you sign in with Google, no card, enough to see how a sample of the list holds up. For bigger lists, monthly plans are on the pricing page.
Common questions
What columns does a Ghost member import need?
Only email is required. Ghost also accepts name, note, subscribed_to_emails, stripe_customer_id, complimentary_plan, labels and created_at. Labels go in one cell as a quoted, comma-separated list, and created_at uses ISO 8601 dates.
How do I export members from Ghost?
In the Members area, filter if you want a subset, then open the three-dot menu at the top right and choose export. You can also use Settings, then Advanced, then Import/Export, then the Export tab and All data. On Ghost(Pro) the full export arrives as an emailed link valid for 7 days.
Why do some Ghost members not receive newsletters?
Ghost disables email for a member when newsletters to them consistently fail or are marked as spam. Use the Email disabled filter in Members to find them. They can be re-enabled if the member resubscribes, or an admin resubscribes them through Impersonate.
Does Ghost allow imported lists?
Yes, if the people agreed to hear from you. Ghost's spam policy says purchased lists may not be used and harvested or scraped addresses are banned, and that an account found sending spam is terminated immediately. Ghost also monitors large increases in sending.
What bounce rate is too high on Ghost?
Ghost does not publish a figure. Keep bounces under about 2% per send, which is where most email platforms start to worry. Verifying the list before a first send to imported members is the easiest way to stay there.
Check your list before you send
Real mailbox checks over SMTP, and nothing is sent to the address. Sign in with Google and your first 100 email checks are free, no card. Plans for bigger lists are on the pricing page.