







Managed Email Service at no extra cost!
Pepipost provides support at no extra cost, irrespective of the plan you choose.

Email usage per/mo | Pepipost/mo | Mailgun/mo | Annual Savings |
---|---|---|---|
150,000 | $25 | $103 | $936 |
400,000 | $85 | $325 | $2,880 |
600,000 | $145 | $370 | $2,700 |
1,000,000 | $245 | $499 | $3,048 |
2,000,000 | $445 | $998 | $6,636 |
Migrate from Mailgun to Pepipost in 2 simple steps
Start Sending in 100 Seconds or Less with SMTP Relay. APIs or Plugins
var client = new RestClient("https://sgapi.pepipost.com/v3/mail/send"
[1]);
var request = new RestRequest(Method.POST);
request.AddHeader("content-type", "application/json");
request.AddHeader("authorization", "Bearer <>");
request.AddParameter("application/json",
"{\"personalizations\":[{\"to\":[{\"email\":\"john.doe@example.com\",\"name\":\"John
Doe\"}],\"dynamic_template_data\":{\"verb\":\"\",\"adjective\":\"\",\"noun\":\"\",\"currentDayofWeek\":\"\"},\"subject\":\"Hello,
World!\"}],\"from\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"reply_to\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"template_id\":\"d-8096b5dacb254c8b882816f22d1d11fe\"}",
ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
require 'uri'
require 'net/http'
url = URI("https://sgapi.pepipost.com/v3/mail/send")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
request = Net::HTTP::Post.new(url)
request["authorization"] = 'Bearer <>'
request["content-type"] = 'application/json'
request.body =
"{\"personalizations\":[{\"to\":[{\"email\":\"john.doe@example.com\",\"name\":\"John
Doe\"}],\"dynamic_template_data\":{\"verb\":\"\",\"adjective\":\"\",\"noun\":\"\",\"currentDayofWeek\":\"\"},\"subject\":\"Hello,
World!\"}],\"from\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"reply_to\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"template_id\":\"d-8096b5dacb254c8b882816f22d1d11fe\"}"
response = http.request(request)
puts response.read_body
"hostname": "https://sgapi.pepipost.com/v3/mail/send",
"port": null,
"path": "/v3/mail/send",
"headers": {
"authorization": "Bearer <>",
"content-type": "application/json"
}
};
var req = http.request(options, function (res) {
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
});
res.on("end", function () {
var body = Buffer.concat(chunks);
console.log(body.toString());
});
});
req.write(JSON.stringify({ personalizations:
[ { to: [ { email: 'john.doe@example.com', name: 'John Doe' } ],
dynamic_template_data: { verb: '', adjective: '', noun: '',
currentDayofWeek: '' },
subject: 'Hello, World!' } ],
from: { email: 'noreply@johndoe.com', name: 'John Doe' },
reply_to: { email: 'noreply@johndoe.com', name: 'John Doe' },
template_id: 'd-8096b5dacb254c8b882816f22d1d11fe' }));
req.end();
import http.client
conn =
http.client.HTTPSConnection("https://sgapi.pepipost.com/v3/mail/send")
payload =
"{\"personalizations\":[{\"to\":[{\"email\":\"john.doe@example.com\",\"name\":\"John
Doe\"}],\"dynamic_template_data\":{\"verb\":\"\",\"adjective\":\"\",\"noun\":\"\",\"currentDayofWeek\":\"\"},\"subject\":\"Hello,
World!\"}],\"from\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"reply_to\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"template_id\":\"d-8096b5dacb254c8b882816f22d1d11fe\"}"
headers = {
'authorization': "Bearer <>",
'content-type': "application/json"
}
conn.request("POST", "/v3/mail/send", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
HttpResponse response =
Unirest.post("https://sgapi.pepipost.com/v3/mail/send")
.header("authorization", "Bearer <>")
.header("content-type", "application/json")
.body("{\"personalizations\":[{\"to\":[{\"email\":\"john.doe@example.com\",\"name\":\"John
Doe\"}],\"dynamic_template_data\":{\"verb\":\"\",\"adjective\":\"\",\"noun\":\"\",\"currentDayofWeek\":\"\"},\"subject\":\"Hello,
World!\"}],\"from\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"reply_to\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"template_id\":\"d-8096b5dacb254c8b882816f22d1d11fe\"}")
.asString();
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://sgapi.pepipost.com/v3/mail/send",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS =>
"{\"personalizations\":[{\"to\":[{\"email\":\"john.doe@example.com\",\"name\":\"John
Doe\"}],\"dynamic_template_data\":{\"verb\":\"\",\"adjective\":\"\",\"noun\":\"\",\"currentDayofWeek\":\"\"},\"subject\":\"Hello,
World!\"}],\"from\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"reply_to\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"template_id\":\"d-8096b5dacb254c8b882816f22d1d11fe\"}",
CURLOPT_HTTPHEADER => array(
"authorization: Bearer <>",
"content-type: application/json"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main
import (
"fmt"
"strings"
"net/http"
"io/ioutil"
)
func main() {
url := "https://sgapi.pepipost.com/v3/mail/send"
payload :=
strings.NewReader("{\"personalizations\":[{\"to\":[{\"email\":\"john.doe@example.com\",\"name\":\"John
Doe\"}],\"dynamic_template_data\":{\"verb\":\"\",\"adjective\":\"\",\"noun\":\"\",\"currentDayofWeek\":\"\"},\"subject\":\"Hello,
World!\"}],\"from\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"reply_to\":{\"email\":\"noreply@johndoe.com\",\"name\":\"John
Doe\"},\"template_id\":\"d-8096b5dacb254c8b882816f22d1d11fe\"}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("authorization", "Bearer <>")
req.Header.Add("content-type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
Enjoy Superior Inboxing at Unmatched Pricing
Dynamic Email Delivery
We monitor your email delivery closely and watch out for anomalies in email behavior. With neural networks, we understand minute shifts in email delivery and auto adjust the throughput.
90 Days of History
While Mailgun provides 30 days of message event history, Pepipost provides you with a searchable 90-day activity feed for all your email campaigns.
24/7 Live Chat Support
At Pepipost, we've always believed support must be free and readily available.That's why our developer evangeliests work around the clock to help you with your questions.And that's not all. Unlike Sendgrid,we don't give differential access to Support
Don't take our word for it.
Our customers have spoken for us to help solidify our spot as a Leader in the G2 Crowd Grid for Transactional Email Software
4.5/5
4.7/5
4/5
Pepipost vs. Mailgun – Play by Play
With our developer friendly documentation and 24/7 technical chat support we are all set to help you get things started at Pepipost
Pepipost | Mailgun | |
---|---|---|
Transactional Emails | ||
Bulk/Marketing allowed | ||
SMTP | ||
REST API | ||
Official libraries | ||
Community libraries | ||
Spam score checking | ||
Spam complaint handling | ||
Bounce handling | ||
Shared IPs |
Pepipost | Mailgun | |
---|---|---|
Dedicated IPs | ||
Separate servers | ||
Pre-made email templates | ||
Template engine | ||
Merge tags for personalization | ||
Inbox preview | ||
Scheduled delivery | ||
A/B testing | ||
Email address validation |
Pepipost | Mailgun | |
---|---|---|
RegEx matching on all email headers (“routes”) | ||
Chain multiple filters | ||
UTF-8 encoding | ||
Raw MIME | ||
Strip signature and quote blocks | ||
Spam filtering |
Pepipost | Mailgun | |
---|---|---|
Delivery rates | ||
Bounce rates | ||
Open rates | ||
Click tracking | ||
Unsubscribe tracking | ||
Spam rates | ||
Full message storage | (90 days) |
(3 days) |
Pepipost | Mailgun | |
---|---|---|
Automatic tagging | ||
Custom tagging | ||
Custom header metadata tag | ||
Custom tracking domain | ||
Geolocation data | ||
Real-time notifications |
Pepipost | Mailgun | |
---|---|---|
Average inbox rate | ||
Inbox rate per service | ||
Time to Inbox | ||
System availability API | ||
Service availability API |
Pepipost | Mailgun | |
---|---|---|
SPF | ||
DKIM | ||
DMARC | ||
2FA | Arriving Soon | |
Opportunistic TLS | ||
Enforced TLS |
Pepipost | Mailgun | |
---|---|---|
Dedicated support team |
|
NA |
24/7 support |
|
NA |
Email support |
|
NA |
Phone support |
|
NA |
Live chat |
|
NA |
Why customers chose Pepipost over Mailgun

Pricing is very unique we only pay the unopened email.Open email is free.its very interesting pricing.

Ari Eko P.
CTO/CO-Founder

"Pepipost is better than Mailchimp and others we tried...."

Adam W.
CEO at jade Bloom Inc

"Highly recommended service with excellent customer support."

Jay A.

Ready to get started?
30,000 emails free for first 30 days.
Then 100/day free forever.