Email Delivery. Simplified.

SendGrid is the world's largest Email Infrastructure as a Service provider.

Our email delivery service moves 2% of the world's non-spam email (over 13 billion emails / month) for more than 150,000 companies including technology leaders like Pinterest, Spotify, and Uber.

Get Started
Commissions Inc

"Email is critical to the growth and success of
Commissions Inc and SendGrid has helped us rapidly scale. When we started with SendGrid, we sent only two thousand emails per month. Now, we send tens of millions." - Matthew Swanson, Chief Software Architect

Become an email expert

Boost your email deliverability skills with best practice guides, videos, webinars and documentation.


SendGrid best practice guides

Download complimentary guides written by SendGrid email experts that will help you master deliverability and improve your sending reputation.

View all Guides ›


SendGrid webcast recordings

Access free advice from SendGrid and other industry experts on how to improve your email communication strategies and drive engagement with your subscribers.

View all Webcasts ›


SendGrid video resources

Learn more about SendGrid's core values that influence every part of our product and gain valuable takeaways about deliverability basics in our instructional videos.

View all Videos ›
Video Cover


Built for developers by developers

SendGrid has been built from the ground up as an API company. We're built to serve developers and make it easy to send email no matter your environment. You can send email over SMTP or HTTP, and even use one of our official client libraries. In just a few minutes, you can send your first email and millions more.

View all Documentation ›
curl -X POST \
     -d "api_user=YOUR_USERNAME" \
     -d "api_key=YOUR_KEY" \
     -d "" \
     -d "" \
     -d "subject=Sending with SendGrid is Fun" \
     -d "html=and easy to do anywhere, even with CURL"
// using SendGrid's Node.js Library -
var sendgrid = require("sendgrid")(api_user, api_key);
var email = new sendgrid.Email();
email.setSubject("Sending with SendGrid is Fun");
email.setHtml("and easy to do anywhere, even with Node.js");
# using SendGrid's Ruby Library -
require 'sendgrid-ruby'
client = api_user, api_key: api_key)
email = do |m|      = ''
  m.from    = ''
  m.subject = 'Sending with SendGrid is Fun'
  m.html    = 'and easy to do anywhere, even with Ruby'
# using SendGrid's Python Library -
import sendgrid
sendgrid = sendgrid.SendGridClient(api_user, api_key)
message = sendgrid.Mail()
message.set_subject("Sending with SendGrid is Fun")
message.set_html("and easy to do anywhere, even with Python")
// using SendGrid's Go Library -
package main
import ("")
func main() {
    sendgrid := sendgrid.NewSendGridClient(api_user, api_key)
    message := sendgrid.NewMail()
    message.SetSubject("Sending with SendGrid is Fun")
    message.SetHTML("and easy to do anywhere, even with Go")
// using SendGrid's PHP Library -
$sendgrid = new SendGrid($api_user, $api_key);
$email    = new SendGrid\Email();
      ->setSubject("Sending with SendGrid is Fun")
      ->setHtml("and easy to do anywhere, even with PHP");
// using SendGrid's Java Library -
import com.sendgrid.*;
public class SendGridExample {
  public static void main(String[] args) {
    SendGrid sendgrid = new SendGrid(api_user, api_key);
    SendGrid.Email email = new SendGrid.Email();
    email.setSubject("Sending with SendGrid is Fun");
    email.setHtml("and easy to do anywhere, even with Java");
    SendGrid.Response response = sendgrid.send(email);
// using SendGrid's C# Library -
using System;
using System.Net;
using System.Net.Mail;
using SendGridMail;
using SendGridMail.Transport;
SendGrid mail = SendGrid.GetInstance();
mail.From = new MailAddress("");
mail.Subject = "Sending with SendGrid is Fun";
mail.Text = "and easy to do anywhere, even with C#";
var credentials = new NetworkCredential(api_user, api_key);
var transportWeb = new Web(credentials);
// using SendGrid's Objective-C Library -
#import <SendGrid/SendGrid.h>
#import <SendGrid/SendGridEmail.h>
SendGrid *sendgrid = [SendGrid apiUser:api_user apiKey:api_key];
SendGridEmail *email = [[SendGridEmail alloc] init]; = @"";
email.from = @"";
email.subject = @"Sending with SendGrid is Fun";
email.html = @"and easy to do anywhere, even with Objective-C";
[sendgrid sendWithWeb:email];
# using SendGrid's Perl Library -
use Mail::SendGrid;
use Mail::SendGrid::Transport::REST;
my $sendgrid = Mail::SendGrid->new(
  from => "",
  to => "",
  subject => "Sending with SendGrid is Fun",
  html => "and easy to do anywhere, even with Perl"
Mail::SendGrid::Transport::REST->new( username => $api_user, password => $api_key );

Sending email for 150,000+ customers

SendGrid is the trusted platform that successfully delivers over 13 Billion emails per month on the behalf of 150K+ customers. We provide unmatched deliverability, scalability, and reliability.