Get access to your trial account
Please enter valid Full Name
Please enter valid Company Email
tick greenred cross
Please enter valid Phone Number
Please choose valid Usecase
Please enter valid Detailed Requirement
By Creating an Account with Plivo, you agree to the Plivo’s Terms of Service and Privacy Policy
Thank you icon
Thank you for your submission.

Volume pricing starts at 200,000 units/ month. For lower volumes, check our standard pricing

Thank you for your interest in Plivo.
Unfortunately, based on the information you provided, we are unable to provide service at this time.
We apologize for any inconvenience this may cause and appreciate your understanding.

Thanks for your interest in Plivo. We have two account options available to meet customers’ varying needs:

  • Self-service: no commitment, standard pricing, free basic support.
  • Committed spend agreement: guided implementation, premium support options, and discounted rates. These packages involve an annual contract starting at $750 a month.
Based on the information that you provided, a self-service account seems like the right fit for your business. Use the links below to get started:
If you’d like to discuss a committed spend agreement, please provide us a bit more information by filling out this form.
Oops! Something went wrong while submitting the form.
Fill out Calender form
You’re all set!
Thank you. We've received your request.
Our team will contact you shortly to get you started.
Featured

AI Voice Agents - The Complete Guide to Voice Chat (2025)

Nov 23, 2025
7 mins

Learn everything about an AI voice agents, its benefits, implementation tips, and the AI voice chat applications for business success.

Longer wait times, high call volumes, and language barriers in call centers often frustrate customers. Complex interactive voice response (IVR) menus only add to the problem, leading to customer dissatisfaction. That’s why companies are adopting smarter self-service solutions like artificial intelligence (AI) voice agents. In fact, experts predict the voice bot market will reach $98.2 billion by 2027, showing a clear trend toward smarter solutions to improving customer experience.

AI voice agents technology combines Natural Language Processing (NLP), machine learning, and voice recognition to transform customer interactions. It provides quicker, more efficient service and improves the overall customer experience.

In this guide, we'll explore what AI voice agents are, their key features, practical use cases, and tips on how to implement a voice agent in your business.

What is an AI voice agent?

An AI voice agent is a two-way conversational tool that communicates with the customer. It automates inbound and outbound calls without human intervention and transfers calls to a human agent when needed.

The biggest advantage? Callers can navigate an IVR by speaking naturally, without listening to long, complex menus or pressing numbers on a keypad.

Popular AI voice agent examples include Apple's Siri, Google Assistant, and Amazon's Alexa. These tools simplify interactions, provide instant answers, and automate tasks. In contrast, advanced bots like IBM’s Watson Assistant and Microsoft’s Cortana handle customer support, sales inquiries, and internal communications.

Types of AI voice agents

Here’s a breakdown of the four main types of AI voice agents and how they can benefit your business:

Rule-based AI voice agent

Rule-based voice agent use predefined sets of questions and rules to offer answers or perform tasks. Such voice agents handle routine tasks and customer FAQs. They answer all queries that fall under the if-this-then-that logic.

For example, an e-commerce site using a bot to guide customers in checking their order status or a banking site handling routine inquiries like balance checks, bill payments, transaction histories, etc.

AI-assisted voice agent

AI-assisted voice agents use machine learning and natural language to interpret conversations so they can analyze the context and grasp what the speaker means. This makes them far more capable and user-friendly than the conventional, rule-based voice agents.

Let’s suppose a user asks Alexa, 'What's the weather tomorrow?' and then follows up with, 'How about next week?' it remembers the context. This adaptability means customers don’t have to repeat themselves, creating a more contextual customer experience.

Conversational AI voice agent

Conversational voice agents make conversations using natural language. They’re more nuanced than AI-assisted voice agents as they can handle complex conversations using everyday language to create more personalized interactions.

Source

Google Duplex, and IBM Watson Assistant, are examples of conversational voice agents. They can make phone calls, make reservations, and handle natural conversations with a human-like tone.

Voice-activated voice agent

These bots use voice commands to answer practical questions and perform routine tasks. They are more flexible than personal voice agents that adapt to speakers and perform customized tasks.

Such bots serve as digital assistants to AI-assisted bots like Siri.

How does an AI voice agent improve customer engagement?

A customer calling your sales team wants to feel valued and understood. An AI voice agent does that. It puts the customer at the center, creating a better experience and driving business benefits as a result. Let’s understand it with a few use cases. 

Use case: Get a quick update on order status, 24/7

Source

Assuming the AI voice agent is integrated into your CRM, it greets the customer by name. Instead of navigating through a branched IVR to get their order status, the customer can simply say ‘order status’ and the voice bot pulls out the order details from the CRM and gives the user a real-time update within seconds.

Sheraz Ali, the Founder of HARO Links Builder states that their voice agent managed over 30% of customer interactions in one of their company projects and drastically reduced wait times.

“It also improved our response efficiency and led to a 20% increase in customer satisfaction scores and a reduction in operational costs within three months.” 

Benefits:

  • Decreased waiting time.
  • Limited IVR menu navigation.
  • No human intervention is required.
  • Quick response times.
  • Reduced business costs.
  • Tangible increase in customer satisfaction.

Use case: Improve language learning for students 

Source

A language learning platform uses a voice agent to provide real-time translations and personalized tutoring. So the voice agent instantly supports students in any subject by translating and clarifying complex terms in their preferred language.

Benefits:

  • Reduced requirement for multilingual staff.
  • Increases inclusivity as the bot answers in the user’s preferred language.
  • Language barriers are removed.

Use case: Improve patient outcomes in healthcare

Source

It's easy to miss appointments or forget to deliver prescriptions to the patient’s home timely. A healthcare service can employ a voice agent to deliver personalized care and offer preliminary health assessments, medication reminders, and easy appointment scheduling, all according to the individual patient's needs.

Benefits

  • Saves time by streamlining appointment bookings.
  • Ensures medication adherence with timely reminders.
  • Reduces workload for healthcare providers with automated support.

Use case: Streamline routine financial services 

Source

Once integrated with the banking system, the voice agent automates routine financial tasks, provides instant account information, processes transactions, and delivers personalized financial advice around the clock.

Benefits:

  • 24/7 access to financial services without wait times.
  • Improves customer experience with quick, accurate responses.
  • Automates routine tasks, freeing up staff for complex queries.
  • Provides personalized advice to improve financial decision-making.

Use case: Get personal shopping assistance  

Source

An e-commerce platform can use a voice agent to assist customers with product selection, provide personalized recommendations, and automate the sales process from start to finish.

Benefits:

  • Delivers a personalized shopping experience 24/7.
  • Boosts sales with customized recommendations.
  • Reduces cart abandonment by guiding customers to checkout.
  • Improves customer satisfaction with fast, accurate service.

Features of an AI voice agent

To understand why voice agents are so effective, let’s look at the key features that improve the overall customer service experience while streamlining business operations.

The best voice agents for businesses come equipped with:

Natural language understanding (NLU)

An AI voice agent understands user queries by converting speech into text using AI and NLP. It then forms an appropriate response and converts it back into speech using text-to-speech (TTS) technology. This ability to understand and respond in natural, conversational language sets AI voice agents apart from traditional IVR systems, which rely on rigid, menu-based responses.

Source

Personalization capabilities

Customers want quick, personalized responses to their queries, unlike complex IVR systems that frustrate them with lengthy menus. An AI voice agent offers contextual conversations, adapting to the user’s intent. It detects speech cues, skips irrelevant interactions, and also transfers calls to the right agent.

Hence, when comparing voice agents to IVRs, the bot's ability to offer personalized interactions like a human outshines communication systems that follow even the best IVR practices.

Multi-language support

AI voice agents break down language barriers, supporting multiple languages to provide a more inclusive and accessible customer experience. Businesses can easily connect with diverse customer bases across the globe.

For instance, Plivo supports speech recognition in 27 languages and their regional variants. 

{{cta-style-1}}

Integration with other platforms and services

AI voice agents easily integrate with platforms like customer relationship management (CRM) systems, Enterprise resource planning (ERP) tools, and ticketing software. They access and update customer data in real time to ensure accuracy.

These bots also pull relevant details, automate follow-up actions, and sync with communication channels like email or chat. This creates a personalized and consistent customer experience across all touchpoints.

Benefits of voice agents

Let’s now look at the benefits of AI voice agents.  

Enhanced user experience

Many businesses have concerns over the quality of a voice agent for customer service. However, a voice agent answers queries quickly regardless of the time of the day. Speedy, reliable answers are important to providing excellent service, making voice agents an invaluable tool for businesses looking to improve customer satisfaction.

Additionally, businesses can:

  • Handle routine queries and common tasks faster than human agents.
  • Remove the need for users to navigate complex IVR menus.
  • Manage high-volume calls without errors.

Better cost efficiency

An AI voice agent doesn’t just save time, it also saves money. It boosts user satisfaction and reduces support times by automating repetitive queries. This frees up staff for higher-value tasks, and interacting with customers after hours has improved lead conversion.

The direct benefits to businesses are:

  • Reduces the need for a larger customer support team.
  • Allows human agents to focus on complex, high-value inquiries.
  • Engages users outside business hours to boost marketing return on investment (ROI).
  • Lowers training costs and minimizes the risk of providing incorrect information.

Accessibility for users with disabilities

With over one billion people living with disabilities worldwide, voice agents make services more inclusive. They enable hands-free, accessible interactions, allowing customers with visual, motor, or cognitive impairments to engage with the business easily. This not only improves customer satisfaction but also broadens the company’s reach to a more diverse audience.

Data collection and analysis for improved services

Voice agents don’t just serve customers — they also gather insights. Use this data to analyze data and improve services, personalize marketing efforts, and make more informed business decisions.

24/7 availability

Unlike human agents, voice agents are always accessible. They ensure customers get help whenever they need it, contributing to a more consistent and reliable customer experience.

Future of AI voice technology

As IBM's data engineer, Chris Hay puts it, "We're entering an era where every mom-and-pop shop can have the same level of customer service as an enterprise." This statement captures the transformative potential of voice recognition technology.

AI voice chat applications benefit businesses of all sizes by delivering top-tier customer experiences. Tech giants are already paving the way. Microsoft has updated its Copilot AI with advanced voice capabilities, allowing it to handle complex queries with natural language reasoning, while Meta has introduced voice AI to its messaging apps.

AI voice assistants will move beyond smartphones, integrating into wearable devices like the recently unveiled Meta Orion augmented reality glasses. For businesses handling sensitive client relationships, this could mean smarter, empathetic bots that mirror the tone and approach of a human assistant.

Key upcoming trends:

  • Hyper-personalization: Customized voices and targeted recommendations.
  • Advanced problem-solving: Managing complex queries using natural language.
  • Real-time analytics: Analyzing customer tone for deeper insights.

Yet, challenges remain. Arvind Rongala, the founder of a skill-management solution provider, shares, “There are still issues, especially with data privacy and ensuring interactions are human-like. In addition to resolving problems with bias in training data and regulatory compliance, businesses must strike a balance between automation and personalization. For example, adhering to GDPR regarding the storage of voice data can be challenging, but doing so is essential to fostering trust.”

Ultimately, businesses need to prioritize data security, explore multi-device integration options, and develop stronger contextual understanding for natural interactions.

Launch an AI voice agent with Plivo

Any scaling business needs a voice agent that's easy to integrate, globally accessible, and cost-effective without sacrificing quality.

Plivo checks all these boxes, offering seamless integration, seven global points of presence for low-latency interactions, and competitive rates starting at just $0.0040 per minute. It's ideal for businesses willing to scale while keeping operational costs in check.

In fact, Plivo can reduce operational costs by up to 40%.

Moreover, its commitment to reliability is backed by a 99.99% uptime guarantee, with failover capabilities that switch within two seconds if any disruptions occur.

You can launch voice agents with Plivo using just a few lines of code.

  • Log in to your OpenAI Account: Secure your API key and RealTime API access.
  • Log in to your Plivo Account: Sign up and get a voice-enabled number.

