Skip to content

Protocol Buffers has evolved over two decades, transitioning from a performance-critical internal tool at Google to the default wire format for distributed systems.

While the core philosophy has remained constant, the language has evolved to support more platforms and complex engineering needs.

INTERNAL2001

Google Internal Launch

Protobuf was born inside Google to solve the overhead of XML. It became widely used for internal communication.

View Details
PROTO22008

Public Open Source

First public release, bringing the internal language's "required" fields and extension mechanism into the open.

View Details
PROTO32016

Proto3 Released

Removed "required" fields, standardized the JSON mapping, and dropped explicit presence for singular scalar fields.

View Details
EDITIONS2024

Editions Arrive

Moves the language from syntax "versions" to individually settable "features", so it can add behavior without waiting on a new syntax release. Announced in 2023 and released for use in protoc 27.0.

View Details

These open-source projects publish their Protobuf definitions in the open, but they are a small sample. Protobuf underpins internal APIs at companies of every size, and most of those schemas never leave private repositories.

Google

Google's API design guidance is built around resource-oriented APIs with Protobuf service definitions and HTTP/JSON transcoding.

View Project

Kubernetes

Kubernetes documents Protobuf as an alternate API encoding for built-in resources, alongside JSON.

View Project

Envoy Proxy

Envoy's xDS APIs and configuration resources are published as versioned Protobuf API references.

View Project

Docker / Swarm

SwarmKit keeps its control-plane API definitions in Protobuf schemas in the project source.

View Project

Vitess

Vitess publishes Protobuf definitions for its query, tablet, topology, and automation APIs.

View Project

Etcd

Etcd exposes a gRPC API with a gRPC-gateway that maps HTTP/JSON onto the same API surface.

View Project

TiDB

The TiDB/TiKV ecosystem maintains shared Protobuf definitions for distributed storage APIs in kvproto.

View Project

OpenTelemetry

OpenTelemetry defines its cross-language telemetry data protocol in shared Protobuf schemas.

View Project

Temporal

Temporal publishes the API definitions for its workflow platform as Protobuf schemas.

View Project

Looking for tools, plugins, or libraries?

Browse the ecosystem directory of 90 actively maintained tools, plugins, and serialization libraries with GitHub star counts, categories, sorting, and search filtering.

Explore Ecosystem Directory

Protobuf schemas can define services as well as messages, and an RPC framework turns those definitions into working clients and servers. There are only two you need to know: gRPC and ConnectRPC.

gRPC

If Protocol Buffers define the exact shape of your data, gRPC is the high-performance framework that uses those definitions to automatically generate the networking code for transmitting those messages between services.

Visit Site
ConnectRPC

ConnectRPC is a lightweight framework that uses Protocol Buffers to automatically generate type-safe APIs capable of natively communicating over standard HTTP, gRPC, and gRPC-Web from a single implementation.

Visit Site