Head-to-headUse case: newsletter automationUpdated 2026-10-19

Mailchimp vs Brevo: Newsletter Automation Architecture

Mailchimp charges by contact volume and caps concurrency at 10 simultaneous HTTP requests, whereas Brevo bills solely on sent email volume with a 1,000 req/s transactional API limit. For automated newsletter workflows, engineering teams must weigh Mailchimp's polished campaign builder and e-commerce webhooks against Brevo's predictable pay-per-send scaling and unified SMS/WhatsApp endpoints.

Explore: Email Marketing

Comparison matrix

FeatureMailchimpBrevoEdge
Pricing ModelTiered by contact list size (from $13/mo for 500 contacts)Tiered by monthly email send volume with unlimited contacts (from $9/mo)Brevo
API Rate Limits10 concurrent connections per API key1,000 requests/minute for marketing, up to 1,000 req/s for transactional endpointsBrevo
Authentication MethodHTTP Basic Auth using an API key suffixing the data center (usX)HTTP Header 'api-key' with standard v3 REST endpointsBrevo
Template Engine & EditorProprietary block editor with extensive custom HTML and Liquid-like merge tagsDrag-and-drop builder with Django-style variable templatingMailchimp
E-commerce & CRM Integrations300+ native integrations (Shopify, WooCommerce, Stripe, Salesforce)150+ native integrations with built-in sales CRM pipelinesMailchimp
Multi-Channel CapabilitiesEmail, paid social ads, post-cards, basic SMS (add-on)Email, SMS, WhatsApp Business API, transactional push webhooksBrevo
Self-Hosting OptionSaaS only (No self-hosted or dedicated infrastructure)SaaS only (Enterprise dedicated IP setups available)Tie
Free Tier Allowance500 contacts and 1,000 sends/month (daily limit of 500)Unlimited contacts and 300 emails/day with Brevo watermarkBrevo
Start freeTry Mailchimp โ†’Try Brevo โ†’

ROI metrics

Hours saved / mo

18

Mailchimp / mo

$350

Brevo / mo

$65

Break-even

3.2 wks

Annual savings

$3,420

Brevo delivers an 81% recurring cost reduction for a list of 50,000 contacts sending weekly newsletters, paying for migration development within 4 weeks.

Step-by-step setup guide

  1. 1.Provision API Credentials

    Extract your API key and determine your data center prefix from Mailchimp (e.g., us19), or generate a standard v3 API key from Brevo's SMTP & API console.

    export MAILCHIMP_API_KEY="your_key-us19"
    export BREVO_API_KEY="xkeysib-your_brevo_key"
  2. 2.Create Contact List via REST Endpoint

    Initialize your newsletter list or audience folder to route subscriber events programmatically.

    curl --request POST \
      --url 'https://api.brevo.com/v3/contacts/lists' \
      --header 'accept: application/json' \
      --header 'api-key: '$BREVO_API_KEY \
      --header 'content-type: application/json' \
      --data '{"name":"Weekly Tech Newsletter","folderId":1}'
  3. 3.Register Inbound Subscriber Endpoint

    Post contact details using MD5-hashed emails for idempotent updates in Mailchimp, or direct upserts in Brevo.

    curl --request POST \
      --url 'https://us19.api.mailchimp.com/3.0/lists/{list_id}/members' \
      --user 'anystring:'$MAILCHIMP_API_KEY \
      --header 'content-type: application/json' \
      --data '{"email_address":"dev@example.com","status":"subscribed","merge_fields":{"FNAME":"Alex"}}'
  4. 4.Configure Webhook Listeners

    Set up a destination URL in your backend application to handle incoming subscription and unsubscription payloads.

    curl --request POST \
      --url 'https://us19.api.mailchimp.com/3.0/lists/{list_id}/webhooks' \
      --user 'anystring:'$MAILCHIMP_API_KEY \
      --header 'content-type: application/json' \
      --data '{"url":"https://api.yourdomain.com/webhooks/mailchimp","events":{"subscribe":true,"unsubscribe":true},"sources":{"user":true,"admin":true,"api":true}}'
  5. 5.Trigger Automated Campaign Dispatch

    Initiate automated newsletter distribution by calling transactional batch triggers or audience segment sends.

Webhook payload example

POST https://api.yourdomain.com/webhooks/newsletter-signup ยท event: subscribe

{
  "type": "subscribe",
  "fired_at": "2023-10-24 14:32:10",
  "data": {
    "id": "8a2b3c4d5e",
    "list_id": "a1b2c3d4e5",
    "email": "subscriber@domain.com",
    "email_type": "html",
    "status": "subscribed",
    "ip_opt": "198.51.100.42",
    "ip_signup": "198.51.100.42",
    "merges": {
      "EMAIL": "subscriber@domain.com",
      "FNAME": "Jordan",
      "LNAME": "Lee",
      "INTERESTS": "Engineering,DevOps"
    }
  }
}

Mailchimp: pros & cons

  • โœ… Superior drag-and-drop template designer with dynamic content blocks
  • โœ… Over 300 turnkey integrations across CMS and e-commerce platforms
  • โœ… Granular predictive demographic analytics and send-time optimization
  • โš ๏ธ Unsubscribed and duplicate contacts count toward billing tiers
  • โš ๏ธ Strict 10 concurrent HTTP connection throttle triggers 429 Too Many Requests under burst traffic

Brevo: pros & cons

  • โœ… Zero cost penalty for growing contact lists due to send-volume billing
  • โœ… Native multi-channel delivery including SMS, WhatsApp, and transactional SMTP
  • โœ… High throughput limits allowing up to 1,000 req/s on transactional pipelines
  • โš ๏ธ Template builder offers fewer responsive design presets than Mailchimp
  • โš ๏ธ Free tier enforces a mandatory 300 email/day dispatch limit

FAQ

How do Mailchimp and Brevo rate limits affect high-throughput signup forms?

Mailchimp enforces a global concurrency ceiling of 10 simultaneous requests per account; concurrent spikes must be buffered via a message queue (e.g., Redis or SQS) to avoid HTTP 429 errors. Brevo handles up to 1,000 requests per minute on standard v3 endpoints and up to 1,000 req/s on dedicated transactional endpoints.

Does unsubscribed user retention cost money in both systems?

No. Mailchimp counts every stored contact (subscribed, unsubscribed, and non-subscribed) toward your monthly billing threshold unless explicitly archived or deleted. Brevo stores unlimited contacts without charge, billing only for outbound sends.

Can I manage transactional alerts and weekly marketing newsletters from the same account?

Yes in Brevo, which natively unifies transactional SMTP, marketing campaigns, and SMS under one dashboard and billing model. Mailchimp requires a separate paid add-on, Mailchimp Transactional (formerly Mandrill), with distinct billing blocks and configuration.

How are dynamic personalization tags handled in HTML email templates?

Mailchimp uses proprietary merge tags wrapped in asterisks and pipes (e.g., *|FNAME|*), supported by conditional statements. Brevo uses double curly braces conforming to Django/Twig syntax (e.g., {{ params.FNAME }}), which simplifies testing with JSON payloads directly in the template editor.

Related integrations & comparisons