With integration options for leading speech-to-text (STT) and TTS providers like Deepgram and ElevenLabs, you can launch AI voice agents in multiple regions, including India, using local numbers.

Use Plivo-powered voice agents for: 

  • Personal shopping assistance: Offer personalized recommendations, go through product selections, and close sales. 
  • Healthcare automation: Improve patient outcomes with medication reminders, and appointment scheduling, and offer preliminary health assessments.
  • Inclusivity in education: Break language barriers in learning with real-time translations and personalized tutoring across multiple subjects.
  • Routine financial services automation: Provide instant account information, personalized financial advice, transaction processing status, etc. to customers.

With a 24/7 AI voice agent, your business can handle these tasks around the clock, ensuring that customers are never left waiting. Want to improve customer experience with Plivo? Contact us today.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Jun 19, 2025
5 mins

RCS Marketing 101: Your Complete Guide

Discover how RCS marketing delivers rich, branded messages that drive engagement for your business.

SMS marketing works, but let’s be honest: it feels a bit outdated compared to modern apps.

But what if you could send rich, interactive messages with branded content, images, buttons, and carousels straight to your customers’ native messaging apps?

Rich communication services (RCS) makes that possible.

If you’re ready to explore how RCS marketing can transform your engagement strategy, this guide will walk you through everything you need to know. Let’s get started.

What is RCS marketing? 

RCS marketing uses rich communication services to send interactive, branded messages through a customer’s default messaging app. It’s a modern upgrade to SMS that lets businesses share images, buttons, carousels, and more — all without needing third-party apps.

A user on Reddit summed up this perfectly:

Screenshot of a Reddit comment explaining what RCS is
RCS explained by a Reddit user

RCS lets you send messages that are visually branded with logos and colors while remaining interactive. This turns static updates into an app-like experience inside a message.

This shift is part of a broader industry move, led by Google and backed by major mobile carriers, to upgrade messaging infrastructure and make RCS the default standard on Android devices.

As support continues to grow, businesses are adopting RCS as part of their customer engagement strategy. Platforms like Plivo make that adoption easier with a reliable, enterprise-grade gateway to deliver rich, reliable RCS campaigns at scale.

RCS vs. SMS marketing: A quick comparison

Marketers today are looking for ways to deliver more interactive and visual communication, and RCS is clearly leading the way.

While SMS still works well for simple alerts, it lacks the creativity and engagement that RCS marketing offers.

Let’s take a quick look at RCS vs. SMS marketing.

Key feature SMS marketing RCS marketing
Message length Limited to 160 characters; with longer messages split Up to 8,000 characters in a single message
Multimedia Supports only plain text and links; needs MMS for multimedia Natively supports high-resolution photos, videos, audio, and GIFs
Security and verification No built-in sender verification Includes verified sender profiles with business name, logo, and custom colors
Read receipts No standardized way to know if a message was delivered or read Provides delivery and read receipts for real-time engagement tracking
Typing indicators Doesn't show when the other party is typing Displays typing indicators, creating a more conversational feel
Interactive buttons Not supported; calls to action (CTAs) are limited to plain text links Allows interactive buttons with predefined replies and actions
User experience Static, text-heavy, and transactional Dynamic, visually rich, and conversational — feels more like a mobile app
Analytics and reporting Basic delivery tracking (if supported by carrier) Advanced analytics: opens, clicks, conversions, and user behavior tracking

4 key benefits of RCS marketing

RCS marketing makes messaging feel more natural for both you and your customers. And since you can see what’s working and what’s not, it’s easier to pivot your strategy and get better results.

Here are its four key benefits.

1. Improved user interaction

One of the biggest advantages of RCS marketing is how seamless it makes the experience for your customers. Instead of typing out replies or clicking a link to open a website, users can just tap a button right inside the message.

Want them to book a demo, check order status, or browse products? It’s all possible with just a tap.

Fewer steps mean less effort, and that leads to more people following through. In fact, individuals spend up to 37 seconds engaging with RCS messages, which is a lot longer than most other types of mobile messaging.

 Image showing the engagement results of RCS messaging
People engage more with RCS than any other platform

That extra time and interaction can make all the difference when you’re trying to convert interest into action.

2. Consistent brand experience

RCS marketing doesn’t just tell people who you are — it shows them.

Verified business profiles help people know they’re getting messages from the real brand. Every message shows your brand’s logo, name, colors, and a checkmark. These small details make it clear that the message is coming from a genuine source.

Image showing that MAYI - HOMES sends a verified RCS message with branding
Verified RCS message from MAYI - HOMES

This consistency matters because 88% of people are more likely to buy from a brand they trust.

3. In-depth analytics

With RCS marketing, you can track open rates, button clicks, and how people interact with each part of your message.

You get clear visibility into what’s working and where users are dropping off. 

This makes it much easier to measure the return on investment (ROI) and fine-tune your campaigns. The more you understand how people engage, the better you can shape your messaging for results.

4. Higher conversion potential

RCS marketing makes it easier for customers to take action — whether that’s browsing products, booking a service, or making a purchase — all within the message itself.

With fewer clicks and no need to switch apps, the path to conversion feels effortless. And when it’s that easy, more people follow through.

For example, EaseMyTrip used RCS to run a post-COVID travel survey. They added quick-tap answer options and followed up with a thank-you coupon. The campaign saw a 4x higher click-through rate than email, 10x more survey completions, and a 2.7% increase in conversion rate.

5 major use cases of RCS marketing

Here are five major use cases showing how brands are using RCS marketing effectively.

1. Product promotions

RCS makes product promotions feel more like browsing a store than reading a message. Brands can send image carousels that customers can swipe through to explore new arrivals, check product details, and see what’s available without leaving their messaging app.

Verified RCS message highlights a 25% off promotion on all items
Verified RCS message from Daily-donuts

Example: A fashion retailer promoting its spring collection could send an RCS message featuring a carousel of outfits with styled images, prices, and buttons like “View Lookbook” or “Shop Now.”

Tapping a button could open a mini product page inside the chat, letting customers browse and buy without switching apps.

2. Abandoned cart reminders

The average cart abandonment rate is over 70%, which means most shoppers never make it to the finish line. RCS marketing can help bring them back by making the reminder more engaging and easier to act on.

You can send a message that shows exactly what they left behind, along with a clear button to complete the purchase. It’s visual, straightforward, and the entire experience stays within their messaging app.

Example: A home electronics store could follow up with customers who left a pair of wireless earbuds in their cart. The RCS message might include a product photo, the price, and a “Buy Now” button that takes them straight to checkout.

3. Appointment confirmations and reminders

A PhD thesis from Manchester Metropolitan University found that forgetfulness is the most common reason people skip their appointments.

RCS makes it easier for both businesses and customers to stay on the same page. You can send a message that shows the appointment details along with a simple calendar view. Add buttons to confirm, reschedule, or cancel — all within the chat.

Image depicting an interactive RCS booking confirmation message
Booking confirmation via RCS with quick action buttons

Example: A dental clinic could use RCS to remind patients of upcoming cleanings. The message might show the date, time, and location of the appointment, plus a “Confirm” button and options to “Reschedule” or “Cancel.”

Patients can respond instantly, helping the clinic manage its schedule more efficiently.

4. Customer surveys and feedback

Getting feedback is important, but most customers lack the time or patience to complete lengthy forms. RCS marketing makes it easier by allowing brands to ask short, targeted questions and receive quick responses.

Plus, the rich features of RCS let you include images, ratings, or multiple-choice options, making feedback feel more like a conversation.

Example: A restaurant could send an RCS message after a meal asking customers to rate their experience with simple buttons like “Excellent,” “Good,” or “Needs Improvement.”

The message might also include a photo of the dish they ordered and a quick question like, “What did you like most?” This quick interaction makes it easy for customers to respond and gives the restaurant valuable insights.

5. Customer support follow-ups

After a support request is resolved, following up shows customers you care and helps close the loop on their experience. But if the follow-up message gets buried in an email inbox or goes unnoticed, that opportunity to connect is lost.

With RCS marketing, you can send a quick message to check if everything’s working fine. You can include helpful buttons like “Change Password,” “Manage Account,” or “Talk to Support.”

Support bot provides instant replies and follow-ups for customer queries
AI-powered support for account management

RCS marketing myths and realities

Despite RCS marketing’s growing adoption and proven results, some common misconceptions still hold businesses back from trying it. Let’s look at a few of the biggest myths and what’s actually true.

Myth 1: RCS marketing is too expensive

At first glance, RCS business messaging can seem like a pricey upgrade. Rich visuals, tap-to-action buttons, and branded layouts look premium, so it’s easy to assume they come with a hefty cost.

But cost alone doesn’t tell the full story.

What you get in return matters more. RCS drives significantly stronger engagement with higher click-through rates, increased interactions, and better overall outcomes.

Take Club Comex, the loyalty program of North American paint brand Comex. They sent two rich and interactive RCS campaigns to their members and saw a 10x higher click-through rate, which helped increase revenue by 115%.

That’s the value side of the equation. Better targeting and richer content mean more people click, engage, and convert.

Myth 2: RCS marketing doesn’t reach enough users to be worth it

This concern made sense in the early days of RCS, when adoption was still catching up. But the landscape looks very different now.

In June 2024, the 12-month growth of RCS users reached 36.3%, showing faster uptake than other messaging channels. More Android devices support RCS by default, and it’s being rolled out across more networks globally. Even Apple has announced support, which means RCS is on track to reach a massive number of smartphone users worldwide.

With that kind of growth and widespread support, the hesitation around RCS is starting to fade. Brands can confidently invest in RCS marketing knowing it will connect with more customers than ever before.

Myth 3: RCS gets treated like spam and ends up ignored just like emails

Unlike email, RCS messages appear directly in the user’s primary messaging app alongside personal conversations. They include rich media and interactive elements, making them more engaging and less likely to be ignored.

This creates a more natural, conversational experience that drives higher open and response rates than traditional marketing channels.

Why choose Plivo for your RCS marketing needs

With RCS, you can turn simple messages into rich, branded conversations that feel more like chatting than broadcasting.

Plivo gives you the tools to make that shift without the hassle. From verified messaging to smart automation, everything works together to help you connect better and respond faster.

When combined with AI Agents and a unified customer data platform, RCS becomes more than just messaging. You can deliver personalized experiences at scale, automate everyday interactions, and keep conversations flowing without lifting a finger.

Here’s what you get with Plivo’s RCS API:

  • Real-time personalization: AI Agents tailor conversations using customer profiles and behavior triggers to improve engagement and conversions.
  • Multi-channel fallback: If RCS isn’t supported, messages automatically switch to SMS to ensure delivery and maintain consistent communication.
  • Conversational automation: AI Agents handle FAQs, process orders, schedule deliveries, and route complex queries within RCS.
  • All-in-one messaging platform: Manage RCS, SMS, WhatsApp, Voice, and more from a single dashboard.
  • Reliable performance: 99.99% uptime and global infrastructure keep your campaigns running smoothly.

With Plivo’s no-code tools, you can quickly launch AI-powered RCS messaging across channels and deliver a consistent customer experience from day one.

See how you can launch your first RCS marketing campaign with Plivo by requesting a demo today!

Jun 19, 2025
5 mins

WhatsApp Agent Setup: How to Launch AI-Powered Conversations at Scale

Learn how WhatsApp agent setup works using Plivo to launch AI-powered, no-code agents that handle support, sales, and engagement at scale.

Your customers are on WhatsApp but are your agents?

If you’re still relying on manual replies, scripted chatbots, or email follow-ups, you’re leaving response time and revenue on the table.

The smarter path? AI-powered WhatsApp agents. They’re full-service, no-code agents that can resolve issues, qualify leads, and send personalized offers 24/7.

In this guide, we’ll walk you through WhatsApp agent setup using Plivo and understand how these agents help you automate conversations that convert.

What is a WhatsApp AI agent?

A WhatsApp AI agent is an automation designed to operate over the WhatsApp Business API. Unlike scripted bots, agents are built to understand intent, pull in context from your internal systems, and complete business tasks like answering account-specific questions or initiating transactions.

