711
Comparison

tRPC vs REST vs GraphQL

Three API styles for TypeScript apps.

1 min readupdated 2026-07-04

/ quick answer

tRPC gives end-to-end types for TS-only stacks. REST is universal. GraphQL trades complexity for flexible clients. Three API styles for TypeScript apps.

Three API styles for TypeScript apps. tRPC gives end-to-end types for TS-only stacks. REST is universal. GraphQL trades complexity for flexible clients. Recommendation: tRPC for internal TS apps. REST for anything public. GraphQL only when client flexibility outweighs the schema tax.
Overview
tRPC gives end-to-end types for TS-only stacks. REST is universal. GraphQL trades complexity for flexible clients.
Differences
DimensionOption AOption B
Type safetyBest in TS (tRPC)None built-in (REST) / Schema-driven (GraphQL)
Client diversityTS only (tRPC)Any (REST / GraphQL)
ComplexityLow (tRPC)Low (REST) / High (GraphQL)
Use Cases
  • →Full TS monorepo → tRPC
  • →Public API, many clients → REST
  • →Flexible mobile + web clients → GraphQL
Recommendation
tRPC for internal TS apps. REST for anything public. GraphQL only when client flexibility outweighs the schema tax.

/ frequently asked

What is the difference in tRPC vs REST vs GraphQL?

tRPC gives end-to-end types for TS-only stacks. REST is universal. GraphQL trades complexity for flexible clients.

What are the main points of comparison?

Type safety: Best in TS (tRPC) vs None built-in (REST) / Schema-driven (GraphQL) · Client diversity: TS only (tRPC) vs Any (REST / GraphQL) · Complexity: Low (tRPC) vs Low (REST) / High (GraphQL)

Which one should I choose?

tRPC for internal TS apps. REST for anything public. GraphQL only when client flexibility outweighs the schema tax.

/ topics#dev#api

/ continue exploring

Related concepts

The vocabulary this page depends on.

all dictionary →

Related workflows

Turn this into a repeatable process.

all workflows →

Related tool stacks

The tools that run it in production.

all tool stacks →

Related prompts

Reusable prompts for this job.

all prompts →

Related use cases

How people apply it, and what came out.

all use cases →

Comparisons & alternatives

Pick between the options.

all comparisons →