Platform
Docs
Solutions
ContactLog In

Get started sending notifications with Courier in minutes, not days!

We have SDKs in Ruby, Go, Python, Javascript, Node.js, and React.

Sign up

How to choose an SMS API for your project header
GUIDE

How to Choose the Right SMS API for Your Project

Sarah Barber

October 25, 2023

SMS is the most reliable and highly-read notification channel, making it a popular choice for developers who want their systems to send notifications to their users. If you’ve got an application that needs to send out short, important, time-sensitive messages, you should consider integrating an SMS API into your system to help you handle this.

In this article, we explain how to choose the right SMS API provider for your needs. We also cover how using Courier can help save a lot of the headache of deciding on a provider, as well as how it offers extra functionality to enhance your SMS sending strategy.

We’ve also published an in-depth comparison of the most popular SMS providers that will be useful to developers who want to get into the details of what makes one provider better than another.

Courier is a full-fledged notification platform that integrates with many SMS APIs, as well as other types of notification channels like email, chat, and push notifications.

What is an SMS API, and when should you use one?

An SMS API does what it says on the tin: it‘s an API (developed by a third party) that allows you to incorporate text messaging capabilities directly into your application, meaning you don’t have to deal with the behind-the-scenes details of how to physically send SMS yourself.

An SMS API is the sensible decision for companies who need to send SMS from within their app. There is no need to reinvent the wheel when so many affordable and simple APIs are available.

An important question to ask, though, is when it’s appropriate to send an SMS versus other potential channels of communication such as an email or a push notification. SMS is an excellent option for urgent communications as users tend to read SMS messages more than any other types of notifications. This is great if you need to alert your user to something important and time-sensitive, such as a package delivery arriving at their house in the next few hours.

But beware of sending too many SMS notifications! Spammy text messages can annoy users and cause your number to get blocked, so you should always consider whether another channel is more appropriate. For example, if you have an e-commerce site and a user orders a product, an email confirmation of this will suffice — there is no need to send an SMS in this situation.

Understanding when different notification channels are appropriate will help you give your users the best experience of your product. Some examples of different notification topics and the suggested notification channel are included here, along with our reasoning, to help you decide how to make good decisions about the right type of channel to use.

Notification topicSuggested channelReason
Two-factor authenticationSMSSMS is considered a more secure channel than email as email is more likely to be hacked than SMS. However, it’s worth noting that even SMS can be hacked through the practice of SIM swapping, so a 2FA app is an even more secure approach.
Welcome notification for new usersEmailThis is non-urgent and your user can read it at their leisure. Email inboxes are also more easily searchable should your user need to find this message at a later date.
Important appointment remindersSMSIf both you and your user are likely to agree that the appointment reminder is urgent, then you should use this channel.
Receipt of a purchaseEmailEmail is a great place to keep notifications that are useful for the user’s records but which may not be particularly interesting to read right away.
A special offer aiming to tempt users back to using your appPush notificationIf you’re trying to increase user engagement, push can be a good approach, as these notifications are more prominent and more likely to be read than emails. Just remember to keep the message short and sweet. And don’t be tempted to use SMS for this purpose — although your message will be more likely to be read, your users won’t thank you for using an urgent channel for blatant marketing purposes.
In a workplace workflow system, a reminder that a task is ready to be worked onWorkplace chat app (Slack, MS Teams etc.), or emailSome companies like to keep a lot of their workflow information inside their team chat app, whereas others prefer email. Either way, SMS would not be a good choice for a potentially high-volume type of message, as this could be annoying for recipients.
System outage alert (to be sent to the system administrator)SMSThis is the most urgent category of notification and it’s essential to make the sysadmin aware ASAP, so there can be no doubt that SMS is the right channel. Additionally, SMS infrastructure exists largely outside your own systems, so it is more likely to be a functional channel during an outage.

Choosing an SMS provider

An SMS provider is any third-party company that develops an SMS API. There are many out there, so how do you choose the right one for your project?

It helps to first understand your project requirements. Consider these questions, and then find out if the provider you’re looking at offers the features you need.

  • Are you looking to send a large volume of messages?
  • Will you be sending SMS internationally?
  • Do you need to integrate any other third-party software into your code, and do any of the providers already have integrations with such software (for example, customer data platforms or cloud monitoring systems)?
  • Do you want to use features like SMS short codes and alphanumeric sender ID?
  • What are the legal requirements for SMS messages in your jurisdiction?