Plivo’s WhatsApp AI agents can be trained to use your brand voice, integrated with your CRM or helpdesk, and customized to handle specific use cases, such as subscription renewals, cart recovery, refund processing, or customer onboarding.

They are accessible through a no-code interface and support a multilingual, omnichannel customer experience across WhatsApp, SMS, RCS, and voice.

What you need before setting up your agent

To go live with a WhatsApp agent, you need:

  • A verified Meta Business Account
  • An active WhatsApp Business Account (WABA) tied to a phone number
  • Pre-approved message templates for outbound communication
  • WhatsApp Business API access through a business solution provider (BSP) (Plivo offers this natively)
  • A platform to design, train, and manage agents (Plivo Agent Studio)

Also read: How to Create WhatsApp Message Templates: A Complete Guide

Optional but recommended integrations:

  • CRM (like Salesforce, HubSpot, or Zoho)
  • Helpdesk (like Zendesk or Freshdesk)
  • E-commerce or billing tools (Shopify, Stripe, etc.)

Pro tip: If you want to fast-track API access and template approval, using a BSP like Plivo saves weeks of back and forth with Meta.

Step-by-step: How to set up a WhatsApp agent with Plivo

Follow this step-by-step guide for a smooth WhatsApp agent setup with Plivo.

Step #1: Choose your primary use case and define agent scope

Don’t build a generic bot. Start with why you’re automating. This could be handling support queries, sending order updates, re-engaging inactive customers, or managing subscription renewals.

Image showing users how to build their own lead qualification agent in Plivo
Build a WhatsApp AI agent in Plivo

Plivo provides a library of prebuilt AI agents for common use cases like cart recovery, lead qualification, appointment reminders, and product recommendations. You can choose to use one as-is or customize it to fit your business process. Each agent is compatible with WhatsApp and designed to operate across channels as needed.

Your online pet supply business sells dog food with a typical reorder cycle of 30 days. You want to automate reminders for repeat customers, so they never run out.

The goal is to build a WhatsApp AI agent that:

  • Identifies past purchase dates
  • Sends a timely reminder before the next reorder window
  • Offers a one-click reorder option with a discount
  • Escalates to a live agent if the customer has special dietary questions

Pro tip: If you're unsure where to begin, look at existing interactions on WhatsApp that are repetitive, time-sensitive, or frequently escalated — these are ideal starting points for automation.

Step #2: Build the agent using Plivo’s no-code platform

Since your API access is already set up, you can begin building your agent in Plivo’s Agent Studio. This is a visual, drag-and-drop builder where you create conversation flows using blocks that represent actions, responses, conditions, and triggers.

Image showing WhatsApp AI agent setup in Plivo without code
No-code campaign automation in Plivo’s AI Studio

You can structure your flow to respond to specific keywords, match customer intent, route inquiries to different departments, or escalate to a live agent when needed. Each step in the journey can include media-rich responses like buttons, product carousels, quick replies, and file attachments.

Beyond logic design, you can also configure fallback rules for when the agent is unsure, and add human handoff conditions to ensure escalations happen smoothly with full context transferred to the live agent.

Image demonstrating smart handoff from AI agents to human agents in Plivo
Human handoff conditions in Plivo

Example: In Agent Studio, you set up a trigger to activate the agent 25 days after a customer’s last dog food purchase.

The agent starts with: “Hi Alex! It’s almost time to restock Luna’s Chicken & Brown Rice dog food. Want us to ship it today with 10% off?”

Depending on the customer’s reply:

  • “Yes” triggers a checkout link
  • “No” prompts a snooze option or opt-out
  • “I have a question” escalates to a human agent with the full order history

This step allows you to fully customize the agent’s tone, workflow, and logic to reflect how your brand communicates.4

Example: In Agent Studio, you set up a trigger to activate the agent 25 days after a customer’s last dog food purchase.

The agent starts with:
“Hi Alex! It’s almost time to restock Luna’s Chicken & Brown Rice dog food. Want us to ship it today with 10% off?”

Depending on the customer’s reply:

  • “Yes” triggers a checkout link
  • “No” prompts a snooze option or opt-out
  • “I have a question” escalates to a human agent with the full order history

Step #3: Train your agent with AI

Plivo supports integration with internal systems like your CRM, order management platform, inventory tools, or helpdesk. This means your agent can access real-time customer data, past orders, preferences, and policies to deliver personalized responses.

You can also connect your knowledge base, including FAQs, SOPs, product documentation, or policy articles. These resources train the agent to respond accurately and contextually, without needing scripted answers.

Dashboard image of Plivo’s AI Studio prompting users to import from a file or sync from a website
Import external knowledge from various sources into Plivo

For natural language understanding, Plivo gives you the flexibility to choose the AI model that powers your agent.

Image depicting LLM options for your WhatsApp AI agent in Plivo
Select the LLM that fits your business best

You integrate your Shopify store to pull order dates and product SKUs. You also sync your product FAQ sheet so the agent can answer:

  • “Is this food grain-free?”
  • “What’s the shelf life?”
  • “Can I switch to lamb instead of chicken?”

You power the agent using OpenAI to ensure a natural, friendly tone and multilingual support for your Spanish-speaking customers.

Step #4: Test, launch, and monitor your agent

Once your flow is built and trained, run controlled tests:

  • Check for flow accuracy and intent matching
  • Review how it handles incomplete or unclear inputs
  • Test human handoff and see if the agent transfers the full context
Image showcasing WhatsApp AI agent engagement analytics in Plivo
Monitor agent performance and engagement with Plivo

Plivo’s real-time dashboard lets you:

  • Monitor delivery, engagement, and satisfaction metrics
  • Track where users drop off in conversations
  • Identify areas to improve agent logic or content
  • Compare campaign and agent performance across channels

After launch, your agent keeps learning. As more customers interact, you’ll gather insight to improve how it responds or what paths it offers.

You run a test with 50 loyal customers. The data shows that:

  • 72% clicked the reorder button within three hours
  • 18% asked about switching flavors
  • 10% requested a pause or cancel

You adjust the flow by adding a flavor selection block and a “remind me next week” option. The analytics also show high engagement around 8 p.m., so you shift reminder timings accordingly.

Plivo is purpose-built for WhatsApp AI agent deployment

Plivo’s platform is designed to help you move from idea to live AI-powered engagement without requiring engineering support or external consultants. When you use Plivo for WhatsApp agent setup, you get:

  • Access to prebuilt agents for sales, support, and engagement
  • Intuitive no-code builder (Agent Studio) that puts you in control
  • Deep integration with your business systems for real-time, contextual replies
  • Support for the best LLMs on the market, so your agent is trained with intelligence
  • Built-in compliance with WhatsApp’s policies and global data laws
  • Unified interface to manage messaging across WhatsApp, SMS, RCS, and Voice
  • Enterprise-grade infrastructure with 99.99% uptime and expert onboarding support

Automate outcomes with WhatsApp agent setup in Plivo

Smart WhatsApp automation starts with smart setup. With Plivo's no-code platform, you can automate customer conversations, boost sales, and scale support — all without a development team.

Plivo offers the tools to build agents that reflect your brand, the infrastructure to scale securely, and the intelligence to adapt with your customer needs.

Whether you're trying to cut support wait times, recover abandoned carts, or drive upsells through personalized outreach, a well-built WhatsApp agent can make it happen, and Plivo makes it achievable.

Ready to get started? Request a free trial today!

Jun 19, 2025
5 mins

The Definitive Guide to Automating WhatsApp for Business

Learn how WhatsApp automation can simplify customer communication and scale operations. Know about its key benefits and use cases. Get started today.

Remember when WhatsApp was just a simple messaging app? Launched in 2009, it was a tool for friends and family to stay in touch. 

Fast-forward to today, and WhatsApp has become a global powerhouse with over 3 billion monthly active users. Businesses worldwide leverage WhatsApp to connect with customers, share updates, and provide support.

Many businesses struggle to keep up with the growing volume of customer messages on WhatsApp. Manually handling inquiries, sending updates, or following up on leads can quickly become overwhelming and inefficient. 

This is where WhatsApp automation steps in.

By automating repetitive messaging tasks, businesses can reduce manual workload, respond faster, and deliver more personalized, timely communication. 

In this article, we'll explore what WhatsApp automation is, why it's essential for modern businesses, and how you can implement it to improve customer engagement and operational workflows.

What is WhatsApp automation?

WhatsApp automation is the use of technology to automatically send and manage messages on the platform, especially for business and customer engagement purposes.

It doesn’t require human intervention for every interaction. As a result, businesses can handle customer inquiries, deliver updates, and engage with prospects efficiently.

Image showing WhatsApp with a conversation, highlighting conversational commerce.
A customer engaging with a brand through WhatsApp for shopping -Source

With WhatsApp business automation, you can:

  • Auto-respond to FAQs and reduce ticket volume.
  • Reduce customer support load with proactive messaging.
  • Route complex support queries to live agents only when needed.
  • Send order confirmations and delivery updates automatically.
  • Share return instructions based on customer actions.
  • Run re-engagement campaigns with smart timing.
  • Integrate with Shopify, Magento, and more for real-time updates.
  • Trigger workflows from CRMs or e-commerce platforms.
  • Keep messaging compliant with auto opt-outs and logs.

Here’s a breakdown of the three main types of automated messaging on WhatsApp:

Message Type Description Example
Transactional Messages are triggered by specific customer actions or events. "Your order has been shipped!"
Promotional Messages that promote products, services, or special offers. "Get 20% off your next purchase – limited time only!"
Conversational Automated responses that simulate a two-way conversation. "How can I assist you today?"

Key benefits of WhatsApp automation

By automating routine tasks, WhatsApp can help your business stay responsive and consistent across customer touchpoints. Here’s how it can benefit your business:

Reduce manual workloads and response times

When you automate WhatsApp interactions, every department, from marketing to customer service, runs more smoothly.

By automating routine tasks like order updates, FAQs, and customer inquiries, businesses can significantly reduce the manual effort required.

This means your team spends less time on repetitive tasks and more time focusing on high-priority interactions.

Result: Faster response times and more efficient workflows.

Increases the scalability of customer interactions

As your business grows, the number of customer interactions increases. Automation allows you to scale communication efforts without hiring additional staff or losing the personal touch.

Whether you're dealing with 50 or 5,000 customers, automated responses ensure that each inquiry is handled swiftly and consistently.

Enhances customer experience through personalization

Automated WhatsApp messages can be personalized based on customer data, creating a more relevant and tailored experience.

From addressing customers by name to offering product recommendations based on past purchases, personalization makes customers feel valued. This leads to higher engagement rates and improved loyalty.

End result: Higher customer satisfaction and increased loyalty.

Cost-effectiveness compared to manual processes

WhatsApp automation eliminates the need for large customer support teams and reduces the time spent on repetitive tasks.

This saves on operational costs and also leads to a more efficient allocation of resources.

Pro tip: Monitor your automation metrics regularly to find areas where you can cut costs further without affecting quality.

5  popular use cases of WhatsApp automation across industries

Businesses everywhere are finding new ways to use WhatsApp automation. Here are five popular examples:

1. Customer support

Automating common FAQs and routine inquiries on WhatsApp helps customers get instant answers anytime. This reduces the number of tickets support teams have to handle, letting them focus on more complex problems.

Example messages:

“Hi! How can I help you today? Here are some quick answers: For billing info, reply 1; For plan details, reply 2.”

“We’ve received your request and will get back to you within 24 hours.”

2. E-commerce operations

Order confirmations, shipping updates, and delivery notifications keep customers informed every step of the way. Automating returns and collecting feedback via WhatsApp speeds up these processes and improves customer satisfaction.

Example messages:

“Thank you for your order #12345! It is being processed and will ship soon.”

“Good news! Your package is out for delivery and should arrive by 5 PM today.”

“Need to return an item? Reply ‘Return’ and we’ll guide you through the process.”

