# What is RCS? Rich Communication Services explained for businesses

> RCS (Rich Communication Services) upgrades SMS in the default messaging app. What the spec covers, RCS vs SMS and chat apps, and how to check who can get it.

Canonical: https://mobilevalidate.com/blog/what-is-rcs-messaging · Last updated: 2026-10-01

![A phone shows a rich card with an image and two buttons and a read reply; beside it a plain text bubble with a dotted fallback arrow, a spec document labelled UP 3.0 with a lock, and a capability donut.](https://mobilevalidate.com/images/blog/what-is-rcs-messaging.svg)

*RCS turns texts into rich chats where the phone and carrier support it, and falls back to SMS elsewhere.*


By MobileValidate team (https://mobilevalidate.com/about) · Published: 2026-10-01 · Category: Deliverability · Tags: RCS, SMS, Channel selection, Deliverability, Messaging

RCS (Rich Communication Services) is the messaging standard that replaces SMS inside the phone's default messaging app, adding typing indicators, read receipts, high-resolution media, group chat and verified business messages. It is defined by the GSMA's Universal Profile and works only where the handset, the messaging app and the carrier all support it. Businesses use it for richer, branded messages and fall back to SMS for everyone else, so checking RCS capability before a campaign tells you how big that "everyone else" is.

## What is RCS (Rich Communication Services)?

**RCS is the carrier messaging service that upgrades SMS and MMS into a modern chat experience, without a separate app.** The recipient doesn't install anything or create an account. If their phone, app and network support RCS, messages simply arrive as rich chats in the same inbox as their texts.

The GSMA describes it through its **Universal Profile**, "a single, industry-agreed set of features and technical enablers developed to simplify the product development and global operator deployment of RCS" ([GSMA](http://web.archive.org/web/20260916095937/https://www.gsma.com/solutions-and-impact/technologies/networks/rcs/universal-profile/)). Our [RCS glossary entry](/glossary/rcs) has the short definition.

For businesses, RCS matters for two reasons. It reaches people in the app they already use for texts, like SMS. And it carries what SMS can't: a verified sender name and logo, images, buttons and suggested replies.

## What does the RCS spec (Universal Profile) cover?

When people search for "the RCS spec", they usually mean the GSMA Universal Profile. According to the GSMA, it contains core features "such as capability discovery (interoperable between regions), chat, group chat, file transfer, audio messaging, video share, multi-device, enriched calling, location share and live sketching", and introduces the enablers for Messaging as a Platform, including "RCS business messaging, Rich Cards, privacy control and spam protection" ([GSMA](http://web.archive.org/web/20260916095937/https://www.gsma.com/solutions-and-impact/technologies/networks/rcs/universal-profile/)).

| Universal Profile feature | What users see | Why a business cares |
|---|---|---|
| Capability discovery | Nothing directly; the app knows the other side supports RCS | Decides whether a message goes as RCS or falls back to SMS |
| Chat and group chat | Typing indicators, read receipts, long messages | Conversations instead of one-way alerts |
| File transfer | Full-quality photos, video, documents | Tickets, boarding passes, receipts |
| Business messaging | Verified brand name, logo, rich cards, buttons | Trust and higher engagement on messages people asked for |
| Privacy control and spam protection | Report and block tools | Senders are accountable for complaints |
| End-to-end encryption (Universal Profile 3.0) | Encrypted person-to-person chats where supported | Not a business-messaging feature; affects consumer chats |

On security, the GSMA announced on 14 March 2025 that Universal Profile 3.0 adds end-to-end encryption based on Messaging Layer Security (MLS), and said RCS "will be the first large-scale messaging service to support interoperable E2EE between client implementations from different providers" ([GSMA, 2025](https://www.gsma.com/newsroom/article/rcs-encryption-a-leap-towards-secure-and-interoperable-messaging/)). Roll-out depends on each app and carrier, so don't assume any given chat is encrypted.

The full specification documents are downloadable from the GSMA after registration. The GSMA also notes that operators "are free to decide whether or not to implement RCS within their 4G networks", while "the 5G standards mandate the implementation of RCS in 5G networks and devices" ([GSMA](http://web.archive.org/web/20260916095937/https://www.gsma.com/solutions-and-impact/technologies/networks/rcs/universal-profile/)).

## How is RCS different from SMS and from chat apps?

RCS sits between SMS and internet messaging apps. It keeps the reach model of SMS (a phone number, the default app) and borrows the features of chat apps.

| | SMS | RCS | Chat apps (internet messengers) |
|---|---|---|---|
| App | Built-in messaging app | Built-in messaging app | Separate app the user installs |
| Address | Phone number | Phone number | Phone number or username, plus an account |
| Needs | Any mobile phone with signal | Supporting handset, app and carrier; data connection | The app and an account; data connection |
| Content | Text, 160 GSM characters per segment | Rich text, media, cards, buttons | Rich text, media, templates |
| Sender identity for businesses | Number or alphanumeric name | Verified brand name and logo | Verified business profile |
| Delivery and read receipts | Delivery receipts from the network, not reads | Delivered and read | Delivered and read |
| Fallback | None needed | SMS or MMS | Usually SMS, sent separately |
| Rules | Operator and national rules for A2P SMS | Operator and platform approval of the business sender | The platform's own policies |

In the US, CTIA's messaging guidelines explicitly cover SMS, MMS and RCS together as wireless messaging services ([CTIA, 2023](https://api.ctia.org/wp-content/uploads/2023/05/230523-CTIA-Messaging-Principles-and-Best-Practices-FINAL.pdf)), so consent and opt-out expectations for business SMS apply to RCS as well.

For how SMS business messaging itself works, see [A2P SMS explained](/blog/a2p-sms-explained).

## Who can receive RCS messages?

Availability is decided per number, by four things at once:

1. **The handset.** On Android, RCS runs in the default messaging app on supporting phones. Apple added RCS to the Messages app with iOS 18, released on 16 September 2024: "When messaging contacts who do not have an Apple device, the Messages app now supports RCS for richer media and more reliable group messaging compared to SMS and MMS" ([Apple, 2024](https://www.apple.com/newsroom/2024/09/ios-18-is-available-today-making-iphone-more-personal-and-capable-than-ever/)).
2. **The carrier.** Apple's support page says that to use RCS "you need iOS 18 and a text-messaging plan from a carrier that supports RCS" ([Apple Support](https://support.apple.com/en-us/104972)).
3. **The user's settings.** People can switch RCS chat features off.
4. **Recent activity.** Capability is discovered and cached. A phone that has been off or offline for a while may not show as capable.

That is why national adoption figures are only a starting point. What matters is how many of **your** opted-in recipients can receive RCS right now, and that varies with your customers' handsets and carriers.

### Why can a capable number still be unreachable for a business?

Business messaging adds a fifth condition: the brand's sender, called an **agent**, must be verified and launched on the recipient's carrier. Google's RCS for Business documentation lists two reasons a capability request fails for an agent: "The user isn't reachable by RBM–for example, if their device doesn't support RCS", or "The user has RCS, but your agent isn't launched on their mobile network" ([Google for Developers](https://developers.google.com/business-communications/rcs-business-messaging/guides/build/capabilities)). The same page says a successful response is returned "only if the MSISDN (phone number) has connected to the RCS service within the last 31 days".

## How do you check RCS capability before sending?

There are two layers, and they answer different questions.

| Question | Where to ask | When |
|---|---|---|
| "How many of my recipients can get RCS at all?" | A bulk capability check on your opted-in list | Planning a rollout, sizing budget, choosing message formats |
| "Can my agent reach this number at send time?" | Your RCS messaging provider's capability call, plus its automatic SMS fallback | Each send |

Google notes that its bulk checks "read from the capabilities cache, which is updated by clients organically using RCS" and that "results may not be current" ([Google for Developers](https://developers.google.com/business-communications/rcs-business-messaging/guides/build/capabilities)). Any capability answer is a snapshot.

MobileValidate's [RCS capability check](/services/rcs-capability-check) answers the first question. It runs in [bulk jobs](/docs/bulk-jobs) and returns `registered: true` (capable), `false` (not capable) or `null` (unknown) per number, plus `device_os` (`ios`, `android` or `unknown`) when the platform is reported. Nothing is sent to the number. It costs $0.0003 per conclusive answer at the time of writing ([pricing](/pricing)); unknown answers are free.

A minimal Node.js script creates a job and counts the answers. In test mode, `+447700900001` answers capable, `…002` not capable and `…003` unknown.

```js
const API = "https://api.mobilevalidate.com/v1";
const headers = { Authorization: `Bearer ${process.env.MOBILEVALIDATE_API_KEY}`, "Content-Type": "application/json" };

const job = await fetch(`${API}/jobs`, {
  method: "POST", headers: { ...headers, "Idempotency-Key": "rcs-plan-2026-10" },
  body: JSON.stringify({ numbers: ["+447700900001", "+447700900002", "+447700900003"], checks: ["rcs"] }),
}).then((r) => r.json());

await fetch(`${API}/jobs/${job.id}?wait=30`, { headers });            // long-poll until done
const page = await fetch(`${API}/jobs/${job.id}/results?limit=1000`, { headers }).then((r) => r.json());

const tally = { capable: 0, not_capable: 0, unknown: 0 };
for (const row of page.data) {
  const r = row.checks["rcs.registered"]?.registered;
  tally[r === true ? "capable" : r === false ? "not_capable" : "unknown"]++;
}
console.log(tally); // plan RCS for "capable", SMS for the rest; re-check "unknown" later
```

For more than 1,000 rows, follow `next_cursor`. For a larger walk-through with a decision table, read [RCS capability check: what it tells senders](/blog/rcs-capability-check-explained).

### How fresh should capability data be?

Short-lived. People change phones, switch settings and move carriers. Refresh before each major campaign, keep `max_age` short, and always keep SMS fallback switched on with your messaging provider.

## When should a business use RCS?

RCS earns its place for messages people asked for where richness helps:

- **Order and delivery updates** with a tracking button and a product image.
- **Appointment reminders** with confirm and reschedule replies.
- **Boarding passes, tickets and receipts** delivered as cards.
- **Customer support** conversations with suggested replies.
- **One-time passcodes** from a verified sender, with SMS fallback. Run the [OTP fraud prevention checks](/blog/otp-fraud-prevention-checks-before-sending-a-code) whatever the channel.

It's a weaker fit where reach must be universal and the message is plain text: SMS reaches every mobile phone. Many teams run both and pick per recipient. The [channel selection](/use-cases/channel-selection) use case and our guide to [choosing a messaging channel by country](/blog/choosing-a-messaging-channel-by-country) show how.

RCS business messaging requires a verified sender and consent. MobileValidate's checks are for messages your recipients agreed to receive; our [acceptable use policy](/legal/acceptable-use) forbids unsolicited bulk messaging and range scanning.

## Key takeaways

- RCS (Rich Communication Services) upgrades SMS in the default messaging app with chat features, media and verified business messages.
- The "RCS spec" is the GSMA Universal Profile. Version 3.0 (March 2025) adds MLS-based end-to-end encryption.
- RCS works per number: it needs a supporting handset, app, carrier and settings. iPhone supports it since iOS 18, where the carrier does.
- A business sender (agent) must also be launched on the recipient's carrier; capability alone isn't enough.
- Check capability in bulk to plan a rollout, let your provider check at send time, and always keep SMS fallback.
- MobileValidate's RCS check runs in bulk, returns capable, not capable or unknown with `device_os` when reported, and never charges for unknown answers.

## Sources

1. [Universal Profile: the industry standard for RCS (page captured 16 September 2026)](http://web.archive.org/web/20260916095937/https://www.gsma.com/solutions-and-impact/technologies/networks/rcs/universal-profile/) — GSMA, 2026
2. [RCS Encryption: A Leap Towards Secure and Interoperable Messaging (14 March 2025)](https://www.gsma.com/newsroom/article/rcs-encryption-a-leap-towards-secure-and-interoperable-messaging/) — GSMA, 2025
3. [iOS 18 is available today, making iPhone more personal and capable than ever (16 September 2024)](https://www.apple.com/newsroom/2024/09/ios-18-is-available-today-making-iphone-more-personal-and-capable-than-ever/) — Apple, 2024
4. [What is the difference between iMessage, RCS, and SMS/MMS?](https://support.apple.com/en-us/104972) — Apple Support, 2026
5. [Capability checks (RCS for Business)](https://developers.google.com/business-communications/rcs-business-messaging/guides/build/capabilities) — Google for Developers, 2026
6. [Messaging Principles and Best Practices (May 2023), section 2.2](https://api.ctia.org/wp-content/uploads/2023/05/230523-CTIA-Messaging-Principles-and-Best-Practices-FINAL.pdf) — CTIA, 2023

## Frequently asked questions

### What does RCS stand for?

RCS stands for Rich Communication Services. It is the GSMA standard that upgrades the phone's built-in messaging app with chat features such as typing indicators, read receipts, high-resolution media and group chat, and adds verified, branded business messaging.

### What is the RCS spec?

The industry-agreed specification is the GSMA Universal Profile, a single set of features and technical enablers for operators, device makers and operating systems. Version 3.0, announced in March 2025, added end-to-end encryption based on Messaging Layer Security (MLS).

### Is RCS the same as SMS?

No. Both arrive in the same default messaging app, but SMS is a short plain-text message carried by the mobile network, while RCS is an IP-based chat service with media, read receipts and business features. When RCS isn't available, messages fall back to SMS or MMS.

### Does RCS work on iPhone?

Yes, since iOS 18 in September 2024, for messages to contacts who don't use an Apple device, when the user's carrier supports RCS on iPhone.

### How do I know if a number can receive RCS?

Run a capability check before sending. Capability depends on the handset, the messaging app, the user's settings and the carrier, so it differs from number to number and changes over time. MobileValidate's RCS check runs in bulk jobs and returns capable, not capable or unknown, with unknown answers free.

### Is RCS business messaging the same as RCS?

Business messaging is one part of RCS. A brand sends through a verified sender (an agent) that must be launched on each carrier. A number can be RCS-capable and still be unreachable for a particular business agent if that agent isn't launched on the recipient's network.
