How-To

How to Open and Read an SMS Backup & Restore XML File

SMS Backup & Restore is the app most people use to get text messages off an Android phone. It writes one XML file that holds every conversation on the phone. The file is often hundreds of megabytes, a text editor may refuse to open it, and many of the messages are not stored where you would first look.

How to open the file

1.Pick the right file

The app writes texts and the call log as separate files. The one with your messages has a name beginning with sms-. The one beginning with calls- is the call log and contains no message text.

2.Use a viewer, not a text editor

SyncTech, the company that makes the app, has a viewer at synctech.com.au under SMS Backup & Restore, View Backup Files. It says the processing is done in the browser and the file is never uploaded. A text editor will open a small backup, but a large one can freeze it.

3.Keep the original

Copy the file before you open it anywhere, and keep the original exactly as the app wrote it.

Why the file is so large

Every picture and video sent by text is stored inside the file itself, written out as a very long run of letters and numbers. A few years of texts with photos easily reaches several hundred megabytes. The words of the messages are a small fraction of that.

What an ordinary text looks like

<sms address="+15551234567" date="1710466867000" type="1"
     body="Are you picking up the kids?" read="1"
     readable_date="Mar 14, 2024 9:41:07 PM" contact_name="Dana" />
  • address is the other person's phone number.
  • date is the time as a count of milliseconds since January 1, 1970. It is the precise value. readable_date is the same moment written out for convenience.
  • type says which direction the message went: 1 is received, 2 is sent. 3 is a draft, 4 is in the outbox, 5 failed to send and 6 is queued, so none of those four was delivered.
  • body is the message.
  • contact_name is the name saved on the phone for that number, if there is one.

These meanings come from SyncTech's own field reference.

Picture texts, group texts and long texts are stored differently

On Android, anything with a picture, any group text, and many long texts are sent as MMS, and the file stores those in separate mms entries with a different layout. If you only read the sms lines, you can miss a large share of the conversation.

<mms date="1710466990000" msg_box="2" address="+15551234567" contact_name="Dana">
  <parts>
    <part ct="text/plain" text="Here is the pickup schedule" />
    <part ct="image/jpeg" data="/9j/4AAQSkZJRg..." />
  </parts>
  <addrs>
    <addr address="+15557654321" type="137" />
    <addr address="+15551234567" type="151" />
  </addrs>
</mms>
  • msg_box is the direction: 1 is received, 2 is sent.
  • The words are in the part whose ct is text/plain. A part with data is a picture or video.
  • In addrs, type 137 is the sender and 151 is a recipient. A group text lists several recipients.

What the backup does and does not show

The file covers the whole phone, so messages to and from everyone are mixed together in time order. To read one conversation you have to filter by address. It contains what was on the phone when the backup ran: texts deleted before then are not in it.

Verity reads these backups without loading the pictures, lists the conversations it finds so you can choose one, and includes the text of picture messages. Group threads, drafts and messages that never sent are left out and counted.

This is general information, not legal advice. Verity is not a law firm, and requirements for authenticating a digital record vary by court — talk to an attorney about what your case specifically needs.

Already have the backup file?

Upload the sms- file as it is, pick the conversation, and get a free health score in minutes. The file is read in your browser and never leaves your device.

Analyze your export →