Overview
Mandrill functions as a transactional email API, enabling developers and businesses to send automated emails triggered by user actions or system events. This includes communications such as password resets, order confirmations, shipping notifications, and personalized alerts. The platform emphasizes high deliverability rates and provides analytics to monitor email performance. Founded in 2011, Mandrill was acquired by Mailchimp and is now exclusively available as an add-on for paid Mailchimp accounts, requiring an active Mailchimp subscription for use.
The service is designed for scenarios where email delivery needs to be reliable and timely, supporting event-driven architectures. Developers interact with Mandrill primarily through its RESTful API, which offers endpoints for sending emails, managing templates, and retrieving delivery and engagement data. Client libraries are provided for multiple programming languages including PHP, Ruby, Python, Node.js, Go, C#, and Java to facilitate integration (Mandrill API documentation).
Mandrill's integration with Mailchimp allows users to consolidate their email operations, managing both marketing campaigns and transactional communications from a single interface. This is particularly beneficial for businesses that utilize Mailchimp for broader email marketing efforts and seek to maintain consistent branding and data insights across all email types. The platform targets developers and technical buyers who require a robust, scalable solution for automated email delivery within their applications.
While Mandrill focuses on transactional email, its association with Mailchimp means it can be part of a broader customer communication strategy. The API supports dynamic content, allowing for personalization of emails based on user data, and offers features like dedicated IP addresses for senders with high volume requirements. The platform also provides detailed reporting on sends, opens, clicks, and bounces, which aids in optimizing email performance and troubleshooting delivery issues.
A key aspect of transactional email services like Mandrill is ensuring that emails reach recipients' inboxes reliably, avoiding spam filters. This involves maintaining a strong sender reputation and adhering to email best practices. Mandrill addresses this through its infrastructure and compliance measures, which include SOC 2 Type II, GDPR, and PCI DSS adherence (Mailchimp Trust & Compliance overview). These certifications indicate attention to data security and privacy, which is a critical consideration for any service handling customer communications.
Key features
- Transactional Email API: Programmatic sending of triggered emails like confirmations, notifications, and alerts via a RESTful API (Mandrill API Reference).
- Template Management: Create and manage email templates, including Handlebars-based dynamic content, for consistent branding and efficient email generation.
- Detailed Analytics: Access real-time data on email sends, opens, clicks, unsubscribes, bounces, and rejections to monitor performance and deliverability.
- Webhooks: Configure webhooks to receive real-time notifications about email events (e.g., delivered, opened, clicked, bounced), facilitating event-driven workflows.
- Custom Sending Domains: Authenticate custom domains with SPF and DKIM records to improve email deliverability and sender reputation.
- Dedicated IP Addresses: Option to use dedicated IP addresses for high-volume senders, providing greater control over sender reputation.
- Multi-Language SDKs: Client libraries available for PHP, Ruby, Python, Node.js, Go, C#, and Java to simplify API integration.
- Bounce and Complaint Handling: Automated processing of bounces and spam complaints to help maintain sender reputation.
Pricing
Mandrill is offered as an add-on to paid Mailchimp accounts. Pricing is usage-based, starting at a minimum tier which includes a set number of emails per month.
As of May 2026, the pricing structure for Mandrill is as follows:
| Email Volume (per month) | Price (per month) | Notes |
|---|---|---|
| 25,000 emails | $20 | Base tier, requires a paid Mailchimp account |
| Additional 25,000 emails | $20 | Scales in blocks of 25,000 emails |
For current and detailed pricing information, refer to the Mandrill pricing page. Users are billed based on their Mailchimp account and Mandrill usage.
Common integrations
- Mailchimp: Direct integration with Mailchimp for unified management of marketing and transactional email campaigns (Mailchimp transactional email documentation).
- E-commerce Platforms: Connects with platforms like Shopify, WooCommerce, or Magento through custom development or third-party connectors to send order confirmations, shipping updates, and abandoned cart reminders.
- CRM Systems: Integrates with CRM software (e.g., Salesforce via custom API calls) to send automated customer service emails or personalized follow-ups.
- CMS Platforms: Used by content management systems (e.g., WordPress with plugins or custom code) for user registration confirmations, password resets, and comment notifications.
- Customer Support Platforms: Integrated with helpdesk systems to send automated responses, ticket updates, and resolution notifications.
- Internal Business Tools: Can be integrated into custom applications for internal alerts, system notifications, and reporting summaries.
Alternatives
- SendGrid: A cloud-based email platform offering both marketing and transactional email services with extensive API capabilities (SendGrid homepage).
- Postmark: Focuses specifically on transactional email, known for its emphasis on deliverability, speed, and helpful error messages (Postmark homepage).
- Mailgun: Provides a robust API for sending, receiving, and tracking emails, popular for its developer-friendly documentation and flexibility (Mailgun homepage).
Getting started
To begin using Mandrill, you need an active, paid Mailchimp account. Once you have a Mailchimp account, you can add Mandrill as an add-on. The following PHP example demonstrates how to send a simple transactional email using Mandrill's API. This example assumes you have Composer installed and have set up your API key.
<?php
require_once 'vendor/autoload.php';
// Replace with your actual Mandrill API key
$mandrillApiKey = 'YOUR_MANDRILL_API_KEY';
$mandrill = new Mandrill($mandrillApiKey);
try {
$message = array(
'html' => '<p>Hello, <strong>{{name}}</strong>! Your order is confirmed.</p>',
'text' => 'Hello, {{name}}! Your order is confirmed.',
'subject' => 'Order Confirmation for {{order_id}}',
'from_email' => '[email protected]',
'from_name' => 'Example Store',
'to' => array(
array(
'email' => '[email protected]',
'name' => 'Recipient Name',
'type' => 'to'
)
),
'headers' => array('Reply-To' => '[email protected]'),
'important' => false,
'track_opens' => true,
'track_clicks' => true,
'auto_text' => true,
'auto_html' => false,
'inline_css' => true,
'url_strip_qs' => false,
'preserve_recipients' => false,
'view_content_link' => false,
'merge_language' => 'handlebars',
'global_merge_vars' => array(
array(
'name' => 'order_id',
'content' => '12345'
)
),
'merge_vars' => array(
array(
'rcpt' => '[email protected]',
'vars' => array(
array(
'name' => 'name',
'content' => 'John Doe'
)
)
)
)
);
$async = false;
$ip_pool = 'Main Pool';
$send_at = null;
$result = $mandrill->messages->send($message, $async, $ip_pool, $send_at);
print_r($result);
} catch(Mandrill_Error $e) {
// Mandrill errors are thrown as exceptions
echo 'A mandrill error occurred: ' . get_class($e) . ' - ' . $e->getMessage();
// A remarkably helpful error message can be found in $e->getMessage(), otherwise you are left with just a little information
}
?>
This PHP code snippet initializes the Mandrill API client with your API key, constructs an email message using Handlebars for dynamic content, and then sends it. The merge_vars array allows for recipient-specific personalization, such as inserting a customer's name. After sending, the result or any potential errors are printed. For more detailed instructions and alternative language examples, consult the Mandrill Getting Started guide.