Any provider you’re considering will get bonus points for:

  • Having an API (and documentation!) that’s clear and easy to use
  • Offering good value for money
  • Having a reputation for good developer support (tip: the comments of Hacker News and Reddit can often be a good starting point for understanding how other developers feel about these products)
  • Easily integrating with your existing software stack

How to supercharge your SMS notification strategy

Today it’s worth looking beyond a basic SMS API. Using a full-fledged notification system like Courier can give you much-needed extra functionality, including the ability to send notifications to different channels like email and MS Teams, or to easily switch out one SMS provider for another.

A flow diagram showing how Courier simplifies the amount of code you need to write if you want to send notifications via multiple channels. Without Courier you would have to configure Twilio and use its SMS API, configure SendGrid and use its email API, configure Firebase and use its push API, etc. However, when using Courier, you only need to configure and use one API for all channels. Courier makes it easy to use a single “send” API endpoint to send messages to multiple channels or multiple providers.

Without Courier you would have to configure Twilio and use its SMS API, configure SendGrid and use its email API, configure Firebase and use its push API, etc. However, when using Courier, you only need to configure and use one API for all channels.

With Courier, you can even incorporate SMS with other notification channels. For example, you might send SMS for some parts of a workflow, emails for another, and push notifications for yet another. You can keep all your message templates in one system, and allow non-developers to edit the content of the messages.

You can also add advanced logic around your notifications. For example, you could try sending a push notification or email first, but if the user hasn’t read it within a certain timeframe and it’s urgent, automatically send an SMS. Courier also gives you the ability to retry if there’s a problem sending, as well as advanced logging and error handling.

One feature that’s a real game changer is the ability to trigger the sending of your SMS from customer data platform (CDP) events such as Segment and RudderStack, and to do this within the Courier app, with no need to bother integrating your CDP API into your application code.

Courier provides a simple way for user notification preferences to be recorded and respected. This includes features such as opting in/out of specific communication channels (including SMS) or particular notification topics (such as marketing messages) so users will never need to be annoyed by a notification. Courier also offers internationalization options, allowing you to send SMS in different languages, based on the region your user is located in.

Finally, it’s worth mentioning that Courier has been designed to be a joy for developers to use. With SDKs added for the most popular languages, it’s much less clunky than directly calling an API, and you can use the same API endpoint call for sending all different types of notification, for all different providers and user devices.

Conclusion

Choosing an SMS API provider requires careful thought. The most common decisions will be based on price, ease of use, quality of developer support, and whether the company can support the number of notifications you need to send.

If you want your SMS notification strategy to be part of a wider notification strategy involving other types of notification, if you anticipate wanting to add logic around your notification sending procedures, or if you want to have a degree of user personalization over your messages, a system like Courier makes sense.

As Courier is a full-spectrum notification platform, you can plug in different notification providers for SMS, push, email and chat into it. Courier offers many different SMS providers, and if you decide you want to switch providers at any time, it’s super easy to switch one out for another.

If you’d like to try out Courier, you can sign up to our free tier for 10,000 free notifications or get in touch. You’ll need to set up an SMS provider as well — here is a guide on how to send SMS using Twilio and Courier.

Get started sending notifications with Courier in minutes, not days!

We have SDKs in Ruby, Go, Python, Javascript, Node.js, and React.

Sign up

More from Guide

Best Practices for SMS Tools and Text Message API Implementation thumbnail
GUIDE

Best Practices for SMS Tools and Text Message API Implementation

Courier delivers easy access to the messaging providers you use, all in a familiar language and with documentation that’s comprehensive and easy to follow. This page will give you an overview of the SMS providers supported by Courier’s text messaging API, so that you can assess if moving towards a messaging management tool is right for you.

Oleksii Klochai

Oleksii Klochai

November 14, 2023

push-notification-api-thumbnail
GUIDE

How to Use a Push API to Send Notifications from your Mobile App

This article dives into the topic of push notifications and explains how to use Courier’s push API to deliver simple, one-time push notifications to Android or iOS systems.

Oleksii Klochai

Oleksii Klochai

November 08, 2023

Build your first notification in minutes

Send up to 10,000 notifications every month, for free.

Get started for free

Email & push notification

Build your first notification in minutes

Send up to 10,000 notifications every month, for free.

Get started for free

Email & push notification

Platform

Users

Content

Channels

Sending

Workflows

Preferences

Inbox

Workspaces

Observability

API Status

Changelog

© 2024 Courier. All rights reserved.