3.Marketing and lead nurturing

Automated lead follow-ups ensure timely, consistent engagement with prospects, boosting conversion chances. Also, you can use personalized re-engagement campaigns to help bring back inactive customers with offers or updates tailored to their interests.

Example messages:

“Hi [Name], thanks for your interest! Ready to take the next step? Book a free demo here: [link]”

“We miss you! Enjoy 15% off your next purchase with code WELCOME15.”

“Exclusive offer just for you, [Name]! Check out our new arrivals: [link]”

4.Event management and invitations

Automated WhatsApp invites, updates, and follow-ups keep your audience informed and engaged, boosting the attendance rate. This helps you stay connected and make every event a success.

5.Appointment scheduling and reminders

Timely reminders help customers remember appointments, reducing cancellations and improving the overall experience. Automation makes scheduling easier and more efficient for both businesses and customers.

Example messages:

“Your appointment with Dr. Smith is confirmed for June 20 at 2 PM. Reply ‘Cancel’ to reschedule.”

“Hi! Just a friendly reminder about your hair salon appointment tomorrow at 11 AM.”

“Need to book an appointment? Reply ‘Book’ and we’ll help you find the perfect time.”

Step-by-step guide to implement WhatsApp automation for your business

To successfully implement WhatsApp automation, follow these key steps that cover planning, setup, and optimization. 

Step 1: Define your use cases and goals

Start by identifying which business functions, such as order updates, customer support, or lead follow-ups, will benefit most from automation.

Set clear, measurable goals like: 

  • Reducing response times 
  • Lowering manual workload 
  • Boosting customer engagement 

This will guide your automation strategy and help you track success.

Also, ensure compliance from the start. WhatsApp requires businesses to obtain explicit customer opt-in before sending messages. To stay compliant:

  • Use clear, transparent language when requesting consent.
  • Collect opt-ins through channels like website forms, checkout flows, or click-to-chat ads.
  • Log and manage consent within your systems for audit readiness.

Data privacy and compliance are essential for building trust and maintaining long-term customer relationships.

Step 2: Choose the right WhatsApp business API provider

Select a platform that fits your specific needs. Look for features like:

  • Robust CRM integrations
  • Audience segmentation
  • Flexible automation workflows

These capabilities simplify your communication and scale your efforts efficiently.

Make segmentation a priority, use tagging and grouping strategies to target the right customers with the right messages. 

With smart tagging and grouping, you can:

  • Deliver personalized messages
  • Engage the right people at the right time
  • Improve conversion and retention

Example: Send exclusive offers to loyal buyers and welcome discounts to new customers. Good segmentation enhances your automation and drives better outcomes.

Step 3: Set up your WhatsApp business account

You must set up a verified WhatsApp Business account to use WhatsApp for automated messaging. This includes:

  • Registering your business name and details.
  • Verifying a dedicated phone number.
  • Getting approval from Meta to use the WhatsApp Business API.

This ensures that your business is recognized as a legitimate sender.

Your WhatsApp API provider will typically assist with onboarding, including submitting documentation and setting up the technical aspects. 

Some platforms also offer pre-built tools to help you manage mobile number registration, display name approval, and message template submissions.

Pro tip: To avoid disruptions, choose a phone number that’s not already tied to a personal WhatsApp account.

Step 4: Create and submit message templates

Start by designing message templates for everyday customer interactions, such as:

  • Promotional messages (e.g., limited-time offers)
  • Transactional updates (e.g., order confirmations, delivery alerts)
  • Support messages (e.g., ticket updates or issue resolution)

Each template must follow WhatsApp’s formatting and content policies.

Once your templates are ready, submit them through your WhatsApp API provider for Meta’s approval. Only approved templates can be used for proactive messaging.

Step 5: Build automation workflows

Now that your account and templates are ready, it’s time to connect WhatsApp with the rest of your tech stack. Integrate with:

  • CRM systems (to access customer data)
  • Support tools (for query management)
  • E-commerce platforms (to track orders and actions)

Use event-based triggers, like a new order, a cart abandonment, or a support ticket, to automatically send relevant messages.

Additionally, plan for human fallback. Automation can’t handle everything. Build intelligent workflows that escalate to a human agent when:

  • A customer requests help
  • The query is too complex
  • Sentiment detection flags a negative experience

This keeps your support experience smooth, responsive, and frustration-free.

Step 6: Test, launch, and optimize

Start with a pilot campaign to ensure everything runs smoothly.

Track key metrics:

  • Response time
  • Open rate
  • Conversion rate

Use these insights to refine your workflows, improve message content, and adjust targeting.

Best practices for WhatsApp automation 

Following some proven best practices is essential to get the most out of WhatsApp automation. Here’s what you need to know:

Tips for optimizing messaging frequency and timing

To keep your audience interested, it's vital to message thoughtfully and strategically. Here are some quick tips:

  • Avoid over-messaging to prevent unsubscribes.
  • Use analytics to identify when your audience is most active and receptive.
  • Space out messages to keep it natural.
  • Monitor response rates and adjust based on customer behavior and feedback.

Leverage data analytics for campaign performance 

By tracking metrics such as open rates, click-through rates, and response times, you gain valuable insights into what works and what doesn’t. Use this data to refine your messaging, target relevant audience segments, and optimize timing. 

Regularly reviewing analytics helps you make informed decisions that boost engagement and drive better results over time.

Compliance and customer privacy protection

To protect your customers and stay compliant, focus on these key areas:

Compliance What it means Best practise
GDPR Protects the personal data of EU customers Obtain consent, allow easy opt-out, and secure data
SOC 2 Ensures security and confidentiality standards Implement strong data controls and audits
Customer privacy Respect and protect user information Be transparent, limit data use, and maintain trust

Enhance customer communication with Plivo’s AI WhatsApp automation

The growing demand for instant, tailored communication on WhatsApp puts pressure on businesses to respond quickly. Customers expect fast, personalized replies around the clock, and doing this manually often leads to delays, inconsistent service, and missed opportunities. 

Finding a way to scale these conversations efficiently is critical for businesses looking to stay competitive.

That’s where Plivo comes in, an industry-leading omnichannel platform that automates and personalizes WhatsApp conversations, delivering timely responses at scale.

By leveraging Plivo’s WhatsApp AI agents, businesses can manage a wide range of customer communication tasks, from pre-sales inquiries to post-purchase support, without increasing their team size.

Here’s how Plivo can enhance your customer communication:

  • Brand-aligned AI agents: You can customize the AI agents to reflect your brand’s voice, tone, and style. This makes all customer interactions align with your brand’s identity and deliver a personalized experience.
  • AI customer service agent: Plivo’s AI agents work around the clock, ensuring your customers receive timely responses, regardless of the time zone. These agents process orders, resolve support issues, and answer questions.
AI customer service agent managing chats and orders.
Plivo’s AI agents provide 24/7 support, processing orders and answering customer questions promptly.
  • Natural, human-like conversations: With AI agents, you can engage in context-aware conversations, mimicking human interactions. They remember customer preferences and history to provide relevant responses like a human agent would.
  • Simple, volume-based pricing: Plivo charges a flat fee per conversation rather than per message, making costs predictable and scalable. Volume discounts are available to lower your total spend as your messaging needs grow.
Image showing Plivo’s flat-fee per conversation pricing with volume discounts.
Plivo charges a flat fee per conversation with volume discounts.
  • Built-in compliance: Plivo ensures compliance with GDPR, HIPAA, PCI DSS, ISO 27001, and SOC 2 standards.
  • Guaranteed message delivery with fallback options: The platform delivers billions of messages annually and uses SMS and voice fallback channels to ensure your customers always receive important communications.
  • 24/7 availability: Plivo's AI agents provide instant, 24/7 assistance, answering questions, processing orders, and resolving customer issues.
  • Multilingual support: With support for 70+ languages, Plivo’s AI agents can engage with customers globally and offer a multilingual customer service experience.
  • E-commerce platform integrations: Integrate seamlessly with popular e-commerce platforms like Shopify, BigCommerce, WooCommerce, and Magento to deliver a unified customer experience across all touchpoints.

With Plivo’s vast carrier network spanning over 220 countries, businesses can significantly cut SMS costs by up to 70% while achieving threefold returns on investment. 

Many companies using Plivo CX have experienced remarkable results, earning an outstanding $71 for every dollar invested in their SMS marketing efforts.

Book a free demo today and see how Plivo’s AI WhatsApp agents can change your customer communication strategy.

Subscribe to Our Newsletter

Plivo’s cloud communications platform is backed by a robust, reliable, fault-tolerant.

Oops! Something went wrong while submitting the form.
Aug 9, 2017
5 mins

Introducing Browser SDK 2.0

Plivo's SMS API and Voice API enables businesses to communicate with their customers at global scale. Sign up for free now.

Browser SDK

We’re thrilled to announce the general availability of Browser SDK 2.0, the next version of our web SDK, which enables you to integrate the ability to make and receive calls into your web applications. It provides three major new benefits:

  • Web applications that embed the new SDK can now provide details on call quality.
  • The SDK supports collecting real-time feedback from users about things like audio quality, caller ID, and digits entered during the call.
  • The SDK offers better flexibility for the developers to reduce CPU utilization, improve QoS, and configure the application based on user needs.

Let’s look at each of the benefits in a little more detail.

Visibility into call quality metrics

Whenever an application makes or receives a call using Browser SDK 2.0, the application can track metrics such as latency, jitter, packet loss, and mean opinion score (MOS). Tracking these metrics helps in both assessing the quality of the call and debugging issues.

The SDK also detects real-time network issues using these metrics. These issues are provided as events that your application can handle.

Gather user feedback on the call

You can now collect feedback on calls from end users by using the SDK. Feedback is taken in a five-point scale, with predefined reasons spanning across audio quality, caller ID, and digits entered. Since this feedback is associated with a callUUID, it’s easy to aggregate and act on issues that end users face.

New features for developers

Browser SDK 2.0 offers more flexibility to developers to tailor their applications. With the new SDK developers can now:

  • Enable or disable AEC and AGC in Chrome to adjust microphone levels and amplify the audio to make a call clearer. This helps when CPU utilization is required to be low.
  • Enable or disable Differentiated Service Code Point (DSCP), which helps in managing QoS if DSCP is supported.
  • Configure input, output, and ring devices using our Audio Device API.
  • Override the default GeoIP location and explicitly set the user’s current region, which can help Plivo route calls through the nearest servers, thereby reducing audio latency.
  • Detect audio issues such as one-way audio or no microphone access and expose them as events that can be handled by the application.
  • Retrieve additional call details to debug and troubleshoot issues.

Performance improvements

We’ve also made a couple of performance improvements. The SDK now reduces CPU utilization by 15% by using microphone access on demand. And it supports the Opus codec, which is tolerant of network issues, so call participants won’t experience noticeable issues in audio quality even at 20% packet loss in their network.

Browser SDK 2.0 supports Firefox 51 and above and Chrome 55 and above. It’s not backward-compatible with Browser SDK v1. Browser SDK v1 will be deprecated at the end of 2017.

To help you get started with Browser SDK, we’ve built sample applications that demonstrate its features. Visit the Browser SDK documentation page for a complete list of features and information on implementing them.

Jun 19, 2017
5 mins

SMS Merge with Google Sheets and Plivo

Plivo's SMS API and Voice API enables businesses to communicate with their customers at global scale. Sign up for free now.

Integration

Want to send personalized SMS messages to customers right from Google Sheets? You can do it with a little help from Plivo and this SMS automation power sheet. We used Google Apps Script to create an SMS merge feature for Google Sheets.

To use Plivo’s messaging script, you must have a Plivo account, and an SMS-enabled phone number with which you can send messages to your customers. If you don’t have an SMS-enabled number among the numbers on the Phone Numbers page of the console, click Buy Number to get one.

Create a sheet

Now create a new Google Sheet, then click Tools > Script editor to start a new Apps Script project. Copy the content of the scripts.gs file in our GitHub repository and paste it into work area in place of the empty function that Apps Script starts with.

