Mailchimp
Connect Mailchimp to CoEditor CRM, sync audiences, tags, and interest groups, and automate membership when system events fire (including events from connected services such as Stripe and Piano).
Mailchimp is an email marketing platform where you manage audiences, send campaigns, and segment contacts. CoEditor uses the Mailchimp Marketing API to push CRM data into Mailchimp when system events fire in CoEditor (including events from connected services such as Stripe and Piano).
This guide walks through setup in order: connect Mailchimp, sync your catalog, activate the audiences/tags/groups you need, then create automation rules.
Path: /publications/{publicationId}/settings/mailchimp · You need admin access to the publication.
Step 1 — Open Mailchimp settings
- Open your publication in the CRM.
- In the left sidebar, click Settings.
- In the settings navigation, select Mailchimp.

Step 2 — Connect and verify credentials
On the Connection Setup card at the top of the page:
- Enter your API Key — from Mailchimp (Account → Extras → API keys). See Authenticate with an API key.
- Enter your Server Prefix — the data-center part of your key (for example
us14,us19). Mailchimp appends this askey-dc; CoEditor needs thedcpart only. - Click Verify Credentials — CoEditor checks it can reach Mailchimp.
- Click Save Configuration.
- Turn on Enable Integration when you are ready to sync and automate.

Step 3 — Sync your audience catalog
Once credentials are saved and the integration is enabled:
- Open the Audience Catalog tab.
- Click Sync from Mailchimp.
CoEditor pulls your Mailchimp audiences, tags, and interest groups into the CRM. Run sync again whenever you add or change items in Mailchimp.

Step 4 — Activate audiences
In the Audience Catalog table, turn on Active for each audience you want to use in rules or customer management. Inactive audiences are hidden from the rule editor.
- Find the audience in the catalog list.
- Toggle Active on.
- Repeat for every audience your automations will touch.
Only active audiences (and their active tags/groups) appear when you build rules.

Step 5 — Activate tags and interest groups
For each audience you activated, open its detail page and switch on the tags and interest groups CoEditor should use.
- In the catalog, click the audience row to open its detail page.
- Open the Tags tab — toggle Active for each tag you want in rules or customer management.
- Open the Interest Groups tab — toggle Active for each group. Optionally enable My Account View (MAV) on groups subscribers should control themselves.
Inactive tags and groups are not offered in the rule editor.

Step 6 — Open Automations
When your catalog is synced and the items you need are active:
- Return to Settings → Mailchimp.
- Open the Automations tab.
- Click + New automation to create a rule (or edit an existing one from the list).

Step 7 — Create an automation rule
The rule editor has four steps. Work through them top to bottom.
7a. Rule details
- Give the rule a clear name.
- Leave Active off while testing; turn it on when you are ready.
7b. Choose the trigger
- Select Platform — Stripe or Piano.
- For Stripe, optionally pick a Stripe account (when your publication has more than one).
- Select the event that should fire this rule (for example
customer.createdorcustomer.subscription.updated).
Events only appear if Stripe or Piano is connected and sending webhooks into CoEditor. See Webhooks if the list is empty.

7c. General actions — what always happens (Step 3)
General actions run on every matching event, no matter what is in the payload.
- Under What should always happen?, click Add steps for an audience.
- Pick an audience, then add steps — for example Add to the audience, Add to a tag, or Add to an interest group.
- Add as many steps as you need in one rule.
| Target | Operations | Use for |
|---|---|---|
| Audience | Add to, Remove from, Archive | Subscribe, unsubscribe, or archive on a list |
| Tag | Add to, Remove from | Status labels such as active, churned |
| Interest group | Add to, Remove from | Subscriber-facing preferences |

7d. Extra rules — conditional actions (Step 4, optional)
Use extra rules when the same event should do different things depending on payload data (for example subscription status or price ID).
For each extra rule:
- Click Add extra rule.
- Pick one or more fields from the event (payload picker or viewer). Use Add condition when a rule should match multiple values at once (for example status and payment type).
- Enter the value to match for each condition — the rule runs only when every condition equals your value.
- Add the Mailchimp steps that should run when it matches.
General actions from Step 3 still run; extra rules add outcomes on top when their condition matches.

7e. Save and review
Save the rule. It appears in the Automations list where you can enable, disable, or edit it.

Reference — Mailchimp concepts
| Mailchimp (app) | Marketing API | CoEditor CRM | Purpose |
|---|---|---|---|
| Audience | lists | Audience | Your mailing list — where contacts live |
| Tags | member tags | Tags | Internal labels (for example join-2025, active) |
| Groups | interests | Interest groups | Contact-facing preferences subscribers opt into |
Reference — What the integration does
After Mailchimp is connected, CoEditor can:
- Add or remove a contact from an audience (or archive them)
- Add or remove tags on an audience member
- Add or remove interest groups for a contact
You can also manage a single customer from the CRM customer profile (Manage Mailchimp), and let subscribers toggle MAV-enabled interest groups from My Account.
Rules are driven by system events — for example customer.created, customer.subscription.created, or customer.subscription.updated after Stripe or Piano sends webhooks into the CRM.
Example workflows
Customer created → audience + tag
When customer.created fires, a rule can add the contact to your main audience and tag them join-2026.
Subscription updated → status tags
When customer.subscription.updated fires, general actions can swap tags such as active, past_due, or canceled without changing audience membership.
Subscription created → tag by price (extra rule)
When customer.subscription.created fires, general actions might add everyone to an audience; an extra rule can add premium-monthly only when the price ID in the payload equals price_abc123.
Common trigger events
| Platform | Event | Common use |
|---|---|---|
| Stripe | customer.created | Welcome new contacts to an audience |
| Stripe | customer.subscription.created | Tag by plan or add to a segment |
| Stripe | customer.subscription.updated | Refresh status tags |
| Stripe | customer.subscription.deleted | Remove active tags; archive or tag as churned |
| Piano | subscription.create | Mirror access changes into Mailchimp |
| Piano | subscription.update | Update tags or groups when access changes |
| Piano | subscription.cancel | Remove or archive on cancel |
Tips when building rule steps
- Pick the audience before choosing a tag or interest group.
- You cannot repeat the same audience + tag + operation twice in one rule.
- Archive is only for audience steps.
- Audiences, tags, and groups must be active in the catalog before they appear in the editor.
- For Stripe amount fields in extra rules, use the smallest currency unit (for example cents).
Before you go live
- Run Sync from Mailchimp after changes in Mailchimp
- Confirm every audience, tag, and group used in rules is active in the catalog
- Test with general actions on a test audience before adding extra rules on production lists
- Connect Stripe and Piano so events reach your rules (webhook setup)
Related documentation
Screenshots: Drop PNG/JPEG captures in apps/docs/public/images/integrations/mailchimp/ (same basename, .webp in MDX), then run pnpm --filter @coeditor/docs images:webp.