Code on a screen, representing data serialization.

Turning data into a format that can be stored or sent, then rebuilt.

What serialization is

Serialization is the process of converting data - often a structured object in a program - into a format that can be easily stored or transmitted, and later reconstructed. Inside a running program, data lives in a form suited to the computer's memory, which cannot be directly saved to a file or sent over a network. Serialization translates that in-memory data into a flat sequence of bytes or text that can travel or be stored, ready to be turned back into usable data later.

Why serialization is needed

Programs frequently need to save data for later or share it with other programs or systems. But the way data is arranged in a program's memory is not something you can simply write to disk or send across the internet as-is. Serialization bridges this gap, producing a portable representation of the data. Without serialization, preserving a program's data between runs, or exchanging data between different machines and applications, would be far more difficult.

Serialization and deserialization

Serialization has a counterpart: deserialization, the reverse process of taking the stored or transmitted representation and rebuilding the original data structure from it. Together, they form a round trip: data is serialized into a portable form, saved or sent, and then deserialized back into a usable form at the destination. For this to work, both ends must agree on the format so the data can be faithfully reconstructed from its serialized version.

Common uses

Serialization is everywhere in computing. It is used to save a program's state to a file so it can be reloaded later. It is central to communication between systems, where data is serialized, sent across a network, and deserialized by the receiver - the backbone of how web services exchange information. It is also used to store structured data in databases and caches. Any time data needs to leave a program's memory and come back, serialization is involved.

Formats for serialization

Data can be serialized into many formats, ranging from human-readable text formats to compact binary ones. Text-based formats are easy to read and widely interoperable, which is why they are popular for exchanging data between different systems. Binary formats are more compact and faster to process, which suits performance-sensitive uses. The choice of format depends on the needs of the task, balancing readability, size, and speed.

Why it matters

Serialization is a fundamental concept that underpins saving data, communicating between systems, and much of how modern software shares information. Understanding what serialization is - converting data into a storable, transmittable form and back again - clarifies how programs persist their state and how services exchange data across the internet. For anyone interested in how software handles and moves data, serialization is an essential idea.

See also: What is an API? Explained simply, What is a data structure? Explained simply.

Sources

Published date reflects the original event date (2023-09-12). This article is original Skillo editorial written from the sources above; facts were verified in September 2026.

Skillo Staff

Skillo Staff

All stories by: Skillo Staff

Leave a Reply