Paste the code

At the top of the file, replace the placeholders XXX.YOUR.AUTH_ID.XXX and XXXXXXXXXXXX.YOUR.AUTH_TOKEN.XXXXXXXXXXX with the Auth ID and Auth Token values for your account, which you can find on the overview page of the Plivo console.

Save the project that contains the Apps Script. Give it any name.

Save the code

Save the code

Now reload the Google Sheet.

Data sheet

You should see two new sheet tabs at the bottom of the file called Data and Template. The Data sheet has several columns, each of which will be populated with the details of the Send Message API response for that specific row.

You can associate placeholders in your message template with custom columns on the Data sheet. The placeholders will be dynamically replaced with values found in custom columns with the same name. You can add as many custom columns as you like. This is at the core of the SMS merge functionality.

Template

The Template sheet contains the SMS template in the A2 cell. Use the names of any custom columns you create on the Data sheet as placeholders in your template.

To try out our sheet, we created placeholders named NAME, COUPON_CODE, DISCOUNT, and STORE, the actual values of which the script picks up from columns in the data sheet with the same names.

Note that placeholders should be enclosed within double braces in the template, as you can see in the image above.

When you’re done, click on Plivo Messaging > Validate Message Template to check for errors in the message template.

Template validation

Put data in the sheet

Enter values for all of the columns that are part of your SMS template.

Put your data

Send messages

When the sheet is ready, click on Plivo Messaging > Send Messages.

Send messages

The code behind the scenes

Now that you’re familiar with how to set things up, let’s see how we put it together using Apps Script functions to make API calls to Plivo to send the messages.

Sending messages

sendMessages(data) takes a list of row data objects and processes each object one by one.

