DX Heroes logo
#engineering
#development

What is gRPC?

Length: 

4 min

Published: 

June 9, 2026

What is gRPC?

What gRPC means

gRPC is an open-source framework, originally from Google, for communication between services. It lets one program call a function in another program running on a different machine as if that function were local. The "RPC" part stands for Remote Procedure Call, the idea of calling remote code like ordinary code.

Two choices make gRPC fast. It sends data as Protocol Buffers (protobuf), a compact binary format instead of text like JSON, and it runs over HTTP/2, which can stream and multiplex many calls over one connection. You describe your service and its messages once in a .proto file, and gRPC generates the client and server code for many languages from it.

In plain words

A normal REST API is like sending a detailed letter and waiting for a written reply: clear, readable, but slower. gRPC is more like a direct phone line between two services, with both speaking a tight shorthand only they need to understand. You give up easy human readability and get speed and a strict, shared contract in return.

When to use it

  • Communication between microservices. Fast, low-overhead calls inside your own system are gRPC's home turf.
  • High throughput or low latency. The binary format and HTTP/2 streaming pay off when you make many calls or move a lot of data.
  • Strong, shared contracts. The .proto file is the single source of truth, so client and server cannot drift apart unnoticed.
  • Streaming data. gRPC handles long-lived streams in both directions, useful for live updates and chat-like flows.

Common pitfalls

  • Not great for public browser APIs. Browsers cannot speak raw gRPC directly. For a public API consumed by web frontends, REST or GraphQL is usually the simpler choice (or you add a gRPC-Web proxy).
  • Harder to debug by hand. Binary payloads are not human-readable, so you cannot just curl an endpoint and eyeball the response. You need proper tooling.
  • A learning curve. Protocol Buffers, code generation, and HTTP/2 add concepts your team has to learn before they are productive.
  • Versioning needs discipline. Changing a .proto contract carelessly breaks every consumer. Plan field changes the way you would plan any breaking API change.

Related articles:

  • What is an API? - The broader concept of how software talks to other software.
  • Improve API adoption with the OpenAPI Specification - The REST counterpart to gRPC's .proto contract.
  • What is an SDK? - The generated client libraries gRPC produces are a form of SDK.

Want to stay one step ahead?

Don't miss our best insights. No spam, just practical analyses, invitations to exclusive events, and podcast summaries delivered straight to your inbox.