Netflix, Google and Uber do not publicly support the claim that they avoid REST between all their own services. Their published material instead shows a mix of protocols and examples where RPC or gRPC fits a particular need. The practical reason to choose gRPC internally is not that REST is inherently slow: it is that typed contracts, generated clients, efficient serialization or streaming may better suit a service boundary. RESTful HTTP remains useful when broad compatibility and easy access matter.
First, the premise needs a correction
There is no public, current protocol census establishing that these companies have stopped using REST internally. The evidence supports a narrower conclusion: large organizations may use different communication styles for different boundaries, workloads and consumers.
As an Amazon Associate I earn from qualifying purchases.
It also helps to separate two terms. HTTP is a transport; REST is an architectural style commonly used with HTTP. gRPC is an RPC framework that commonly uses HTTP/2, and a gRPC service can also be exposed through an HTTP/JSON gateway. An API using HTTP is not automatically RESTful, and an internal RPC choice does not mean HTTP disappears.
Why teams may choose gRPC for service-to-service calls
Contracts and generated clients
With gRPC, teams define service methods and message types in a schema, then generate client and server code for supported languages. This can reduce hand-written integration work and make a shared interface more explicit when several services and language stacks need to communicate. Google Cloud described this capability at the gRPC 1.0 launch: Introducing gRPC.
#1 Best Overall
Serialization and latency as design concerns
Google Cloud describes gRPC as offering efficient serialization and low latency, qualities that can matter for frequent internal calls. That is a reason to consider it, not proof that it will make a particular production system faster. The result depends on the workload, payloads, network, implementation and the rest of the service path; measure a real bottleneck rather than assuming a protocol change will fix it.
Streaming
RPC frameworks can support streaming patterns as well as ordinary request-and-response calls. Uber’s RAMEN push platform is a concrete example: in an August 16, 2022 engineering article, Uber described moving from Server-Sent Events over HTTP/1.1 to bidirectional gRPC streaming over QUIC/HTTP/3. The change was largely at the platform facade, while the internal business logic remained the same. It illustrates a workload-specific migration, not a company-wide protocol rule: Uber’s modern communication stack.
Consistent platform behavior
A shared RPC infrastructure can give an organization common ways to manage reliability, security and observability. Google’s 2015 account of gRPC’s design describes its internal RPC system, Stubby, as infrastructure used for more than a decade to connect microservices within and across data centers. The article presents gRPC as a public, standards-oriented project inspired by that experience; it is historical context, not a current inventory of every Google service: gRPC: A true internet-scale RPC framework.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Why keep RESTful HTTP in the mix?
HTTP APIs are widely understood and supported by clients, tools and API-management systems. Consumers outside a tightly coordinated group of service teams may already expect HTTP and JSON, and may not have gRPC libraries or the ability to adopt generated schemas. Google Cloud describes HTTP APIs as common across system boundaries and notes the integration friction of changing existing consumers. A gateway can let a backend use gRPC while offering an HTTP/REST interface to clients: Understanding gRPC, OpenAPI and REST.
Rank #3
That can be a useful division of labor: use an interface that fits internal service needs, then expose a more familiar interface at a boundary where compatibility matters. It also means the choice need not be either-or across an entire organization.
What the public examples show at each company
Netflix: a mixed protocol ecosystem
Netflix’s BAJA platform describes work spanning REST technologies and gRPC, alongside resilience features such as load balancing, retries, hedging, fallbacks, observability and failure testing: BAJA: Building a Resilient Platform for Service Communication in Netflix. A 2026 Netflix service-topology article says application metrics can reveal calls using gRPC, GraphQL, REST and other protocols; the topology API described in that article itself uses gRPC: Introducing Netflix Service Topology. These sources show variety, not the share of Netflix traffic carried by each protocol.
Google: a long RPC history, not proof of a universal rule
Google’s 2015 gRPC design article describes Stubby, its internal general-purpose RPC infrastructure, and the move toward an open project. A 2016 Google Cloud launch article also quoted Netflix engineering manager Timothy Bozarth on early adoption: “With our initial use of gRPC, we’ve been able to extend it easily to live within our opinionated ecosystem.” That statement describes Netflix’s initial experience at the time, not every Netflix service today: Google Cloud’s gRPC launch article.
Uber: one migration for a real-time push platform
The RAMEN example demonstrates why a team might change communication patterns when it needs real-time delivery and bidirectional streaming. It does not show that Uber uses gRPC for every internal service. A separate 2020 Uber Engineering article described about 2,200 critical microservices at that time while focusing on the operational complexity of microservices architecture, not prescribing a protocol: DOMA: Uber’s Domain-Oriented Microservice Architecture.
Best Value
- Used Book in Good Condition
How to choose for your own service boundary
| Decision factor | gRPC or another RPC approach may fit when… | RESTful HTTP may fit when… |
|---|---|---|
| Contracts and client code | Schema-first contracts and generated clients across languages are valuable. | Human-readable conventions and broad existing HTTP tooling are priorities. |
| Performance | Serialization efficiency or latency is a measured bottleneck or an important design constraint. | Compatibility and simplicity matter more than an unmeasured performance concern. |
| Communication pattern | The workload benefits from streaming or other RPC capabilities. | Conventional request-and-response endpoints meet the need. |
| Consumers | Service teams can coordinate on schemas, libraries and protocol support. | Consumers are external, diverse or already built around HTTP APIs. |
| Operations | Your team can support the protocol and its tooling, observability and failure behavior. | Familiar API management, security policies and discovery reduce integration friction. |
Neither choice removes network failure modes. Whatever interface you select, plan for timeouts, retries, observability and compatibility at the boundary; Netflix’s BAJA description is one example of resilience concerns handled alongside service communication.
What the evidence does—and does not—establish
The public material gives useful architectural examples, but not comparable, current percentages of internal traffic by protocol at Netflix, Google or Uber. Uber’s roughly 2,200 critical microservices figure belongs to its 2020 DOMA article and should not be read as a current count. Likewise, the RAMEN migration describes one platform and does not constitute a benchmark proving gRPC is faster in every workload.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Scan for outdated or missing drivers - takes under a minute3Clear out junk files and repair common Windows errors




