If my phone can show me who is calling by name when a random number calls, why can’t random text messages give me a name too? They just show the number


If my phone can show me who is calling by name when a random number calls, why can’t random text messages give me a name too? They just show the number

In: 19

Your phone shows you that because that information is provided by the party making the phone call (or, rather, the telco where the call is originating). There is no such system in place for SMS which was designed to use very, very little data.

It can though [https://i.imgur.com/9gregmY.png](https://i.imgur.com/9gregmY.png) I don’t have any of these saved, and none of those show a number at all.

Companies’ SMS can, but it’s only eleven characters. Also you can only reply to a numeric sender ID , if it’s an alphanumeric one like your bank or a courier you can’t reply to it.

In short, the messaging required to set up a call is different than the messaging used in SMS messages. Carriers can include caller ID details in calls, but not SMS. For a longer explanation, continue reading below.

Most carriers use what is called Session Initiation Protocol (SIP) to set up a call between two devices. This is a messaging format which describes information needed to establish a call. Here is an example of the messaging:

REGISTER sips:ss2.provider.tld SIP/2.0
Via: SIP/2.0/TLS provider.tld:5061;branch=my_branch
Max-Forwards: 70
From: Bob <sips:bob.provider.tld>;tag=my_tag
To: Bob <sips:bob.provider.tld>
Call-ID: my_caller_id.provider.tld
Contact: <sips:[email protected]>
Content-Length: 0

Carriers can replace values in the fields to use the customer’s name to identify them, which can then be used to display a value on your device if you don’t have them as a contact.

Short Message Service (SMS) is a different protocol and doesn’t have the same values. This service uses a different protocol called the Short Message Peer-to-Peer (SMPP) protocol. The details are a bit technical, but you can see how the raw messaging is formatted [here](https://smpp.org/#smppexample).

Now, your phone has the capability to identify the person sending a message. Typically, this is done by doing a lookup of your contacts to see if the number matches. Apps can also use third-party databases to identify some numbers too.

The protocol used does not support it. Back when texting first came out they used existing infrastructure and modified the messages sent to send and receive texts messages. I suspect when texting was created they did not think it would become as large as it became, it could also be size limitations.

I still remember when I was in college and the instructor explained the text messages I was paying extra for each one sent and received cost the phone company nothing to transmit as it was all using existing infrastructure.

Other fun fact. Caller ID that was used on landlines only sent the phone number, the carriers all subscribed to a database that mapped phone numbers to names. I ran into issues in the early 2000s where a remote carrier would have a typo in the caller ID info. This does being up an interesting point that you would think it would be easy enough to use the old caller ID database for SMS messages.