function sendMessages(data){
  var success = 0;
  var failure = 0;
  var TOKEN = Utilities.base64Encode(AUTH_ID+":"+AUTH_TOKEN);
  for(i=0;i<data.length;i++){
    var row = data[i];
    var tempObj = {
      "src":row['SOURCE'],
      "dst":row['DESTINATION'],
      "text":createMessage(row,template),
    }
    var delivered = trySMS(tempObj,row.row,AUTH_ID,TOKEN);
    delivered?success++:failure++;
  }
  popupAlert("FINAL REPORT : \n\n"+(success+failure)+" row(s) processed \n "+success+" row(s) 
  executed successfully \n "+failure+" row(s) encountered error \n For further details please check api 
  details or each row in the sheet. ",false);
  unhideMetaColumns();
}

Let’s walk through this line by line.

var TOKEN = Utilities.base64Encode(AUTH_ID+":"+AUTH_TOKEN);

This line creates a Base64-encoded token that we send with every API call to authorize Plivo API requests.

for(i=0;i<data.length;i++){
  var row = data[i];
  var tempObj = {
      "src":row['SOURCE'],
      "dst":row['DESTINATION'],
      "text":createMessage(row,template),
  }
  var delivered = trySMS(tempObj,row.row,AUTH_ID,TOKEN);
  delivered?success++:failure++;
}

This for loop iterates over the list of objects and does several operations:

  1. Creates a temporary message object containing the source number, destination number, and message text. The message text is generated by the createMessage function, which merges the template with the placeholders. More details on that in a moment.
  2. Attempts to deliver the message via the Plivo API.
  3. Tracks the success and failure counts.

Once we have success and failure counts, we report them.

popupAlert("FINAL REPORT : \n\n"+(success+failure)+" row(s) processed \n "+success+" row(s) executed successfully \n "+failure+" row(s) encountered error \n For further details please check api details or each row in the sheet. ",false);

Creating messages

The createMessage function iterates over all custom headers. If the custom header is found in the message template then that placeholder is replaced with the actual value. At the end it returns the final message.

function createMessage(data,template_data){
  for (var key in data) {
    if (data.hasOwnProperty(key)) {
        template_data = template_data.replace(new RegExp('{{'+key+'}}', 'gi'),data[key]);
    }
  }
  return template_data;
}

Let’s see how it works using an example.

Suppose we call createMessage(data,template_data) where data and template_data are:

function createMessage(data,template_data){
  for (var key in data) {
    if (data.hasOwnProperty(key)) {
        template_data = template_data.replace(new RegExp('{{'+key+'}}', 'gi'),data[key]);
    }
  }
  return template_data;
}

Then createMessage(data,template_data) will return text

Hi Jane Doe, your coupon code for discount of 20% purchase at Plivo is DUMMY20

API call to send message

The trySMS function, which calls the API to send messages, takes four parameters:

  • task, which is the temporary object created by sendMessages()
  • row, the row number for which the function is to run
  • AUTH_ID, the Plivo account Auth ID
  • TOKEN, the Plivo account Auth Token
function trySMS(task,row,AUTH_ID,TOKEN){
   var options = {
    'method' : 'post',
    'contentType': 'application/json',
    'headers':{
      Authorization:"Basic "+ TOKEN
    },
    'muteHttpExceptions':true,
    'payload' : JSON.stringify(task)
  };
  response = UrlFetchApp.fetch('https://api.plivo.com/v1/Account/'+AUTH_ID+'/Message/', options);
  return setStatus(response,row);
}

The first line creates an API call object options that contains all the HTTP parameters required to make the API call to Plivo.

UrlFetchApp.fetch is Google’s predefined function to make API calls. It returns the HTTP response.

Winning with automation

Google Sheets plus Google Apps Script makes an awesome combination that you can use to automate tasks and workflows. We hope you find our SMS sender for Google Sheets useful.

Feb 23, 2017
5 mins

Announcing Improved Voice Quality for Plivo SDK-based Apps

Plivo's SMS API and Voice API enables businesses to communicate with their customers at global scale. Sign up for free now.

Browser SDK

Following the December rollout of our new Voice 2.0 Infrastructure, our team continues to add features and upgrades to improve voice quality. As of today, our Browser SDK supports the Opus codec, which is the best-in-class audio codec for a wide range of voice applications. All applications that use the Plivo Browser SDK for inbound and outbound calling will automatically use Opus as their default codec. Soon we’ll launch Opus support for our Mobile SDK and Zentrunk SIP trunking as well.

Why the Opus codec?

We’ve optimized the opus encoder with reduced complexity on our Plivo network side to reduce decoder complexity on customers’ browsers. We’ve also optimized sampling rates, leading to decreases in browser sampling frequency and thus providing better performance on the browser. All of our optimizations also save bandwidth.

We’ve captured these audio samples that compare how Opus and the PCMU (G.711) codec deal with varying degrees of packet loss. The first sample, with 0% packet loss, sets the baseline for comparison. With increases in packet loss, Opus’s superiority stands out. Even at 30% packet loss, Opus still delivers comprehensible dialogue.

Packet Loss Audio Samples
0% Opus
PCMU
10% Opus
PCMU
25% Opus
PCMU
30% Opus
PCMU

Opus is also efficient. Instead of the 100Kbps of bandwidth our prior WebRTC SDK codecs used, Opus uses 50Kbps. Your application will experience decreases in jitter, latency, and packet loss, and despite poor network connections, your users will experience better voice quality.

What is Opus?

Opus is an open source audio codec that’s optimized for speech and music transmission over the internet. Audio codecs are software that compress and decompress digital audio signals for transmission. These codecs depend on mathematical algorithms and are graded on their ability to retain audio quality while encoding and compressing audio signals.

Opus is highly effective at reducing bandwidth consumption and CPU usage during audio transmission while maintaining high-fidelity audio signals. It’s known for its ability to handle a variety of VoIP audio applications, including conferencing, help desks, and click-to-call applications.

Why is Opus awesome?

Opus was built to fill the gaps of existing audio codecs, which were not optimized for bandwidth, CPU usage, and the varying bitrates and frame sizes that are needed for next-generation WebRTC-based audio applications. Even though Opus is not new, its high quality and low latency performance have propelled its popularity among applications that use WebRTC. Google’s Chrome browser has adopted Opus as its default codec, and Firefox, Opera, and Chromium browsers all support Opus for WebRTC as well. Because of this broad support, more and more WebRTC applications have been adopting Opus to transmit speech over the internet.

Here’s how Opus stacks up against other popular codecs, per its creators Jean-Marc Valin (Mozilla/Xiph.Org), Koen Vos (vocTone), and Timothy B. Terriberry (Mozilla/Xiph.Org). As illustrated below, Opus has the lowest delay (26.5ms by default), flexible bitrate, and a broad range of bandwidth support (narrowband to fullband), and it’s optimized for real-time communication.

Chart opus-codec-support-comparison

Extreme audio optimization

Opus can adjust bitrate, audio bandwidth, and frame size dynamically on live calls. This support for a range of bitrates, frame sizes, audio bandwidths, sampling rates, and multistream frames ensure that a wide variety of applications can use Opus to transmit audio. This flexibility allows Opus to compensate for varying internet speeds and issues that users could experience without notice. For example, if a user has a congested Wi-Fi router or experiences low network bandwidth, Opus can automatically and seamlessly switch to a lower bitrate for smaller bandwidth consumption.

Errors and packet losses are unavoidable when complex systems interact. Opus has many features and strategies to mitigate poor audio quality during low network connections.

Reduced jitter

Ideally, in a perfect high-bandwidth, low-latency environment, the network should deliver a steady stream of packets on a continuous basis. However, even if audio data is being transmitted and played in the right order but not played to the exact timing, sound distortions can occur. Here’s an illustration comparing a steady stream of packets during zero congestion versus the same audio transmission (i.e., same packet stream) in a congested environment.

Flow chart of jitter vs no jitter comparison

VoIP applications can experience a lot of jitter because high fidelity audio requires high bandwidth. However, even in the event of packet loss, Opus has built-in features such as Packet Loss Concealment (PLC) and dynamic frame sizes to mitigate the symptoms and detection of jitter by the human ear.

When voice is transmitted over IP, packet loss can occur during decoding. Opus can use PLC to mask the effects of packet loss. When the codec detects that a packet is missing, Opus can use several PLC strategies to hide gaps in lost information. Opus can replace lost speech frames with zeros (i.e., zero insertion), reconstruct missing gaps by repeating a portion that has been successfully received (i.e., waveform substitution), or use speech models and algorithms to fill gaps in speech (i.e., model-based methods). These strategies are especially important for calls to and from areas of low bandwidth networks or Wi-Fi congestion.

Lower latency

The human ear can detect latency greater than 250ms. While 300ms is considered industry wide as poor latency, the International Telecommunication Union recommends that latency should be kept below 150ms to ensure that symptoms of poor voice quality doesn’t affect calls. Our platform is optimized to deliver connectivity under 50ms to all customers around the globe, and support for high value audio codecs such as Opus plays a large role. Opus solves latency issues by supporting variable and constant bitrates and being able to adjust bitrates dynamically.

  • Support for variable bitrate (VBR) and constant bitrate (CBR). Voice transmission requires a variable bitrate — the ability to change bitrate dynamically to adapt to the audio being encoded. VBR can help achieve a lower bitrate for the same voice quality, which means that it can consume less bandwidth than CBR, leading to improvements in audio quality.
  • Dynamic bitrates from 6Kbps to 510Kbps. Opus will adjust its bitrate between 6 to 510 kilobits per second (Kbps) according to packet loss and round-trip time (RTT) reports during live audio transmission. If an audio call is experiencing increased packet loss and long RTT, then Opus will automatically switch to a lower bitrate to compensate and reduce congestion. The ability to change bitrates dynamically ensures that applications consistently deliver high voice quality and clarity.

Better packet loss concealment

Mitigating packet loss is especially important in real-time communication, because there’s no time to resend missing packets. Even low levels of packet loss can cause unnecessary breaks in audio; when packet loss is severe, complete sentences could be missing. Even though Opus cannot alleviate packet loss, it can mask the symptoms with reconstruction algorithms like forward error correction (FEC) and other PLC strategies.

  • Forward error correction (FEC). FEC can improve audio quality because it can reconstruct a missing packet from information from neighboring packets that were previously or subsequently transmitted.
  • Flexible error propagation. In the event of packet loss, other audio codecs utilize long-term prediction (LTP) filter states that spend more bits throughout the packet, which requires significant increases in bitrate and delay. To mitigate this, Opus reduces LTP filter states to the beginning of a packet, spending more bits only during the first pitch period, but saving bits throughout the packet transmission. This decreases potential voice quality issues and allocates more bandwidth to transmission.

Reduced audio bandwidth

Bandwidth is the amount of information that can be transmitted over a period of time. The larger the bandwidth the more data can be transmitted. Increasing bandwidth can lead to better audio quality. Strategies for better utilizing bandwidth include transmitting more data each time, transmitting the same amount of data faster, or reducing the amount of data that needs to be transmitted. Opus deploys discontinuous transmission (DTX) to reduce the amount of data being transmitted during periods of silence.

Most audio calls have intermittent pauses and periods of silence, therefore by reducing the packet rate during silence can save bandwidth and CPU usage. DTX give Opus the ability to detect silence and reduce packet rates when no one is speaking. Then, when audio resumes, Opus can increase the packet rate seamlessly.

Opus’ adaptability and robustness makes the codec suitable for VoIP applications running on stand-alone software or web browsers. See for yourself and let us know what you think.

Feb 16, 2017
5 mins

Introducing SMS Error Codes: Better Visibility into Your SMS Delivery

Plivo's SMS API and Voice API enables businesses to communicate with their customers at global scale. Sign up for free now.

SMS API
Error Codes

Plivo now provides detailed SMS error codes for every outbound SMS text message that fails to be delivered. These error codes can help you understand the reasons for delivery failures and troubleshoot issues with your outbound SMS messages.

Message states and SMS error codes

When you send an SMS message from your application to Plivo’s servers, we queue it up to send it to our carriers at an appropriate rate that meets their compliance requirements, and we pass your application the message_state queued. Upon successfully sending your message to our carriers, we update the message_state to sent. Once the destination carrier reports that it has received the message, we update the message_state to delivered.

This, of course, is the ideal scenario in which everything works as it should. However, in systems involving multiple layers, where messages may traverse multiple downstream carriers before delivery, errors can occur — and when they do, we wanted to have an easy way for our customers to diagnose and resolve any issues. That starts with identifying the source of the problem, which is where SMS error codes come in.

Plivo sends SMS error codes at each stage of the delivery process, depending on the message_state returned. That is, if delivery is unsuccessful when we tried to deliver a message to a carrier, the message_state will be updated from queued to failed and an accompanying error_code will be given.

If a message is successfully sent to the carrier, it can still hit roadblocks that can cause the SMS to fail. In this scenario, the message_state would change from queued to sent, then to undelivered, which is also accompanied by an error_code.

Here’s an illustration of the delivery path and the message_states that can occur.

When there are issues with SMS delivery, some carriers alert us with a delivery report that may include information about the failure. However, we work with carriers in hundreds of countries, and each of them has a different method and frequency of reporting information about SMS failures. Some carriers send error codes for nearly every undelivered SMS, while others send them for fewer than 5% of undelivered messages.

Because there’s no standard for reporting error codes and not all carriers support delivery reports, we can’t control the delivery, quality, or frequency of error reporting. However, for the error codes we do receive, we wanted to build a model so that our customers could have a standardized way to identify delivery issues. To do that, we aggregated all the error codes from each carrier and mapped them to a set of error code categories that capture the entire spectrum of potential issues with SMS deliverability. Now, when a carrier reports an SMS error while trying to deliver your text message, it’s mapped to one of our standardized SMS error codes.

For every SMS message that you send through the Plivo platform, Plivo now returns a message_state of queued, sent, delivered, failed, or undelivered, and we provide an SMS error code in the error_code parameter when messages have failed or were undelivered.

Message states and error codes are sent to the callbackUrl set in your application. To retrieve the details of a specific message, make an HTTP GET request to the Message API with the message_uuid appended to the BaseURI. Alternatively, visit the Messaging > SMS Logs page of the Plivo console.

Here are the SMS error codes that we return. You can find an updated list of error codes in our documentation. Going forward, whenever your text message doesn’t reach its destination, refer to the SMS error code to identify the issue.

Troubleshooting SMS delivery using API response codes, message_states, and SMS error_codes

Plivo provides error codes at three levels to help you identify exactly where an error occurred. At the most basic level, the standard 200 HTTP status code provides the response to potential errors between your application and our API. If your application receives anything other than a 200 response, there’s likely a bug in your application.

Next, if your application receives a successful 200 HTTP status code, then it’s time to check your message_state. The message_state indicates where the error may have occurred. A Failed status means that your SMS was queued by our systems but failed to deliver to the carrier. If your message_state is Undelivered, then even though Plivo successfully delivered the SMS to the carrier, the carrier failed to deliver the message to the destination. In the event of any failed message states, check the SMS error code for details on the error.

Finally, since not all carriers support delivery reports, some messages that show the Sent message_state could still have errors, so check your SMS error codes if issues persist.

Troubleshooting SMS delivery using API response codes, message states, and SMS error codes

If SMS delivery issues do persist, try these actions.

  • Check that you’ve set the correct “src”and “dst” phone numbers. You could be successfully sending and receiving text messages to an incorrect phone number.
  • Is the destination number roaming outside of their local network? In a few cases, our carriers might not support international roaming. Our carriers send us delivery reports only if their destination carriers do the same, so if the destination carrier never responds back, then our carrier can’t provide a delivery report either.
  • Is the destination number in a Do Not Contact (DNC) list? A few countries (including India) have a DNC list. Because they’re bound by consumer protection regulations, our carriers cannot deliver messages to recipients who have opted in to DNC lists. If a recipient opts out of a DNC list, carriers can deliver text messages normally.

If you continue to have SMS delivery problems despite taking all the necessary actions, please open a support ticket so we can help you resolve the problem. Be sure to include message_uuids of the text messages affected (preferably messages from within the last 72 hours).

Feb 13, 2017
5 mins

The Missing AWS OpsWorks CLI

Plivo's SMS API and Voice API enables businesses to communicate with their customers at global scale. Sign up for free now.

Integration
Open Source
Engineering

We at Plivo need to constantly deploy updates to our infrastructure that consists of large number of servers spread across multiple regions and continents worldwide. Unfortunately, the complexity of this infrastructure requires very specific and scalable deployment tools that were not already available.

The OpsWorks Command Line Interface (CLI) is a deployment tool for managing AWS OpsWorks. We built the OpsWorks CLI because the standard AWS CLI UI does not have any way to perform simultaneous operations across multiple stacks, a logical group of servers that you want to manage together. We have been using our own OpsWorks CLI extensively for the last year and we’re happy to be opening it up to everyone. We hope that DevOps teams already using AWS and especially those that are also using AWS OpsWorks can use our open source CLI to easily manage multiple server instances at once.

What is AWS OpsWorks?

If you’re familiar with configuration management, then you likely already know Chef, the automation platform. OpsWorks is a free configuration management service provided by AWS that uses Chef, but exposes a friendly user interface on top of it. OpsWorks uses Chef to automate how servers are configured, deployed, and managed across your Amazon Elastic Compute Cloud (Amazon EC2) instances or on-premises compute environments. OpsWorks splits your architecture into stacks. For example, for a simple wordpress setup you could have a production and a staging stack, each with a database and a web layer.

Why OpsWorks?

There are many configuration management solutions, such as Chef, Puppet, Salt, Ansible, and the list goes on… But none of those actually come with a user-friendly UI in their community editions. Most of those also require setting up a central server to take care of delivering the configuration to your servers, which is another point of failure that you need to make highly available too.

OpsWorks is free, runs on both EC2 and on premise, and brings you a powerful UI to inspect and maintain your stacks. You simply point OpsWorks at a Git repository or S3 Bucket with your cookbooks (Chef jargon for the files that actually define how your servers are provisioned) and define which files and servers should run. And because this is built on top of Chef, you can use some of the +3,000 existing cookbooks.

Finally, it has an easy to use auto-scaling feature based on CPU, Memory and Disk Usage, and can automatically start new instances to accommodate for higher loads.

What is OpsWorks CLI?

OpsWorks comes with a neat user interface that allows you to manage a stack: start and stop instances, perform configuration updates, deploy code, check the status of a load-balancer, etc. But the UI does not have any way to perform those operations across multiple stacks at once. What if you wanted to run a specific configuration update on all your production stacks? Or update all your database layers across all stacks?

This is where our CLI comes in: with a simple command line, it allows you to do everything you would be able to do on the UI. In addition, you can run your deployments across your whole infrastructure with a smart and intuitive filtering system. Our OpsWorks CLI also comes with an interactive prompt so that you do not have to access the AWS Console for trivial tasks.

asciicast

Features and Benefits

OpsWorks CLI is built with scalability in mind. For example, with the OpsWorks CLI, we can easily run a simultaneous deployment on 20 stacks, while constantly pulling the AWS API to retrieve the deployments’ statuses in real time.

Simple Commands

Relying on the AWS API, we built a set of simple commands to help you easily run commands across stacks and regions. These commands can be used in conjunction with smart filters to quickly identify, setup, update, configure and deploy instances. You can also achieve more complex functionality including looking at past deployments of each stack and monitoring elastic load balancers, check for the health of instances, and much more.

Error Code Error Reason Description
10 Invalid message The message content is blank or exceeds the character limit of 1,600 for messages encoded with GMS or 737 for messaged encoded with Unicode. Note that while we provide a separate error code to indicate that a message is too long, some carriers only send an “invalid message” error and don’t differentiate between blank messages and long message errors.
20 Network error The carrier delivering the text message had network issues. To resolve this, retry at a later time when the carrier network is unaffected.
30 Spam detected One of the most common reasons for SMS delivery failure is carrier-level spam filters. Carriers use systems and algorithms to detect spam content and block it before it gets delivered. Unfortunately, these filters are always hidden, subject to carrier preferences, vary from carrier to carrier, and can be changed without notice.

Another common reason why this error code could be returned is that you may have attempted to send too many messages using long code phone numbers in the US and Canada. Long codes are 10-digit phone numbers and are intended only for peer-to-peer (P2P) communication. If this issue persists, we recommend using short codes for sending bulk messages within the US and Canada. [Editor’s note 2021: Also consider 10DLC.]

If you’re confident that your message content is compliant, retry sending the message. You can also contact our support team to whitelist your message one time with our downstream carriers.
40 Invalid source number The source number you entered is either not in the correct format, not SMS-enabled, or not assigned to your Plivo account. Check the “src” phone number in your application and ensure that it’s in the correct format and has the ability to send text messages. All phone numbers in your application should include country code, area code, and phone number without spaces or dashes (for example, 14155555555 for US or +491155555555 for Berlin, Germany).
50 Invalid destination number The destination number you entered is either not entered correctly, not SMS-enabled, or is a PSTN landline. Check the “dst” phone number in your application to ensure that it can receive text messages. All phone numbers in your application should include country code, area code, and phone number without spaces or dashes (for example, 14155555555). If you’re sending multiple text messages, make sure that the phone numbers are separated with the “<” character (14156667777<14157778888<14158889999).
60 Loop detected The carrier cannot route your SMS because settings in your application set up an endless loop of messages being sent and received between your “src” and “dst” phone numbers. This can occur when two auto-responding SMS applications start to talk to each other and end up in a loop. Carriers detect loops by comparing messages within a predefined period of time to previous messages sent and received.

SMS loops can increase unnecessary spend, so it’s a good idea to create loop filters in your applications, because not all carriers have loop detection.

In some cases, this error code is returned when the carrier determines that it’s impossible to route the message, so it has to be dropped, as it’s being looped between platforms.
70 Destination permanently unavailable The “dst” phone number is not active and there’s no indication of when it will become available. This is a broad error code where the carrier has not indicated the reason for the destination unavailability. Check the “dst” phone number to ensure that it’s correct. Also try sending messages to an alternative number to ensure that all other parts of your application are working.
80 Destination temporarily unavailable The “dst” phone number is not reachable. This is a broad error code, and often the carrier doesn’t indicate the reason for the destination being temporarily unavailable. Possible reasons could include a handset being turned off or out of coverage. To resolve this error, retry your messages at a later time.
90 No route available The carrier and fallback carriers were not able to deliver the SMS message because the route wasn’t available. Carriers don’t offer the reason why a route isn’t available, but since this is typically a carrier issue, you can contact us to find out on your behalf. Include the message UUIDs of the SMS messages affected.
100 Prohibited by carrier The carrier rejected the text message because the network didn’t support the message being sent. This can occur if the destination network doesn’t support SMS.
110 Message too long The message content exceeds the character limit of 1,600 for GSM-encoded and 737 for UTF-encoded messages. Certain characters can increase the message character count significantly. Plivo automatically concatenates messages longer than 160 characters for GSM-encoded messages and 70 characters for UTF-encoded messages. Check our FAQ post on long message concatenation for more details.
200 Source number blocked by STOP from destination number The destination has opted out from your campaign and blocked all messages sent from your phone number. Opt-outs are typically received via text messages with an opt-out keyword of “STOP.” All messages to destinations that have opted out are blocked until the destination opts in with another response. See our FAQ posts about opt-out and opt-in processes.
201 Outbound messages from US toll-free numbers to Canadian destination numbers are blocked Your application is attempting to send text messages from a US toll-free number to a Canadian phone number destination. Unfortunately, carriers limit US toll-free phone numbers to sending text message only to US phone numbers.
1000 Unknown error Delivering your message failed for reasons that are unknown to us and to our carriers. If you notice too many of these, please open a support ticket with us so that we can help you identify the problem. Be sure to include the message UUIDs of recent messages (preferably within the last 72 hours) that were affected.
Command Description
stacks list OpsWorks stacks
deployments list OpsWorks deployments
instances list instances
apps list apps
elbs list Elastic Load Balancers
update update cookbooks
setup run setup recipes
configure run configure recipes
deploy deploy specified app
recipes run specified recipes

Smart Filtering

Any Opsworks CLI command accepts three basic filters: layer, stack, and region. These smart filters also support wildcards and regexes to enable complex filtering logic. For example the command below would match all stacks whose name contain wordpress, and only include their database layer:

Another example is using regexes to check ELBs of two wordpress stacks at once:

Interactive GUI and Interactive Prompt

The OpsWorks CLI also offers an interactive prompt if called without any arguments.

Screenshot image The Missing AWS OpsWorks CLI

How to use OpsWorks CLI?

The OpsWorks CLI accesses the AWS API using your AWS credentials. Once the credentials are configured, you can run opsworks with no arguments to access the interactive prompt. You can use this interactive prompt to accomplish simple tasks including listing stacks, listing instances, inspecting ELBs, updating cookbooks, deploying code, as well as running configurations and setups.

Visit the OpsWorks CLI Github repository for instructions on how to install the OpsWorks CLI: https://github.com/plivo/opsworks.

Screenshot image OpsWorks CLI

What’s next for OpsWorks CLI?

We use our OpsWorks CLI extensively at Plivo, so we’re always looking to build out new features and improvements. One feature on our roadmap is to build a bot and connect it to a real-time collaboration platform like Slack and Hipchat. With a few commands in a chat room, engineering teams can monitor and deploy instances without leaving the conversation. This way, the whole team can be instantly updated with all the changes and deployments across the organization.

Another feature we are working on is rolling deployments. Currently the CLI applies a given command to all the instances of a layer at once (just like what the AWS console). The idea would be to do the deployment instance by instance, taking them out of their respective load balancers first, and then putting them back online.

How do I contribute?

Please visit the OpsWorks CLI github page to report issues and help us make this tool even better.

Jan 25, 2017
5 mins

6 Ways to Retain Your Customers While Migrating SMS Phone Numbers

Plivo's SMS API and Voice API enables businesses to communicate with their customers at global scale. Sign up for free now.

Porting
Phone Numbers
SMS API
Best Practices

Most companies don’t change their SMS phone numbers, but sometimes changes are forced on them. Fortunately, there are a number of things organizations can do to decrease subscriber churn when changing SMS phone numbers.

Businesses may change their SMS phone numbers for various reasons:

  • Combining voice and SMS on the same toll-free phone number. All voice toll-free phone numbers in the US can be enabled with SMS capabilities. Companies can now send and receive SMS text messages on the same numbers they use for voice calling. This means that businesses can opt to combine their subscribers from dedicated SMS virtual phone numbers to a common toll-free phone number. This can provide better branding and lets them more efficiently manage their customer base.
  • Switching from a shared to a dedicated short code. Shared short codes are unreliable by nature. When multiple companies share the same short code, and one company violates short code regulations, the carrier can block the entire short code, so all users of that short code suffer the consequences and experience service disruptions. An increasing number of companies are paying a bit more to switch to dedicated short codes for more reliability and control.
  • Switching from a random to a vanity short code or phone number. Having a memorable phone number can be a great advantage. Even though short codes, with five or six digits, are already shorter than long codes or toll-free numbers, they still need to stand out. One strategy is to switch to a short code whose numbers spell out the company name (827438 for TARGET, for example). Another is to use an easily recognizable number, such as 888222, which Chipotle uses.
  • Switching service providers. Most SMS phone numbers can be ported from one service provider to another, but country and carrier-specific regulations may limit porting, so in some cases businesses must migrate to a new phone number when switching to another provider.

Regardless of which type of phone number you’re migrating to, regulations specify that all SMS subscribers must first opt in to all SMS campaigns. You’re not legally allowed to start sending text messages from a new phone number to your existing customers even if it’s part of the same campaign that your subscribers have opted in to in the past. If you violate any consumer protection laws, then your phone number could be blocked and your company may even be sued by consumers for the violation.

Abrupt changes in your SMS campaign phone numbers can wreak havoc on customer engagement from your subscriber base, especially in a heavily regulated telecom market like the one in the United States. Changing phone numbers can cause subscribers to drop off.

When switching phone numbers, always treat the new phone number as a brand new campaign that each user has to subscribe to again. Here are several tacks you can take to ensure that as you move to a new SMS phone number, your subscribers migrate as well. Not only is retaining your subscriber base important for future marketing campaigns, but reducing churn positively impacts company revenue and the bottom line.

How to retain subscribers while migrating phone numbers

First, a caveat: Not all of your subscribers will opt in for your new campaigns. The techniques we describe here can help migrate a healthy percentage of subscribers to a new campaign phone number, but some will choose to opt out.

Consider toll-free SMS (available in the US)

Toll-free SMS messaging is growing in popularity in the United States. Studies have shown that toll-free campaigns experience better response rates and customer engagement than long codes and short codes, because interactions with toll-free numbers are always free to end users.

Toll-free SMS can also be more affordable for businesses. Toll-free numbers cost only a few dollars and are charged for on a monthly basis, while short codes often cost more than $500 per month and require three months’ payment up front.

Choose a vanity phone number

Whether it’s a toll-free or a short code phone number, having a recognizable, memorable phone number helps you gain and retain subscribers. You can ask your SMS provider to procure a vanity toll-free number with specific digits, and if it’s available, you can typically purchase it for the same price as a regular toll-free phone number and have it enabled within 48 hours.

Many companies have seen higher SMS response and retention rates with vanity short codes as compared to random short codes, especially in competitive markets. Rental fees for vanity short codes, however, are often significantly more than fees for random short codes. You can search for available vanity short codes on the Common Short Code Administration (CSCA) website.

Notify your customers early via web form opt-in

Notify your customers of the transition as early as possible — but remember, a new phone number can receive SMS opt-ins only after it’s activated.

The turnaround time for phone number activation depends on the type of phone number. Long code and toll-free SMS phone numbers can be provisioned quickly. Long code phone numbers can be provisioned instantly if your vendor has an inventory of phone numbers and provides access via an online user interface or API. Toll-free SMS phone numbers in the US may require up to 48 hours for provisioning because a short application is required for carriers to enable toll-free numbers for SMS. By contrast, short code phone numbers can take at least three months to provision because of a complex carrier application process.

Since you can’t receive new opt-ins via SMS until your phone number is active, start using other opt-in mechanisms, including web forms and in-person signups. The best mechanism for opt-in is an online form, because it lets you seamlessly collect new subscriber information and manage your database for your new campaigns. If you’re getting opt-ins in person, use a digitized form to collect opt-ins to minimize human error and eliminate extra time for data entry. You can lead your subscribers to online opt-in forms via:

  • Online advertisements (e.g., Facebook, Google, Twitter, Instagram)
  • Email newsletters
  • Direct mail invitations
  • Offline advertisements (newspapers, banners, posters)

Give incentives for subscribing

Subscriber migration is hard, and even though some users will opt in to a new phone number without any incentives, motivating subscribers with a promotion can go a long way. For example, send your current subscribers a text message with a link to a 20% discount; upon clicking on the link, they can fill out a form to opt in to a new campaign phone number.

Here are a few campaign ideas that can create incentives, add convenience, and make it fun for your subscribers to opt in to a new SMS phone number:

  • Special weekly offers
  • Flash sales
  • Localized offers in their area
  • Surprise offers on special days, such as birthdays or Christmas
  • Direct discounts on purchases
  • Exclusive deals that only this new campaign will get them
  • Notifications for order confirmation, deliveries, and inventory availability

Create urgency about switching phone numbers

If subscriber migration is going slowly, give your subscribers a sense of urgency that if they don’t opt in for the new phone number, they’ll no longer receive promotions. Just remember that if you mention a deprecation date to your current subscribers, you should adhere to that date.

Don’t overlap your communication

As your subscribers migrate from an old phone number to a new one, be sure to unsubscribe them from the old campaign. That way, you can avoid any overlap in communication and maintain clean, reliable subscriber data. Eliminating duplicate messages also improves your user experience and helps keep costs down.

Additional takeaways

Before you implement any of these suggestions or run any new campaigns, seek to understand your subscribers. Find out what incentivizes them the most and the best times to send them information. Here are some additional thoughts on running successful and engaging migration campaigns.

Focus on customer engagement. Regardless of the purpose of your campaign, always plan for long-term customer engagement and offer high-quality content and promotions that align with your product and customer incentives.

Create meaningful content. Aligned your content with your customer engagement strategies and company goals. For example, simple discounts are overdone and don’t offer any engagement mechanisms. However, if you put a discount at the end of an engaging SMS survey or riddle, then the engagement will likely be more memorable and encourage customer loyalty.

Optimize your campaign delivery times. CTIA (Cellular Telecommunication Industries Association) guidelines suggest that all marketing campaigns and promotional messages should be sent between 8:00 a.m. and 9:00 p.m. local time. This not only ensures that your campaigns stay compliant, it also ensures that your messages are read in a timely fashion. Optimal times during the week are typically during the morning commute (between 8:00 and 10:00) and lunch times (between 11:30 and 1:30). During these times, subscribers are typically more receptive to promotional messaging.

Limit SMS frequency for better user experience. To maintain good customer experience, send meaningful messages no more than once a week. Plan your campaigns so that your messages are concise and to the point.

Set a realistic migration rate. Since it’s not realistic to migrate every customer to your new campaign, it’s important to set realistic expectations before the migration begins to ensure that there will be a reasonable completion date and that the migration won’t drag on unnecessarily. Acceptable migration rates can vary across industry and campaigns.

As an example, suppose you’re trying to migrate 10,000 subscribers and have set the acceptable migration rate at 80%. That means that you can deprecate the old phone number when 8,000 subscribers opt in to your new campaign. It also means that you’ve accepted that you’re willing to lose 2,000 subscribers during the migration.

If you’re thinking about migrating phone numbers, have a chat with our customer success team. We can help answer your questions.

Jan 17, 2017
5 mins

2016 Year in Review: 100+ Team Members and 3 Years Profitable

Plivo's SMS API and Voice API enables businesses to communicate with their customers at global scale. Sign up for free now.

Company

2016 was a turning point for Plivo. As we push the envelope in revolutionizing telecommunications, we’re also bringing in new technologies to scale our software infrastructure and build the best customer experience. Our focus for 2016 was to take what we do best and make it the best in the industry. I’m happy to say that it’s paying off.

2016 Year in Review Stats

  • Both Gartner and IDC have recognized Plivo as one of the top three vendors in CPaaS space.
  • Delivered 2 billion voice minutes and SMS messages combined.
  • Increased revenue by 200% to well into double digit millions.
  • Increased customer base by 180%.
  • Increased voice traffic by 150% and SMS traffic by 200%.
  • 2016 marks the third year we’ve been profitable, even with heavy investments and team growth.
  • Surpassed 100 team members.
  • Increased engineering team by 400%, marketing team by 300%, and sales team by 300%.
  • Moved into a new 20,000 square feet office in Bangalore, India. Take a photo tour and read the full details on our New Year, New Office blog post.
  • Launched Zentrunk SIP trunking beta in all countries and toll-free SMS messaging in the United States.
  • Launched Voice Infrastructure 2.0 to improve voice quality in all regions.
  • Added 15 local in-country carriers and added two new data centers: Northern California and São Paulo.

What to expect in 2017

  • More investment in infrastructure improvements for voice and SMS.
  • Connections to more local in-country carriers to improve quality for all products: SMS API, Voice API, and Zentrunk SIP trunking.
  • More investment in marketing and sales teams, to build a larger presence in the market and make a splash about the quality and transparency we bring to the industry.
  • More investment in customer success teams to better support existing customers and streamline new customer onboarding.

All the details

Compared to 2015, we experienced 200% growth in SMS traffic and 150% growth in voice traffic. We delivered more than 2 billion SMS messages and voice minutes combined in 2016. To put this in context, the volume of SMS messages and voice minutes we currently deliver in a week is the same as what we delivered in a month in early 2015. With such significant increases in volume, we took a step back to focus on quality, and the market has noticed. Both Gartner and IDC have recognized Plivo as one of the top three vendors in CPaaS space.

As a company, we decided early on that we won’t compromise on quality. That’s why in 2016, even in the middle of significant growth, we dedicated six months of time and resources to improving our voice quality and positioning our infrastructure for long-term scalability. The result was our Voice Infrastructure 2.0, which features significant improvements to our voice backbone, including new data center locations in South America (Brazil) and US-West (Northern California), improvements in our global network and voice routing algorithm, optimized global routing, optimized intra-region connectivity, and less than 20ms connectivity to carrier peering hubs.

The underlying network of carriers is another big quality-of-service factor that Plivo brings to the table. In 2016, we built a dedicated team to focus on critical carrier relationships, and added 15 new direct connections to local in-country carriers in Germany, the United Kingdom, France, Brazil, Singapore, Japan, Italy, Russia, Turkey, Sweden, Mexico, India, South Africa, UAE, and Spain. With these direction connections, we’ve seen significant improvements in call quality and SMS delivery rates. Going forward, we’ll continue to increase direct connections to local in-country carriers, increase carrier redundancy, and ultimately increase voice quality and SMS delivery in all regions.

All of these quality improvements impact every Plivo product, which means that any new product or feature we release on our platform gains the same high quality of service. Last year, with the release of Zentrunk SIP trunking for all coverage areas, as well as toll-free SMS in the US, we’ve seen quality improvements that led to rapid growth and adoption from new and existing customers. We plan to make more updates to our infrastructure in the next few months to raise the bar on call quality and SMS delivery.

We take a lot of pride in the amazing team that’s helped us get to this point. Naturally as our business grows, our team grows too. We broke the 100 team member milestone this year. Engineering is core to our business, and that team grew by 400% last year. Our sales and marketing teams grew by 300%, and that has been pivotal in our revenue growth. To accommodate this growth, we moved our Bangalore, India, office to a brand new 20,000-square-foot space with a cafeteria, hot desk spaces, lounge areas, large meeting rooms, collaboration rooms, and a games room.

This year marks the third year we’ve been profitable, and our profitability continues to grow even with our aggressive team growth, new office, infrastructure investment, and increases in our marketing budget. We couldn’t have achieved these milestones without our customer base, which grew 180% in 2016. This of course has a direct impact on our annual revenue, which increased by 200% and is leading us well into double-digit millions.

What we’ve learned, and what you can expect in 2017

Sometimes you have to take a step back in order to move forward, and this year we did just that. This year we took a step back from releasing multiple new features and products. Instead, we focused on quality and dedicated a lot of resources and time to improving our infrastructure and carrier connectivity — and it’s already paying off. Our voice quality has improved with faster connectivity, fewer dropped packets, less jitter, and less crosstalk, and our customers have noticed the difference, especially during international voice calls. In 2017, you can expect to see us investing more in our infrastructure and signing on more local in-country carriers to improve quality for all of our products. And we’ll continue to invest in our marketing and sales teams to build a larger presence in the market and make a splash about the quality and transparency we bring to the industry.

Thank you for joining us on this journey to disrupt the telecommunications industry. We plan to bring you many more improvements, features, products, and services that add value to your experience.

If you have any feedback or feature requests, please contact our support team.

Cheers,

The Plivo Team

Dec 14, 2016
5 mins

Announcing Improved Voice 2.0 Infrastructure

Plivo's SMS API and Voice API enables businesses to communicate with their customers at global scale. Sign up for free now.

International
Telephony

Since the beginning, we at Plivo have invested in our infrastructure because we know that a quality backbone is key to providing you and your customers with a great user experience. Today, we’re excited to announce two enhancements to our infrastructure:

  • New data center locations in South America (Brazil) and US-West (Northern California)
  • Improvements in our global network and voice routing algorithm

These improvements will help improve voice call quality by decreasing audio latency and reducing distortion, garbled speech, and intermittent pauses.

Best of all, we’ve already enabled these improvements for you at no extra charge.

New data center locations

We analyze and optimize for data center locations that positively impact inter- and intra-region connectivity. This is why we’ve added two new data center locations: one in São Paulo, Brazil, to handle our growing South America traffic and another in Northern California to facilitate better connections in North America from the West Coast. These new data center locations enable us to provide optimized in-region connectivity with customers and carrier peering hubs.

Improvements in global network and voice routing algorithms

To achieve low latency on voice calls, we’ve made optimizations to help us route calls more efficiently.

To better illustrate how our optimizations have made positive impacts at every step, here’s an example of a call flow on Plivo’s network. Consider a WebRTC call dialing from Rio de Janeiro, Brazil, to a friend in New Jersey, United States. Upon dialing, the WebRTC application connects the caller to the nearest Plivo voice data center in São Paulo. Plivo then routes the call to the Plivo voice data center closest to the destination, which in this case is in Virginia. After that, the call is connected to a local US carrier in New York and then routed to the receiver in New Jersey.

Voice Infra Flow Diagram

Lower edge latency from customer locations for SIP, WebRTC, and Mobile SDK-based endpoints

We’ve made improvements in the underlying infrastructure that helps your SIP, WebRTC, and Mobile SDK-based endpoints connect to our nearest in-region data centers around the world. We’ve reduced latency between the customer location and Plivo data centers to less than 100ms, which reduces voice call quality issues.

Here are examples of average ping times between customer locations and our nearest data centers:

Continent Data Center Location Destination Average Ping Time
North America USA West — Northern California Los Angeles 30ms
San Francisco 3ms
Seattle 20ms
USA East — Virginia New York 10ms
Chicago 45ms
Austin 32ms
South America Brazil — São Paulo Brazil 25ms
Argentina 60ms
Venezuela 95ms
Europe Germany — Frankfurt Germany 25ms
United Kingdom 20ms
France 20ms
Asia Singapore Singapore 10ms
India 85ms
Philippines 45ms
Australia Australia — Sydney Australia 20ms
New Zealand 20ms

Optimized global routing

We route calls through the nearest network of strategically located data centers worldwide, which lowers inter-region latency and improves call audio quality. This optimized routing means fewer dropped packets, less jitter, and less crosstalk, which is caused by long delays in the time a spoken word needs to travel to the receiver’s ear.

Voice Infra Improvement Example

Optimized intra-region connectivity

After detailed analysis of our voice traffic, we found that more than 25% of calls on our infrastructure traverse multiple regions, so we improved routing between our data center locations to optimize for inter- and intra-region connectivity. We’ve seen the delta in latency reduced significantly, which directly impacts jitter (broken audio) on voice calls. We now have data centers in:

  • South America (São Paulo, Brazil) — New
  • US-West (Northern California) — New
  • US-East (Virginia) — Updated
  • Europe (Frankfurt, Germany) — Updated
  • Asia (Singapore) — Updated
  • Australia (Sydney)

Faster connectivity to carrier peering hubs

To guarantee high quality of service, Plivo peers with Tier 1 carriers around the world with latency less than 20ms at major hubs, which reduces the amount of time needed to connect directly to carriers. To lower the latency between our data centers and carrier peering hubs, we’ve developed algorithms to evaluate and connect to the nearest peering hubs based on each call.

Continent Carrier Peering Hub Location Latency
North America Big APE, 60 Hudson, New York 20ms
South America PTT-SP — PTT São Paulo, Brazil 20ms
Europe Telehouse Frankfurt 20ms
Australia EQIX-SYD — Equinix Exchange Sydney 10ms
Asia EQIX-SIN — Equinix Exchange Singapore 10ms

Direct carrier connectivity and redundancy

Our carrier team has been working hard to make more local in-country carriers available to our networks. Increasing carrier availability and quality by providing multiple carriers in every country also improves connectivity between the destination carrier and the destination.

Of course, not all carriers are created equal, which is why we test every carrier on Plivo’s network for low post-dial delay (PDD), guaranteed features such as CLI and DTMF, and high mean opinion score (MOS). We also ensure that our networks connect to a minimum of two carriers in each country. This redundancy safeguards against single points of failure. In the event of a carrier failure, our infrastructure will automatically load balance and route traffic to more reliable carriers within the same region. We currently work with more than 100 in-county carriers globally to ensure that our network is always optimized, and we’re constantly adding more carriers to our network.

What do these improvements mean for you and your customers?

At Plivo, we understand that quality is at the core of any great product. High quality of service not only gives you access to clear voice quality, it also helps your business deliver the same level of quality to your customers.

Oct 28, 2016
5 mins

Introducing Toll-Free SMS for the US

Plivo's SMS API and Voice API enables businesses to communicate with their customers at global scale. Sign up for free now.

SMS API
Toll-Free

You can now enable two-way SMS text messaging on all Plivo toll-free phone numbers in the United States.

Plivo delivers text messages with the lowest latency, highest delivery rates, and most affordable prices in the market. Our toll-free phone numbers use the same powerful SMS API as our SMS long codes and SMS short codes. It’s easy to create SMS campaigns on your existing voice-enabled toll-free phone numbers without migrating subscribers to a new phone number.

Toll-free SMS is an excellent alternative for A2P (application-to-person) traffic. Any business can now send A2P text messages on any toll-free phone number in the US. You can instantly provision a Plivo toll-free number, and enabling a phone numbers for SMS is easy. Instead of waiting months for a SMS short code to be enabled, you can start sending toll-free messages within 48 hours.

Here’s how short codes and toll-free, our two A2P SMS phone number offerings in the United States, compare:

Features Short Code
(555555)
Toll-Free SMS
(1-800-555-5555)
Accepted Traffic Type Application-to-Person (A2P) Application-to-Person (A2P)
Price per Month $1,000 – $1,500 $1
Additional Network Fees Extra Free
Application Process 12 Weeks 2 Days
Voice Enabled No Yes
Handset Delivery Reports No Yes
Two-way SMS Yes Yes
Long SMS Concatenation Yes Yes
Unicode Characters Yes Yes
Message Queuing Yes Yes
Real-Time SMS Alerts and Logs Yes Yes

It’s easy to get started.
Sign up for free.

Create your account and receive trial credits or get in touch with us.

Grid
Grid