In-depth two-product comparison
Loops vs Mailchimp
Loops vs Mailchimp for B2B SaaS: cost at 5k, 10k and 25k contacts over two years, event triggers, transactional email and migration both ways.
Last updated: 2026-10-07
Short answer
For a B2B SaaS whose engineers can send events, Loops is the better pick: it costs $48 a month at 4,788 subscribers, $99 at 9,998 and $198 at 24,339, it sends unlimited email on paid plans, and it includes transactional sending. Mailchimp Standard lists at $100, $135 and $310 for the bands that cover those sizes. The exception is year one: Mailchimp's 12-month half-price offer ($50, $67.50 and $155) undercuts Loops at 10,000 and 25,000 contacts, so a team that expects to leave within a year, or that needs Salesforce import and SMS, can reasonably choose Mailchimp. Over two years, Loops is cheaper at every size we priced.
Loops
Loops: a flat contact record, an events API and workflows that start when your product says something happened.
Mailchimp
Mailchimp: the broader toolbox, with SMS, a long integration list and Salesforce import, at a higher list price.
The two tools answer different questions. Loops asks what your application just did and lets that fact start an email sequence. Mailchimp asks who is in your audience and which tag, group or segment they belong to, and builds campaigns and journeys around that. A B2B SaaS can run on either, but the work lands in different places: in your backend with Loops, in the marketing team's hands with Mailchimp.
Quick comparison
| Decision area | Loops | Mailchimp | What to verify |
|---|---|---|---|
| Pricing unit | Your count of subscribed contacts; opted-out people and one-off transactional recipients are left out of the plan size | Contact bands per plan, plus a monthly send allowance that is a multiple of your contacts | Split your export into subscribed and unsubscribed before you price Loops, since only the subscribed count sets the tier. |
| Free plan | No cap on stored contacts, but campaigns reach only the 1,000 newest, within 4,000 sends per rolling 30 days and a Loops footer | Up to 250 contacts and 500 sends a month, 250 a day, one audience | Multiply your list by the emails you plan to send in a month; Mailchimp Free pauses sending when you pass 500. |
| Price at about 5,000 | $48 a month (slider reads 4,788 subscribers) | Standard $100 a month for the 2,501-5,000 band ($50 for the first 12 months) | Ask Mailchimp whether you qualify for the first-year price, and plan the budget for the full price from month 13. |
| Price at about 10,000 | $99 a month (slider reads 9,998 subscribers) | Standard $135 a month for the 5,001-10,000 band ($67.50 for the first 12 months) | The next Mailchimp band, 10,001-15,000, starts at $230 a month, so a list near 10,000 needs a growth plan. |
| Price at about 25,000 | $198 a month (slider reads 24,339 subscribers) | Standard $310 a month for the 20,001-25,000 band ($155 for the first 12 months) | Loops also shows $249 at 49,989 subscribers; the Mailchimp pricing page needs a live check for that size. |
| Monthly sends | Unlimited sends to subscribers on paid plans | Essentials 10 times contacts, Standard 12 times, Premium 15 times | At 10,000 contacts Standard allows 120,000 sends; count lifecycle emails per person per month to see if you get near it. |
| Product-event triggers | Send an event by API with an email or userId; workflows start on Contact added, Contact updated, Contact added to list or Event received | Automation overview describes triggers from signups, purchases, tags and campaign activity; check the Marketing API reference for event ingestion | Send your three most important events (signup, activation, cancellation) to a trial of each and check that a workflow starts. |
| Transactional email | Included on paid plans at no extra charge; any address can receive it without joining your audience | Mailchimp Transactional (formerly Mandrill) is a separate product with its own API; no price on its feature page | Get a written price for Mailchimp Transactional at your monthly volume before you treat it as part of the same bill. |
| Billing-system events | Stripe app accepts events such as invoice.payment_failed, customer.subscription.trial_will_end and invoice.upcoming through incoming webhooks | Stripe appears in its integration menu; the pages we read do not list Stripe event names | List which Stripe events you want as email triggers, then check each tool lists them by name. |
| CRM connection | Auto BCC logs outgoing campaign and workflow mail to Salesforce, HubSpot or Attio via a BCC address; not a field-level sync | Salesforce is among the six apps its import tool connects to, and a named integration | Write down what sales needs to see: logged emails (Auto BCC is enough) or synced fields and lifecycle stage (look at Mailchimp or a connector). |
| Team seats | Loops does not bill per seat | Essentials 3, Standard 5, Premium unlimited | Count editors, designers and approvers; a fourth Mailchimp editor forces Standard. |
Loops publishes dated slider readouts at specific subscriber counts, while Mailchimp publishes contact bands whose upper edge is the figure you pay for. That means the Loops numbers below are for 4,788, 9,998 and 24,339 subscribers and the Mailchimp numbers cover up to 5,000, 10,000 and 25,000 contacts, which flatters Loops by a small margin. Even so, the yearly arithmetic further down shows a gap that a few hundred contacts cannot close.
Feature comparison
| Feature | Loops | Mailchimp |
|---|---|---|
| Contact record | Eight built-in properties (email, first name, last name, notes, source, subscribed, user group, user ID) plus custom string, number, boolean and date properties. | Audience fields mapped from import columns, with tags, groups and segments to organise people; Mailchimp recommends one primary audience. |
| Grouping people | A single free-text User Group per contact, saved audience segments, and mailing lists. | Tags, groups and segments inside an audience; separate audiences are independent and cannot see each other's duplicates. |
| Account level data | No account object. Put the company ID in a custom property. | No account object on the pages we read. Store the company in an audience field. |
| Editing the schema | A property cannot be edited after creation; changing its name or type means creating a new one. | Fields are matched or created during import; blank cells on an update import erase existing values. |
| Workflow nodes | Six node types: trigger, email, timer, audience filter, branch and experiment. | Basic flows on Essentials and enhanced flows on Standard; the Free plan allows one email automation per Mailchimp's automation overview. |
| What starts a flow | Contact added, Contact updated (including from-value to to-value conditions), Contact added to list, and Event received. | Signups, purchases, tag changes and campaign activity are described; behavioral targeting and predictive segmentation sit on the Standard plan list. |
| Testing without sending | Events and transactional sends to @example.com or @test.com addresses run normally but no mail is delivered. | Not covered on the pages we read; run a trial automation to see how testing works before you commit. |
| API | REST API at app.loops.so/api covering contacts, events, transactional email, campaigns, workflows and more; baseline limit of 10 requests per second per team. | Marketing API for audiences and campaigns, and a separate Transactional API with its own quick start. |
| Incoming events | Custom events sent by API, plus platform events from Stripe, Clerk and Supabase through incoming webhooks. | Audience webhooks are documented; check the Marketing API reference for custom event ingestion. |
| Integrations | Segment, PostHog, RudderStack, Stripe, Clerk, Polar, Clay, Fivetran, Zapier, Make and others on the integrations page. | Its integrations page advertises 300+, including Shopify, WooCommerce, Salesforce, Zapier and Stripe. |
| Transactional | Compose in the editor or upload MJML, publish, and call the API with a transactional ID; no unsubscribe link and no open or click tracking by design. | Mailchimp Transactional, with templates importable from Mailchimp and edits possible by marketers. |
| SMS | Not listed on the Loops pricing page. | SMS marketing is listed, and the updated Transactional API sends transactional SMS. |
Pricing and operating cost
Loops
Free plan: store as many contacts as you like, but only the 1,000 newest are mailed, capped at 4,000 sends per rolling 30 days and 10 emails a second, with a Powered by Loops footer on each message.
On the free plan, a list that grows past 1,000 leaves the oldest contacts out of every campaign without any warning on the send screen. Your tier follows the subscribed count, so a bulk import of an old list that nobody has cleaned can lift the next bill. A CSV upload or the Audience page cannot flip an opted-out contact back to subscribed; only the API and some integrations can, so a wrong status needs a code fix.
Mailchimp
Free plan: 1 audience, up to 250 contacts and 500 sends a month, 250 a day. A 14-day Standard trial is also advertised.
The first-year offer expires: at 10,000 contacts the bill goes from $67.50 to $135 a month after 12 months. Crossing 10,000 contacts moves Standard from $135 to $230 a month, a $95 step. Mailchimp Transactional is billed separately from the marketing plan, and its feature page lists no price. Exceeding the contact or send limit triggers overage charges on paid plans, and pauses sending on the Free plan.
| Tier or usage case | Loops | Mailchimp |
|---|---|---|
| Free plan | $0 4,000 sends in any rolling 30 days to the 1,000 newest contacts. | $0 250 contacts, 500 sends a month. |
| About 500 contacts | Free plan covers it A list this small fits inside the free 1,000-contact window. | Standard $20 a month; Essentials $13 a month First-12-months prices are shown at $17 for Standard and $11.05 for Essentials. |
| About 5,000 contacts | $48 a month Slider reads 4,788 subscribers; unlimited sends to subscribers. | Standard $100 a month The 2,501-5,000 band, up to 60,000 emails a month; $50 for the first 12 months. |
| About 10,000 contacts | $99 a month Slider reads 9,998 subscribers; no seat fees. | Standard $135 a month The 5,001-10,000 band, up to 120,000 emails a month; $67.50 for the first 12 months. |
| About 25,000 contacts | $198 a month Slider reads 24,339 subscribers. | Standard $310 a month The 20,001-25,000 band; $155 for the first 12 months. |
| About 50,000 contacts | $249 a month Slider reads 49,989 subscribers. | No price in our capture; check the live slider Mailchimp lists a custom quote for larger contact lists on Standard. |
Contact model: a property bag versus an audience
In Loops every contact is a row with eight built-in properties and whatever custom ones you add. The contact properties documentation lists string, number, boolean and date types, reserves names such as id and teamId, and warns that a property cannot be edited once it exists. The User ID property is the one to use if your product has its own customer identifier, because Loops needs it before you can change a contact's email address through the API. Subscribed is a property too, and setting it to true through the API will re-subscribe someone who opted out, which is easy to do by accident in a nightly sync.
Mailchimp's model, described in Getting Started with Your Audience, starts from an audience that holds subscribed, unsubscribed and non-subscribed contacts. Mailchimp's advice is to keep one primary audience and organise people with tags, groups and segments. The import guide adds that separate audiences are independent, so duplicates and opt-outs are not detected across them. For a SaaS that is the main thing to avoid: do not create one audience for trial users and another for customers.
- Both tools lack an account or company object. A B2B team stores the company name or ID on the contact and segments on it.
- Loops keeps one User Group value per contact and the Loops docs describe it as free text, so use a custom property if people belong to several groups.
Events, workflows and billing triggers
A Loops event needs an email or userId and an event name, and it creates the contact if none exists. The events documentation says you can add event properties for the email's content, add the contact to mailing lists in the same call, and test safely by sending to @example.com or @test.com addresses. In the workflow builder, an Event received trigger can start a sequence of emails, timers, audience filters, branches and experiments; the docs name signUp, canceled and activated as typical events.
For billing, the Loops Stripe integration accepts a fixed list of Stripe events that includes invoice.payment_failed, invoice.upcoming, customer.subscription.trial_will_end and customer.subscription.deleted, and syncs the customer's email and name to the Loops contact. That is a quick route to a trial-ending sequence or a failed-payment notice without writing webhook code. Stripe events outside that list are ignored.
Mailchimp's automation overview frames automations around signups, purchases and engagement, with the Free plan limited to a single email automation and full customer-journey workflows on Standard and Premium. It does not describe an endpoint equivalent to Loops' send-event call, so check the Marketing API reference to see whether your product events can enter a journey, or plan to set tags from your backend and trigger on tag changes.
Transactional email and CRM logging
Loops treats system mail as a feature of every paid plan. Per its transactional guide, you build the email in the editor or upload MJML, publish it, and call the API with the transactional ID and your data variables. Recipients do not have to be in your audience and are not counted toward billing, unsubscribed contacts still receive these emails, and a send fails if a required data variable is missing. Transactional emails carry no unsubscribe link and do not track opens or clicks, which is why Loops asks you not to put marketing content in them.
Mailchimp's transactional page explains that Mandrill was renamed Mailchimp Transactional in fall 2025, adds SMS to the same API, and lets marketers edit templates without a developer. It shows no price. Treat it as a second vendor-relationship inside the same account.
For CRM visibility, Loops offers Auto BCC: you paste your CRM's BCC address into the sending settings and every campaign and workflow email is logged there; the page names Salesforce, HubSpot and Attio. That logs mail, it does not map fields back and forth. Mailchimp lists Salesforce as one of the six apps its importer can pull contacts from.
API limits and developer effort
Loops documents its API at loops.so/docs/api-reference: a base URL of app.loops.so/api, a baseline of 10 requests per second per team, and a lower limit of 60 requests per 60 seconds on the content endpoints for campaigns, email messages, themes and transactional emails. The same API manages contacts, sends events and creates workflows, so one integration can cover everything your backend needs.
Mailchimp splits the surface in two: the Marketing API for audiences and campaigns, and the Transactional API for system mail, each with its own quick start. Two APIs means two sets of credentials and two places to monitor, which matters if a single engineer owns the integration.
Cost at 5,000, 10,000 and 25,000 contacts over two years
At about 5,000 contacts, Loops is $48 a month (the 4,788-subscriber reading), or 12 x $48 = $576 a year. Mailchimp Standard is $100 a month at list, or $1,200 a year, and $50 a month ($600) in the offer year. Over two years Loops totals $48 x 24 = $1,152 and Mailchimp totals $600 + $1,200 = $1,800. In year one the two are within $24 of each other.
At about 10,000 contacts, Loops is $99 a month (9,998 subscribers), $1,188 a year. Mailchimp Standard is $135 a month, $1,620 a year, or $67.50 a month ($810) in the offer year. Mailchimp is $378 cheaper in year one ($1,188 - $810). Over two years Loops totals $99 x 24 = $2,376 and Mailchimp $810 + $1,620 = $2,430, a $54 difference that favours Loops. So at this size the decision turns on the first year only if you are certain to leave by month 12.
At about 25,000 contacts, Loops is $198 a month (24,339 subscribers), $2,376 a year. Mailchimp Standard is $310 a month, $3,720 a year, or $155 a month ($1,860) in the offer year. Over two years Loops totals $198 x 24 = $4,752 and Mailchimp $1,860 + $3,720 = $5,580. Loops saves $828 over two years and $1,344 a year once Mailchimp's full price starts ($3,720 - $2,376).
Send volume is the second variable. If 10,000 contacts each receive 15 emails a month (150,000 sends), Mailchimp Standard's allowance of 12 x 10,000 = 120,000 is exceeded and overage charges apply; Mailchimp's additional charges article describes how they are billed. Loops has no monthly send cap on a paid plan, so the same program stays at $99.
For a list under 1,000 people, the comparison is no contest: 800 contacts receiving four emails is 3,200 sends, inside the Loops free allowance of 4,000 in any rolling 30 days. Mailchimp Free stops at 250 contacts and 500 sends a month, so the same list needs a paid Mailchimp plan, for which the capture showed $20 a month at 500 contacts and no price for the stops between 501 and 2,500.
- All prices are from the Loops pricing page (dated slider readouts) and the Mailchimp pricing page, read on 2026-10-07.
- Mailchimp's half-price offer has its own terms; confirm eligibility with Mailchimp before you count on it.
- Loops readouts are at one subscriber count each, so your own bill depends on your exact subscribed total.
What the entry plans do not include
- Loops Free: the 1,000 newest contacts only, 4,000 sends per rolling 30 days, 10 emails per second, a Loops footer. Every feature is included, so the limits are volume and branding, not capability.
- Mailchimp Free: 250 contacts, 500 sends a month, 250 a day, one audience, sending pauses past the limit.
- Mailchimp Essentials: 3 seats, sends at 10 times contacts, basic automation flows, and custom-coded templates that can be created but not sent without an upgrade.
- Mailchimp Standard: 5 seats, sends at 12 times contacts. Premium starts at $350 a month at 500 contacts, with 15 times contacts in sends and unlimited seats.
Moving from Mailchimp to Loops
- In Mailchimp, open Audience and export. The export guide says you can export a whole audience, a segment, a tag or a group; the result may be a ZIP of separate CSVs for subscribed, unsubscribed, non-subscribed and cleaned contacts. Only Owners and Admins can export audiences, and files stay available for 30 days. Exports do not contain open and click data.
- Decide which Mailchimp tags and groups should become Loops mailing lists or custom properties. Create each custom property in Loops first, with the correct type; the property cannot be renamed or retyped later.
- Prepare the CSV for the Loops importer: use Email, First Name, Last Name, User Group and Source columns, plus one column per custom property named exactly like the property. Dates must use an accepted format; timestamps are not supported in CSV.
- Import the unsubscribed file with a Subscribed column set to false. All new contacts are marked subscribed otherwise, and a later CSV cannot re-subscribe anyone who opted out. Skip the cleaned file.
- On the review step, leave the Trigger workflows option off for the first import, or every welcome workflow will fire for your entire existing list.
- Rebuild each Mailchimp journey as a Loops workflow, using Event received triggers for anything your product can send. Move system mail from Mailchimp Transactional to Loops transactional emails and republish each template there.
Moving from Loops to Mailchimp
- Download your contacts from the Loops Audience page as a CSV, including custom properties and the Subscribed column. Note your event names and properties from the Loops Events page as well, since the contact file is a list of people, not an event history.
- Split the file by subscribed status. Mailchimp's importer loads one marketing status per run, so you will run it twice: subscribed contacts as Subscribed and opted-out contacts as Unsubscribed.
- Check your total against the contact band you are paying for. The guide warns that an import that raises the total above the plan limit leads to additional charges.
- Choose Audience, Add contacts, Import contacts, Upload a file. Match each column to an audience field (unmatched columns are not imported), and add tags at the tagging step to represent Loops mailing lists or User Group values.
- Rebuild workflows as Mailchimp journeys. Event received triggers have no direct equivalent in the pages we read, so set a tag from your backend or connector and trigger on that.
- Replace Loops transactional emails with Mailchimp Transactional or another sender, and re-create sending-domain authentication before you cut over.
Pros and cons
Loops
Pros
- Cheaper at list price at every size priced: $48, $99 and $198 against $100, $135 and $310.
- Free plan works for lists up to 1,000 contacts, and the entire feature set is available on it.
- Paid plans send without a monthly cap and include transactional sending; nobody pays per editor.
- Event-triggered workflows, with a Stripe app that covers payment-failed and trial-ending events.
Cons
- No company object, no SMS listed on the pricing page, and the CRM link is mail logging by BCC rather than a field sync.
- Properties cannot be edited after creation, and opt-outs cannot be re-subscribed from CSV.
- Free plan carries a Loops footer and reaches only the 1,000 newest contacts.
Mailchimp
Pros
- Salesforce import, SMS marketing and a 300+ integration list in one account.
- Half-price first year at the larger bands ($67.50 at 10,000 contacts, $155 at 20,001-25,000).
- Marketers can edit transactional templates without a developer.
Cons
- Full price rises to $135, $230 and $310 at the 10,000, 15,000 and 25,000 bands.
- Send allowance is capped at a multiple of contacts, with overage charges beyond it.
- Transactional email is a separate product, and the free plan stops at 250 contacts.
Who should choose what?
Seed-stage SaaS with 800 users and one engineer
You want a welcome sequence, a trial-ending reminder and password resets, and nobody is a full-time marketer.
Recommendation: Loops. 800 contacts mailed four times is 3,200 sends, inside the Loops free allowance of 4,000 per rolling 30 days. Mailchimp Free stops at 250 contacts and 500 sends a month.
Self-serve SaaS at 10,000 users with Stripe billing events
Trial-ending notices and failed-payment emails should start automatically from billing events.
Recommendation: Loops. Loops lists invoice.payment_failed and customer.subscription.trial_will_end among the Stripe events it accepts, at $99 a month for 9,998 subscribers with unlimited sends.
Sales-led product with Salesforce and a text-message reminder
Prospects live in Salesforce, and demo reminders should go out by SMS as well as email.
Recommendation: Mailchimp. Mailchimp names Salesforce among the apps its importer connects to and lists SMS marketing. Loops offers Auto BCC logging to Salesforce and does not list SMS.
Marketing team with no engineering support
The newsletter, webinar invitations and nurture emails are built by marketers from CSV exports.
Recommendation: Mailchimp. Mailchimp's tag, group and segment model and its 300+ integrations suit hand-managed lists, and five seats come with Standard.
25,000 contacts and a two-year plan
You expect to stay with one vendor for at least two years and need a fixed budget.
Recommendation: Loops. Loops totals $4,752 over 24 months at $198 a month, against $5,580 for Mailchimp Standard once the first-year offer ends. That is $828 saved.
Planning to change systems within a year, 10,000 contacts
A migration to another stack is already scheduled, so only the first twelve months of cost count.
Recommendation: Mailchimp. Mailchimp's offer price of $67.50 a month ($810 for 12 months) beats Loops at $99 a month ($1,188), provided you qualify for the offer.
Each scenario names who operates the tool. When the person editing the lifecycle emails is an engineer, Loops removes steps. When the person is a marketer working from spreadsheets and CRM exports, Mailchimp's interface and integration list remove steps.
Final verdict
Choose Loops if
- engineers will send events and system email from product code
- your list is under 1,000 contacts, or you will stay a year or more at 5,000 to 50,000 ($48 to $249 a month)
- you want marketing and transactional email from one vendor and one bill
- Stripe payment and trial events should start emails without custom webhook code
Choose Mailchimp if
- Salesforce import or SMS marketing is a requirement
- marketers run campaigns from spreadsheets and need 300+ ready connectors
- you will use Mailchimp's first-year half-price offer and then reassess
- more than three people edit campaigns and you want named seats on Standard
FAQ
Is Loops cheaper than Mailchimp for a B2B SaaS?
At list price, yes. Loops reads $48 at 4,788 subscribers, $99 at 9,998 and $198 at 24,339, against Mailchimp Standard at $100, $135 and $310 for the bands up to 5,000, 10,000 and 25,000 contacts. Mailchimp's 12-month half-price offer reverses the order for year one at 10,000 and 25,000 contacts, but over two years Loops is still cheaper at all three sizes.
Can Mailchimp trigger emails from events inside my app?
Its automation overview describes triggers based on signups, purchases, tags and engagement. It does not describe an events endpoint like Loops' send-event call, so check the Marketing API reference for your case. A common workaround is to set a tag from your backend and start the journey on that tag.
Do both tools send password resets and receipts?
Loops does, on any paid plan, through its transactional API at no extra charge. Mailchimp sells transactional email as Mailchimp Transactional, a separate product with its own API (formerly Mandrill, renamed in fall 2025), and its feature page shows no price. Ask Mailchimp for a quote at your monthly volume.
What happens to unsubscribed contacts when I move to Loops?
Import them in a separate file with a Subscribed column set to false, because every new contact in a CSV is marked subscribed by default. Loops does not charge for unsubscribed contacts, and it cannot re-subscribe them from a CSV upload, so a wrong status needs an API call to fix.
How do Loops and Mailchimp connect to Salesforce?
Mailchimp names Salesforce as one of the six apps its import tool connects to, and lists it as an integration. Loops offers Auto BCC, which logs outgoing campaign and workflow emails to Salesforce, HubSpot or Attio through a BCC address; that records mail but does not sync fields in both directions.
What does it cost to run Loops for 50,000 contacts?
Loops shows $249 a month at 49,989 subscribers on its pricing slider, which is $2,988 a year. Mailchimp's pricing page did not give us a reliable Standard price at that size, so ask Mailchimp or check its live contact selector.